summaryrefslogtreecommitdiff
path: root/lib/libc/compat/include
diff options
context:
space:
mode:
authortonnerre <tonnerre@NetBSD.org>2008-05-04 18:53:26 +0000
committertonnerre <tonnerre@NetBSD.org>2008-05-04 18:53:26 +0000
commit34f7daa87e5b8edd4df282ec49cd38df9b5a830e (patch)
tree0bf98fad4f4086da9b486ef26c315f7b98b427a7 /lib/libc/compat/include
parentdd178c786ecdf5d8f7c6d3df38323ff3f58881cb (diff)
Fix a bug in the implementation of seekdir(). If the first entry in
a block has been unlinked, seekdir() may overshoot by one entry. Thus, _readdir_unlinked() must not skip deleted entries when being called from seekdir(). Christos agreed.
Diffstat (limited to 'lib/libc/compat/include')
-rw-r--r--lib/libc/compat/include/dirent.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libc/compat/include/dirent.h b/lib/libc/compat/include/dirent.h
index 60f48d3648f..4a9112dc689 100644
--- a/lib/libc/compat/include/dirent.h
+++ b/lib/libc/compat/include/dirent.h
@@ -1,4 +1,4 @@
-/* $NetBSD: dirent.h,v 1.5 2006/03/26 18:22:40 christos Exp $ */
+/* $NetBSD: dirent.h,v 1.6 2008/05/04 18:53:26 tonnerre Exp $ */
/*-
* Copyright (c) 1989, 1993
@@ -51,7 +51,8 @@ struct dirent *__readdir30(DIR *);
#if defined(_NETBSD_SOURCE)
-struct dirent12 *_readdir_unlocked(DIR *);
+struct dirent12 *_readdir_unlocked(DIR *, int);
+struct dirent *___readdir_unlocked50(DIR *, int);
struct dirent *___readdir_unlocked30(DIR *);
DIR *__opendir2(const char *, int);