+ fixed no_set_aspath_prepend() to correctly match existing "set" statement
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index c1f12d6..3fa3837 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -1,3 +1,9 @@
+2007-12-18 Denis Ovsienko
+
+ * bgp_routemap.c: (no_set_aspath_prepend) This command cancelled
+ existing "set" command regardless if "no set" matched it or not.
+ Fixed.
+
2007-11-13 Paul Jakma <paul.jakma@sun.com>
* bgp_main.c: Small fix, format string parameters should never
diff --git a/bgpd/bgp_routemap.c b/bgpd/bgp_routemap.c
index d51375b..b246e2a 100644
--- a/bgpd/bgp_routemap.c
+++ b/bgpd/bgp_routemap.c
@@ -3018,7 +3018,16 @@
"Prepend string for a BGP AS-path attribute\n"
"Prepend to the as-path\n")
{
- return bgp_route_set_delete (vty, vty->index, "as-path prepend", NULL);
+ int ret;
+ char *str;
+
+ if (argc == 0)
+ return bgp_route_set_delete (vty, vty->index, "as-path prepend", NULL);
+
+ str = argv_concat (argv, argc, 0);
+ ret = bgp_route_set_delete (vty, vty->index, "as-path prepend", str);
+ XFREE (MTYPE_TMP, str);
+ return ret;
}
ALIAS (no_set_aspath_prepend,