glob() (and internal funcs) never checks GLOB_ERR unless an error
handler pointer is passed. Even with a handler, GLOB_ERR is only
partially implemented, and conditions which should activate the
semantic do not. Finally, conditions which should not activate
the semantic do, rendering GLOB_ERR far less useful than it should
be (a TODO identifying this problem was in the source tree, and
I implemented the fix).
Fix: The following context diff was pasted from emacs - tabs are intact.
How-To-Repeat: Do that math :-P
glob("/secretdir/*",GLOB_ERR,0,&globbuf) where /secretdir is not
accessible - should result in negative return value, but does not.
Does this problem still occur in newer versions of FreeBSD,
such as 4.3-RELEASE?
On Sat, Jul 21, 2001 at 10:47:04PM -0400, Daniel Pouzzner wrote:
> >Does this problem still occur in newer versions of FreeBSD,
> >such as 4.3-RELEASE?
> I submitted that bug report so long I don't even remember what I was
> working on that had me using the glob routines. I do remember
> submitting the bug report at least.
> Can you send me a URL where I can read my bug report for a refresher?
Hmm, the URL should have been at the bottom of the message Gnats
sent you. Anyway, here it is:
This is still a problem. Awaiting committer.
Adding to Audit-Trail.
On Sat, Jul 21, 2001 at 11:17:42PM -0400, Daniel Pouzzner wrote:
> I just checked the 4.3 code (Mar 28 modtime on glob.c) and no repair
> has been implemented (notably, my suggested repair has not been
> Synopsis: GLOB_ERR not handled correctly by glob()
> State-Changed-From-To: open->feedback
> State-Changed-By: mike
> State-Changed-When: Sat Jul 21 19:40:12 PDT 2001
> Does this problem still occur in newer versions of FreeBSD,
> such as 4.3-RELEASE?
For bugs matching the following conditions:
- Status == In Progress
- Assignee == "bugs@FreeBSD.org"
- Last Modified Year <= 2017
- Set Status to "Open"