Browse Source

__opendir2, DTF_NODUP, and __DTF_READALL can die. struct dirent

dd_flags is renamed to the placeholder position dd_unused so that
we can spot "broken software" which assumes we have Jan Simon Pendry's
union mounts (we don't have them, and won't have them ever again).
__opendir2 question spotted by matthew
verified to not break ports by sthen
OPENBSD_5_0
deraadt 13 years ago
parent
commit
4b01367514
1 changed files with 2 additions and 6 deletions
  1. +2
    -6
      src/include/dirent.h

+ 2
- 6
src/include/dirent.h View File

@ -1,4 +1,4 @@
/* $OpenBSD: dirent.h,v 1.22 2011/07/03 18:51:01 jsg Exp $ */
/* $OpenBSD: dirent.h,v 1.23 2011/07/14 02:16:00 deraadt Exp $ */
/* $NetBSD: dirent.h,v 1.9 1995/03/26 20:13:37 jtc Exp $ */ /* $NetBSD: dirent.h,v 1.9 1995/03/26 20:13:37 jtc Exp $ */
/*- /*-
@ -73,14 +73,11 @@ typedef struct _dirdesc {
int dd_len; /* size of data buffer */ int dd_len; /* size of data buffer */
off_t dd_seek; /* magic cookie returned by getdirentries */ off_t dd_seek; /* magic cookie returned by getdirentries */
off_t dd_rewind; /* magic cookie for rewinding */ off_t dd_rewind; /* magic cookie for rewinding */
int dd_flags; /* flags for readdir */
int dd_unused; /* was flags for readdir */
struct _telldir *dd_td; /* telldir position recording */ struct _telldir *dd_td; /* telldir position recording */
void *dd_lock; /* mutex to protect struct */ void *dd_lock; /* mutex to protect struct */
} DIR; } DIR;
/* flags for opendir2 */
#define DTF_NODUP 0x0002 /* don't return duplicate names */
#ifndef NULL #ifndef NULL
#ifdef __GNUG__ #ifdef __GNUG__
#define NULL __null #define NULL __null
@ -104,7 +101,6 @@ struct dirent *readdir(DIR *);
void rewinddir(DIR *); void rewinddir(DIR *);
int closedir(DIR *); int closedir(DIR *);
#if __BSD_VISIBLE #if __BSD_VISIBLE
DIR *__opendir2(const char *, int);
int getdirentries(int, char *, int, off_t *) int getdirentries(int, char *, int, off_t *)
__attribute__ ((__bounded__(__string__,2,3))); __attribute__ ((__bounded__(__string__,2,3)));
#endif /* __BSD_VISIBLE */ #endif /* __BSD_VISIBLE */


Loading…
Cancel
Save