summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Jakma <paul.jakma@sun.com>2007-08-23 23:22:02 +0000
committerPaul Jakma <paul.jakma@sun.com>2007-08-23 23:22:02 +0000
commit6d134fb4defecb16591adbf4acb020acd165a75a (patch)
treee88549ea00e5a8b22ffacb36b7b1d2c9d941b664
parentb7fe4141123c6fc26fffec68d0db62ecf474c074 (diff)
[bgpd] Pass NOSUB to regexec
2007-08-23 Paul Jakma <paul.jakma@sun.com> * bgp_regex.c: (bgp_regcomp) Pass NOSUB flag to regcomp to prevent parsing of substitutions, which can have profound performance effects on bgpd and are of no use to the CLI anyway. How much it helps depends on the regex implementation.
-rw-r--r--bgpd/ChangeLog8
-rw-r--r--bgpd/bgp_regex.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 26614ced..548fd4d6 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -1,3 +1,11 @@
+2007-08-23 Paul Jakma <paul.jakma@sun.com>
+
+ * bgp_regex.c: (bgp_regcomp) Pass NOSUB flag to regcomp to
+ prevent parsing of substitutions, which can have profound
+ performance effects on bgpd and are of no use to the CLI
+ anyway. How much it helps depends on the regex
+ implementation.
+
2007-07-31 Paul Jakma <paul.jakma@sun.com>
* (general) Support for draft-ietf-idr-as-pathlimit-03.
diff --git a/bgpd/bgp_regex.c b/bgpd/bgp_regex.c
index be84d407..9b65f7cb 100644
--- a/bgpd/bgp_regex.c
+++ b/bgpd/bgp_regex.c
@@ -66,7 +66,7 @@ bgp_regcomp (const char *regstr)
regex = XMALLOC (MTYPE_BGP_REGEXP, sizeof (regex_t));
- ret = regcomp (regex, magic_str, REG_EXTENDED);
+ ret = regcomp (regex, magic_str, REG_EXTENDED|REG_NOSUB);
XFREE (MTYPE_TMP, magic_str);