31 lines
1.1 KiB
Diff
31 lines
1.1 KiB
Diff
#! /bin/sh /usr/share/dpatch/dpatch-run
|
|
## 14private_regex_fixes.dpatch by <hesso@pool.math.tu-berlin.de>
|
|
##
|
|
## DP: Fixes to the private regex library; includes fix for #523934.
|
|
|
|
@DPATCH@
|
|
diff -Naur regex.orig/regcomp.c regex/regcomp.c
|
|
--- nvi-1.81.6.orig/regex/regcomp.c 2007-11-18 17:41:42.000000000 +0100
|
|
+++ nvi-1.81.6/regex/regcomp.c 2008-05-01 18:37:57.000000000 +0200
|
|
@@ -606,7 +606,8 @@
|
|
REQUIRE(starordinary, REG_BADRPT);
|
|
/* FALLTHROUGH */
|
|
default:
|
|
- ordinary(p, c &~ BACKSL);
|
|
+ /* ordinary(p, c &~ BACKSL); -- Fix potential overflow */
|
|
+ ordinary(p, c & 0xff);
|
|
break;
|
|
}
|
|
|
|
diff -Naur regex.orig/regexec.c regex/regexec.c
|
|
--- nvi-1.81.6.orig/regex/regexec.c 2007-11-18 17:41:42.000000000 +0100
|
|
+++ nvi-1.81.6/regex/regexec.c 2008-05-01 18:38:00.000000000 +0200
|
|
@@ -63,7 +63,7 @@
|
|
|
|
/* macros for manipulating states, small version */
|
|
#define states int
|
|
-#define states1 states /* for later use in regexec() decision */
|
|
+typedef states states1; /* for later use in regexec() decision */
|
|
#define CLEAR(v) ((v) = 0)
|
|
#define SET0(v, n) ((v) &= ~(1 << (n)))
|
|
#define SET1(v, n) ((v) |= 1 << (n))
|