g10: Fix regexp sanitization.
authorNIIBE Yutaka <gniibe@fsij.org>
Thu, 9 Nov 2017 05:03:22 +0000 (14:03 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Thu, 9 Nov 2017 05:03:22 +0000 (14:03 +0900)
commitccf3ba92087e79abdeaa0208795829b431c6f201
treec1410fdfd7860767e97ecf5951ddcf44bd71034d
parent68284e1509490a68adcc6019a5bf8fb3674d3807
g10: Fix regexp sanitization.

* g10/trustdb.c (sanitize_regexp): Only escape operators.

--

To sanitize a regular expression, quoting by backslash should be only
done for defined characters.  POSIX defines 12 characters including
dot and backslash.

Quoting other characters is wrong, in two ways; It may build an
operator like: \b, \s, \w when using GNU library.  Case ignored match
doesn't work, because quoting lower letter means literally and no
much to upper letter.

GnuPG-bug-id: 2923
Co-authored-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
g10/trustdb.c