Date: Mon, 23 Mar 2015 05:17:59 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 198819] rewinddir(3) after fdopendir(3) results in double entries Message-ID: <bug-198819-8@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198819 Bug ID: 198819 Summary: rewinddir(3) after fdopendir(3) results in double entries Product: Base System Version: 10.1-RELEASE Hardware: amd64 OS: Any Status: New Severity: Affects Some People Priority: --- Component: bin Assignee: freebsd-bugs@FreeBSD.org Reporter: markrwilliams@gmail.com Created attachment 154687 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=154687&action=edit example program that produces incorrect output on UFS The attached program attempts to list the current working directory. It obtains a pointer to the directory stream via fdopendir(3) and then calls rewinddir(3) before a standard loop over readdir(3). On two out of four machines I tested, the program lists the contents of the current directory twice, like so: $ ls -1 . .. readdir_duplicate_entries readdir_duplicate_entries.c $ ./readdir_duplicate_entries . .. readdir_duplicate_entries.c readdir_duplicate_entries . .. readdir_duplicate_entries.c readdir_duplicate_entries $ The program produces the correct output if rewinddir(3) is not called or if opendir(3) is called instead of open(2)/fdopendir(3). uname -a for the affected machines: FreeBSD lithos.ferv.org 10.1-RELEASE-p5 FreeBSD 10.1-RELEASE-p5 #0: Tue Jan 27 08:55:07 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 FreeBSD ip-172-31-19-241 10.1-RELEASE-p6 FreeBSD 10.1-RELEASE-p6 #0: Tue Feb 24 19:00:21 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 All mounts on both of the affected machines are UFS. All mounts on the the third and fourth machines, on which the test program produced *correct* output, are ZFS. uname information for those: FreeBSD glob 10.0-RELEASE-p9 FreeBSD 10.0-RELEASE-p9 #0: Mon Sep 15 14:35:52 UTC 2014 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 FreeBSD 10.1-RELEASE-p6 (GENERIC) #0: Tue Feb 24 19:00:21 UTC 2015 -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-198819-8>