diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2019-05-11 06:24:06 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2019-05-11 06:24:06 +0000 |
commit | 43a219678923cafa11940c83fc8a8389db38bb3e (patch) | |
tree | 99f0eca346a03c45468a921b03ac271477c369ba | |
parent | 2ba557fc0740ffd6d6da2ce96b01bb28016eb365 (diff) | |
download | skabus-43a219678923cafa11940c83fc8a8389db38bb3e.tar.xz |
Accept empty regexes
-rw-r--r-- | src/rpc/skabus-rpcd.c | 7 | ||||
-rw-r--r-- | src/rpc/skabus_rpcd_interface.c | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/rpc/skabus-rpcd.c b/src/rpc/skabus-rpcd.c index 014f48e..cab9e49 100644 --- a/src/rpc/skabus-rpcd.c +++ b/src/rpc/skabus-rpcd.c @@ -10,6 +10,7 @@ #include <errno.h> #include <signal.h> +#include <skalibs/posixplz.h> #include <skalibs/posixishard.h> #include <skalibs/uint32.h> #include <skalibs/uint64.h> @@ -261,7 +262,7 @@ static int makere (regex_t *re, char const *s, char const *var) size_t varlen = strlen(var) ; if (str_start(s, var) && (s[varlen] == '=')) { - int r = regcomp(re, s + varlen + 1, REG_EXTENDED | REG_NOSUB) ; + int r = skalibs_regcomp(re, s + varlen + 1, REG_EXTENDED | REG_NOSUB) ; if (r) { if (verbosity) @@ -279,8 +280,8 @@ static int makere (regex_t *re, char const *s, char const *var) static void defaultre (regex_t *re, unsigned int pubflag) { - char const *s = pubflag ? ".*" : ".^" ; - int r = regcomp(re, s, REG_EXTENDED | REG_NOSUB) ; + char const *s = pubflag ? "" : ".^" ; + int r = skalibs_regcomp(re, s, REG_EXTENDED | REG_NOSUB) ; if (r) { char buf[256] ; diff --git a/src/rpc/skabus_rpcd_interface.c b/src/rpc/skabus_rpcd_interface.c index 458b2d8..bf5c7e0 100644 --- a/src/rpc/skabus_rpcd_interface.c +++ b/src/rpc/skabus_rpcd_interface.c @@ -4,6 +4,8 @@ #include <stdint.h> #include <errno.h> #include <regex.h> + +#include <skalibs/posixplz.h> #include <skalibs/strerr2.h> #include <skalibs/genalloc.h> #include <skalibs/gensetdyn.h> @@ -83,7 +85,7 @@ int interface_add (uint32_t *d, char const *name, size_t namelen, uint32_t clien if (!gensetdyn_new(&interfaces, &yy)) return 0 ; { interface_t *y = INTERFACE(yy) ; - int r = regcomp(&y->re, re, REG_EXTENDED | REG_NOSUB) ; + int r = skalibs_regcomp(&y->re, re, REG_EXTENDED | REG_NOSUB) ; if (r) { e = r == REG_ESPACE ? ENOMEM : EINVAL ; |