From f11245f4748e1a14cac97f14e0ef28eb18aff5dd Mon Sep 17 00:00:00 2001 From: Theo de Raadt Date: Sat, 15 Feb 1997 23:44:32 +0000 Subject: buf oflow, danny@freebsd.org --- lib/libc/db/hash/ndbm.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/libc/db/hash/ndbm.c b/lib/libc/db/hash/ndbm.c index 4ac67b56df9..3d68ba0fec4 100644 --- a/lib/libc/db/hash/ndbm.c +++ b/lib/libc/db/hash/ndbm.c @@ -35,7 +35,7 @@ */ #if defined(LIBC_SCCS) && !defined(lint) -static char rcsid[] = "$OpenBSD: ndbm.c,v 1.3 1996/08/19 08:20:42 tholo Exp $"; +static char rcsid[] = "$OpenBSD: ndbm.c,v 1.4 1997/02/15 23:44:31 deraadt Exp $"; #endif /* LIBC_SCCS and not lint */ /* @@ -64,6 +64,10 @@ dbm_open(file, flags, mode) HASHINFO info; char path[MAXPATHLEN]; + if (strlen(file) + strlen(DBM_SUFFIX) > sizeof(path)-1) { + errno = ENAMETOOLONG; + return (NULL); + } info.bsize = 4096; info.ffactor = 40; info.nelem = 1; -- cgit v1.2.3