summaryrefslogtreecommitdiffstats
path: root/src/grep/tests/triple-backref
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-11 08:21:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-11 08:21:29 +0000
commit29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc (patch)
tree63ef546b10a81d461e5cf5ed9e98a68cd7dee1aa /src/grep/tests/triple-backref
parentInitial commit. (diff)
downloadkbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.tar.xz
kbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.zip
Adding upstream version 1:0.1.9998svn3589+dfsg.upstream/1%0.1.9998svn3589+dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/grep/tests/triple-backref')
-rwxr-xr-xsrc/grep/tests/triple-backref30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/grep/tests/triple-backref b/src/grep/tests/triple-backref
new file mode 100755
index 0000000..796fa7b
--- /dev/null
+++ b/src/grep/tests/triple-backref
@@ -0,0 +1,30 @@
+#! /bin/sh
+# Test for a bug in glibc's regex code as of September 7, 2014.
+#
+# Copyright (C) 2014-2021 Free Software Foundation, Inc.
+#
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved.
+
+# This tickles a bug in the regex code that can cause heap violations etc.
+# A fix would be welcome, though fixing is not trivial. See:
+# https://sourceware.org/bugzilla/show_bug.cgi?id=11053
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+require_timeout_
+
+echo a > in || framework_failure_
+
+fail=0
+
+# Clear this, so glibc doesn't bother to produce a core dump.
+MALLOC_CHECK_=
+
+warn_ "$ME_: expect malfunction on glibc systems due to" \
+ "https://sourceware.org/bugzilla/show_bug.cgi?id=11053"
+
+timeout 10 grep -E '(.?)(.?)(.?)\3\2\1' in > out || fail=1
+compare out in || fail=1
+
+Exit $fail