summaryrefslogtreecommitdiff
path: root/lib/libc/gen
diff options
context:
space:
mode:
authorTodd C. Miller <millert@cvs.openbsd.org>2015-08-01 18:11:09 +0000
committerTodd C. Miller <millert@cvs.openbsd.org>2015-08-01 18:11:09 +0000
commit388de730ac96bb3b71c018fd573cbbd15c7ffd7c (patch)
tree7a0923f9075c198084e7c5b570b4c7c42cbcda3e /lib/libc/gen
parent552a130d47b94b0fa103e6c921c01c81a5765670 (diff)
Fix a potential out-of-bounds read found via address-sanitizer while
fuzzing as reported by Elliott Hughes. OK doug@ stsp@
Diffstat (limited to 'lib/libc/gen')
-rw-r--r--lib/libc/gen/fnmatch.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libc/gen/fnmatch.c b/lib/libc/gen/fnmatch.c
index e83dc43c282..0d0f18ff434 100644
--- a/lib/libc/gen/fnmatch.c
+++ b/lib/libc/gen/fnmatch.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: fnmatch.c,v 1.18 2014/12/11 16:25:34 millert Exp $ */
+/* $OpenBSD: fnmatch.c,v 1.19 2015/08/01 18:11:08 millert Exp $ */
/* Copyright (c) 2011, VMware, Inc.
* All rights reserved.
@@ -192,6 +192,8 @@ static int fnmatch_ch(const char **pattern, const char **string, int flags)
result = 0;
continue;
}
+ if (!**pattern)
+ break;
leadingclosebrace:
/* Look at only well-formed range patterns;