Fix things so that _NETBSD_SOURCE correctly exposes the dirfd() and
the insides of struct _dirdesc. Also make the existence of struct _dirdesc visible to POSIX applications since this is less ugly than pretending that DIR is a void *.
This commit is contained in:
parent
d46d73437c
commit
8758baf5b6
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: dirent.h,v 1.18 2003/04/28 23:16:12 bjh21 Exp $ */
|
/* $NetBSD: dirent.h,v 1.19 2003/04/29 23:08:13 bjh21 Exp $ */
|
||||||
|
|
||||||
/*-
|
/*-
|
||||||
* Copyright (c) 1989, 1993
|
* Copyright (c) 1989, 1993
|
||||||
|
@ -51,15 +51,15 @@
|
||||||
#define d_ino d_fileno /* backward compatibility */
|
#define d_ino d_fileno /* backward compatibility */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(_POSIX_C_SOURCE) || defined(_XOPEN_SOURCE)
|
typedef struct _dirdesc DIR;
|
||||||
typedef void * DIR;
|
|
||||||
#else
|
#if defined(_NETBSD_SOURCE)
|
||||||
|
|
||||||
/* definitions for library routines operating on directories. */
|
/* definitions for library routines operating on directories. */
|
||||||
#define DIRBLKSIZ 1024
|
#define DIRBLKSIZ 1024
|
||||||
|
|
||||||
/* structure describing an open directory. */
|
/* structure describing an open directory. */
|
||||||
typedef struct _dirdesc {
|
struct _dirdesc {
|
||||||
int dd_fd; /* file descriptor associated with directory */
|
int dd_fd; /* file descriptor associated with directory */
|
||||||
long dd_loc; /* offset in current buffer */
|
long dd_loc; /* offset in current buffer */
|
||||||
long dd_size; /* amount of data returned by getdents */
|
long dd_size; /* amount of data returned by getdents */
|
||||||
|
@ -68,7 +68,7 @@ typedef struct _dirdesc {
|
||||||
off_t dd_seek; /* magic cookie returned by getdents */
|
off_t dd_seek; /* magic cookie returned by getdents */
|
||||||
long dd_rewind; /* magic cookie for rewinding */
|
long dd_rewind; /* magic cookie for rewinding */
|
||||||
int dd_flags; /* flags for readdir */
|
int dd_flags; /* flags for readdir */
|
||||||
} DIR;
|
};
|
||||||
|
|
||||||
#define dirfd(dirp) ((dirp)->dd_fd)
|
#define dirfd(dirp) ((dirp)->dd_fd)
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ typedef struct _dirdesc {
|
||||||
|
|
||||||
#include <sys/null.h>
|
#include <sys/null.h>
|
||||||
|
|
||||||
#endif /* _POSIX_C_SOURCE || _XOPEN_SOURCE */
|
#endif
|
||||||
|
|
||||||
#ifndef _KERNEL
|
#ifndef _KERNEL
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue