aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVasilis Tsiligiannis <b_tsiligiannis@silverton.gr>2009-07-26 12:15:00 +0000
committerVasilis Tsiligiannis <b_tsiligiannis@silverton.gr>2009-07-26 12:15:00 +0000
commit257f8e3f6d282349743d397e7905bfb51d1c9709 (patch)
tree0869c49596646aea3b860d56b1ab42a4cbf59e7a
parente157446e78bfe4091610ad3c52ab4a45607eff32 (diff)
downloadupstream-257f8e3f6d282349743d397e7905bfb51d1c9709.tar.gz
upstream-257f8e3f6d282349743d397e7905bfb51d1c9709.tar.bz2
upstream-257f8e3f6d282349743d397e7905bfb51d1c9709.zip
[packages] quagga-unstable: Delete AS_CONFED_SEQUENCE when prepending an AS_SEQUENCE type segment
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17010 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/openwrt-packages/net/quagga-unstable/patches/130-confed_aspath_delete_on_prepend.patch13
1 files changed, 13 insertions, 0 deletions
diff --git a/package/openwrt-packages/net/quagga-unstable/patches/130-confed_aspath_delete_on_prepend.patch b/package/openwrt-packages/net/quagga-unstable/patches/130-confed_aspath_delete_on_prepend.patch
new file mode 100644
index 0000000000..3970b13d91
--- /dev/null
+++ b/package/openwrt-packages/net/quagga-unstable/patches/130-confed_aspath_delete_on_prepend.patch
@@ -0,0 +1,13 @@
+--- a/bgpd/bgp_aspath.c
++++ b/bgpd/bgp_aspath.c
+@@ -1208,6 +1208,10 @@ aspath_prepend (struct aspath *as1, stru
+ while (seg1 && seg1->next)
+ seg1 = seg1->next;
+
++ /* Delete any AS_CONFED_SEQUENCE segment from as2. */
++ if (seg1->type == AS_SEQUENCE && seg2->type == AS_CONFED_SEQUENCE)
++ as2 = aspath_delete_confed_seq (as2);
++
+ /* Compare last segment type of as1 and first segment type of as2. */
+ if (seg1->type != seg2->type)
+ return aspath_merge (as1, as2);