diff --git a/dirent/dirent.h b/dirent/dirent.h index 218f1ed44b..c47d3273b2 100644 --- a/dirent/dirent.h +++ b/dirent/dirent.h @@ -126,21 +126,6 @@ enum The actual structure is opaque to users. */ typedef struct __dirstream DIR; -/* Open a directory stream on NAME. - Return a DIR stream on the directory, or NULL if it could not be opened. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern DIR *opendir (const char *__name) __nonnull ((1)); - -#ifdef __USE_XOPEN2K8 -/* Same as opendir, but open the stream on the file descriptor FD. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern DIR *fdopendir (int __fd); -#endif - /* Close the directory stream DIRP. Return 0 if successful, -1 if not. @@ -148,6 +133,23 @@ extern DIR *fdopendir (int __fd); marked with __THROW. */ extern int closedir (DIR *__dirp) __nonnull ((1)); +/* Open a directory stream on NAME. + Return a DIR stream on the directory, or NULL if it could not be opened. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern DIR *opendir (const char *__name) __nonnull ((1)) + __attribute_malloc__ __attr_dealloc (closedir, 1); + +#ifdef __USE_XOPEN2K8 +/* Same as opendir, but open the stream on the file descriptor FD. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern DIR *fdopendir (int __fd) + __attribute_malloc__ __attr_dealloc (closedir, 1); +#endif + /* Read a directory entry from DIRP. Return a pointer to a `struct dirent' describing the entry, or NULL for EOF or error. The storage returned may be overwritten by a later readdir call on the