freebsd-dev/lib
John Baldwin 9f72c0322c Fix some edge cases with rewinddir():
- In the unionfs case, opendir() and fdopendir() read the directory's full
  contents and cache it.  This cache is not refreshed when rewinddir() is
  called, so rewinddir() will not notice updates to a directory.  Fix this
  by splitting the code to fetch a directory's contents out of
  __opendir_common() into a new _filldir() function and call this from
  rewinddir() when operating on a unionfs directory.
- If rewinddir() is called on a directory opened with fdopendir() before
  any directory entries are fetched, rewinddir() will not adjust the seek
  location of the backing file descriptor.  If the file descriptor passed
  to fdopendir() had a non-zero offset, the rewinddir() will not rewind to
  the beginning.  Fix this by always seeking back to 0 in rewinddir().
  This means the dd_rewind hack can also be removed.

While here, add missing locking to rewinddir().

CR:   	    	https://phabric.freebsd.org/D312
Reviewed by:	jilles
MFC after:	1 week
2014-07-11 16:16:26 +00:00
..
atf Homogenize libatf-* version numbers with upstream. 2014-06-06 17:05:43 +00:00
clang Remove ia64. 2014-07-07 00:27:09 +00:00
csu Remove ia64. 2014-07-07 00:27:09 +00:00
libalias
libarchive Remove ia64. 2014-07-07 00:27:09 +00:00
libauditd NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
libbegemot
libblocksruntime
libbluetooth use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libbsdstat libbsdstat: fix warnings, set WARNS 2014-03-11 01:10:44 +00:00
libbsm
libbsnmp Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libbz2
libc Fix some edge cases with rewinddir(): 2014-07-11 16:16:26 +00:00
libc_nonshared Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libc++ Import libc++ 3.4 release. This contains a lot of bugfixes, and some 2014-01-30 07:44:22 +00:00
libcalendar use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libcam use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libcapsicum use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libcasper Update most userspace consumers of capability.h to use capsicum.h instead. 2014-03-16 11:04:44 +00:00
libcom_err
libcompat
libcompiler_rt Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libcrypt use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libcuse mdoc: remove superfluous paragraph macros. 2014-06-23 18:40:21 +00:00
libcxxrt
libdevinfo use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libdevstat use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libdwarf
libedit Sync some (mostly cosmetical) changes from NetBSD 2014-07-10 17:52:17 +00:00
libefi use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libelf
libexecinfo
libexpat use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libfetch Support EAGAIN in fetch_writev 2014-07-10 13:04:52 +00:00
libgeom use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libgpib
libgssapi use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libiconv
libiconv_modules Replace malloc+memset with calloc. 2014-06-13 08:26:53 +00:00
libipsec Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libjail
libkiconv Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libkvm Remove ia64. 2014-07-07 00:27:09 +00:00
libldns Remove dead files. 2014-05-15 15:22:32 +00:00
liblzma
libmagic MFV r267843: update file/libmagic to 5.19. 2014-06-26 06:03:39 +00:00
libmandoc Merge mdocml v1.12.3 into head 2014-02-01 09:27:57 +00:00
libmd use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libmemstat use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libmilter Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libmp
libnandfs
libnetbsd
libnetgraph use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libngatm
libnv use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libopie
libpam mdoc: remove superfluous paragraph macros. 2014-06-23 18:40:21 +00:00
libpcap Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libpjdlog
libpmc mdoc: remove superfluous paragraph macros. 2014-06-23 18:40:21 +00:00
libproc In libproc, avoid calling __cxa_demangle(), and thus depending on either 2014-07-09 17:31:57 +00:00
libprocstat use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libradius Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
librpcsec_gss use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
librpcsvc Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
librt
librtld_db use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libsbuf Implement Short/Small String Optimization in SBUF(9) and change lengths and 2014-07-10 13:08:51 +00:00
libsdp use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libsm Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libsmb Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libsmdb
libsmutil
libstand Remove ia64. 2014-07-07 00:27:09 +00:00
libstdbuf
libstdthreads use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libtacplus
libtelnet When building picobsd, define WITHOUT_OPENSSL and WITHOUT_KERBEROS and 2014-06-06 04:09:07 +00:00
libthr Remove ia64. 2014-07-07 00:27:09 +00:00
libthread_db Remove ia64. 2014-07-07 00:27:09 +00:00
libucl Update to 20140321 2014-03-22 17:28:14 +00:00
libufs use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libugidfw
libulog Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
libunbound Upgrade to latest ldns (1.6.17) and unbound (1.4.22). 2014-05-15 03:30:03 +00:00
libusb Update reported libusb version to 1.0.13 2014-06-05 14:19:32 +00:00
libusbhid
libutil mdoc: remove superfluous paragraph macros. 2014-06-23 18:40:21 +00:00
libvgl use .Mt to mark up email addresses consistently (part3) 2014-06-23 08:23:05 +00:00
libvmmapi Provide APIs to directly get 'lowmem' and 'highmem' size directly. 2014-06-24 02:02:51 +00:00
libwrap Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
liby
libypclnt
libz Fix path for zlib examples, this have no runtime effect and was 2014-06-11 20:48:40 +00:00
msun Remove ia64. 2014-07-07 00:27:09 +00:00
ncurses Remove ia64. 2014-07-07 00:27:09 +00:00
tests
Makefile Remove ia64. 2014-07-07 00:27:09 +00:00
Makefile.inc