|
Message-ID: <CAFYbUHMxwFOzW9f_T0etsi9efH3RoSJpBhCVigBXB9LM-ANE-A@mail.gmail.com> Date: Mon, 29 Oct 2018 23:26:19 +0100 From: Robert Högberg <robert.hogberg@...il.com> To: musl@...ts.openwall.com Subject: Unexpected regex behaviour Hi, I've noticed that the musl regex implementation behaves slightly differently than the glibc implementation. I'm attaching a short program showing the behaviour. The difference makes yate (http://yate.null.ro) misbehave when running with musl (reported here: https://github.com/openwrt/telephony/issues/378). Yate uses a regexp like this: "^\\([[:alpha:]][[:alnum:]]\\+:\\)\\?/\\?/\\?\\([^[:space:][:cntrl:]@]\\+@\\)\\?\\([[:alnum:]._+-]\\+\\|[[][[:xdigit:].:]\\+[]]\\)\\(:[0-9]\\+\\)\\?" .. to parse strings like: "sip:012345678@...111.11.111:5060;user=phone" .. and the matches produced by musl are: Match 0: 0 - 32 sip:012345678@...111.11.111:5060 Match 1: -1 - -1 Match 2: 0 - 14 sip:012345678@ Match 3: 14 - 27 11.111.11.111 Match 4: 27 - 32 :5060 .. while glibc produces: Match 0: 0 - 32 sip:012345678@...111.11.111:5060 Match 1: 0 - 4 sip: Match 2: 4 - 14 012345678@ Match 3: 14 - 27 11.111.11.111 Match 4: 27 - 32 :5060 What do you think? I've only tested musl 1.1.19. Sorry if this is not valid for later releases. I skimmed the 1.1.20 release notes and didn't find anything regex related. Regards Robert Content of type "text/html" skipped View attachment "yate_regexp.c" of type "text/x-csrc" (1402 bytes)
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.