Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 28 Oct 2020 11:05:58 +0100
From: Mark Wielaard <>
To: Rich Felker <>
Cc: Florian Weimer <>,, 
 √Črico Rolim <>,, Max Rees <>
Subject: Re: Re: [QUESTION] Which fnmatch() functionality does
 elfutils depend on?

Hi Rich,

On Tue, 2020-10-27 at 18:25 -0400, Rich Felker wrote:
> On Tue, Oct 27, 2020 at 11:19:11PM +0100, Mark Wielaard wrote:
> > On Tue, Oct 27, 2020 at 01:08:17PM -0400, Rich Felker wrote:
> > > They do because they're also in space, unless you want
> > > exponential-time which is huge even on small inputs, and greater than
> > > O(1) space requirement means the interface can't satisfy its contract
> > > to return a conclusive result for valid inputs.
> > 
> > But that isn't the contract if fnmatch. fnmatch returns 0 for a match
> > and non-zero for either a non-match or some error. So if your
> > algorithm hits some error case, like out of memory, returning a
> > non-zero result is fine.
> > 
> > I believe the extended wildcard pattern are widely supported and
> > useful. If you don't want to implement them because they aren't in any
> > standardized enough yet we can ask the Austin Group to add them to
> > fnmatch. They have adopted other GNU flags for fnmatch in the past.
> And I can ask them not to. Your hostility is really unwelcome here.

No hostility intended at all. Please assume postive intend. I was just
pointing out what I believe are technical facts. That extended wildcard
patterns are well defined and supported in various context, how Posix
defines the fnmatch contract (which explicitly allows for error
handling) and that the Austin group has been willing to document and
specify GNU extensions to various standard functions.

I am really just trying to help some people who would like musl add
support for functionality elfutils relies on or find workarounds for
missing functionality. I realize extended wildcard support through
fnmatch is just one small part of that. There are certainly larger
issues to overcome. As far as I can see musl doesn't support argp,
obstack, fts, symbol versions and various on-stack string functions. So
there is certainly some work to do. But hopefully we can do that
without taking away any useful features from either project. I don't
believe anybody is trying to be hostile by trying to make these
projects work together. I do think it is useful to see if we can
standardize some of these glibc extensions projects are relying on.



Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.