| * dir.cc (opendir): Call fhandler's opendir with fd set to -1. (fdopendir): New function. (seekdir64): Use dirent_info_mask. (rewinddir): Ditto. (closedir): Only release underlying file descriptor if it has been reserved by opendir itself. * fhandler.cc (fhandler_base::opendir): Accommodate new parameter. * fhandler.h (dirent_states): Add dirent_valid_fd and dirent_info_mask. (fhander_XXX::opendir): Add file descriptor parameter. Use regparms. (fhandler_procnet::opendir): Drop declaration. * fhandler_disk_file.cc (fhandler_disk_file::opendir): Ditto. If called from fdopendir, use existing handle to re-open directory with valid flags. Rename fd to cfd. Use only if no valid incoming fd. (fhandler_cygdrive::opendir): Accommodate new parameter. * fhandler_process.cc (fhandler_process::opendir): Ditto. * fhandler_procnet.cc (fhandler_procnet::opendir): Drop definition. * fhandler_virtual.cc (fhandler_virtual::opendir): Accommodate new parameter. Only create new file descriptor entry if called from opendir. Remove duplicated setting of dir->__flags. * posix.sgml: Add fdopendir to list of implemented Solaris functions. * include/cygwin/version.h: Bump API minor number. * include/sys/dirent.h: Declare fdopendir. | ||
|---|---|---|
| .. | ||
| acl.h | ||
| copying.dj | ||
| cygwin.h | ||
| dirent.h | ||
| elf32.h | ||
| elf64.h | ||
| elf_common.h | ||
| elf_generic.h | ||
| file.h | ||
| ioctl.h | ||
| ipc.h | ||
| kd.h | ||
| lock.h | ||
| mman.h | ||
| mount.h | ||
| msg.h | ||
| mtio.h | ||
| param.h | ||
| poll.h | ||
| procfs.h | ||
| queue.h | ||
| resource.h | ||
| select.h | ||
| sem.h | ||
| shm.h | ||
| smallprint.h | ||
| socket.h | ||
| soundcard.h | ||
| statfs.h | ||
| statvfs.h | ||
| stdio.h | ||
| strace.h | ||
| syslimits.h | ||
| syslog.h | ||
| sysmacros.h | ||
| sysproto.h | ||
| termio.h | ||
| termios.h | ||
| ttychars.h | ||
| uio.h | ||
| un.h | ||
| utime.h | ||
| utmp.h | ||
| utsname.h | ||
| vfs.h | ||
| wait.h | ||