* Remove the SINGLEUSE feature for telldir(), it does not conform to the
commited9ff9fd5ac76105d5af9a348da3305486e7c46b
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 22 Apr 2008 21:29:42 +0000 (22 21:29 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 22 Apr 2008 21:29:42 +0000 (22 21:29 +0000)
treea4bdb9f174ab756eaf6816caece28dbe021281da
parenta66ceccfa8eb530dc7a6f92284333f19ec1d2c5c
* Remove the SINGLEUSE feature for telldir(), it does not conform to the
  Open Group specification.

* Add a mutex around the ddloc hash table.  Note that NetBSD implemented
  a per-dirp list but telldir/seekdir performance just isn't an issue
  for these functions so stick with the global hash table.

* Reuse the ddloc for a previous seekdir() when calling telldir() just
  after a seekdir(), instead of allocating a new one.

* rewinddir() now cleans up any ddloc's for the dirp.

Reported-by: Gary Stanley <sinknull@crater.dragonflybsd.org>
include/dirent.h
lib/libc/gen/rewinddir.c
lib/libc/gen/telldir.c