The open() system call in f8 really broken...

Oliver Falk oliver at linux-kernel.at
Thu Aug 16 15:11:13 UTC 2007


On 08/16/2007 05:08 PM, Steve Dickson wrote:
> Jakub Jelinek wrote:
>> No.  But if you want to make sure packages you built successfully
>> against glibc-2.6.90-* or later don't die at runtime for these errors,
>> it is pretty easy to just check all calls to __open{,at}{,64}_2
>> functions (i.e. calls which don't pass mode argument to open*
>> and it is not clear whether O_CREAT is or is not used at compile time),
>> they will be pretty rare and in each case you can study the code to
>> determine if the passed flags can contain O_CREAT or not.  If they can,
>> you must supply the mode argument, if it can't, you are ok.
> How about instead of aborting the process... just fail the open call
> with some like EINVAL? Would that accomplish the exact same thing?
> 
> *Anything* is better than having glibc calling abort()... imho...

Wouldn't most programs - I can think of some big commercial DB - then
abort as well?

-of




More information about the Fedora-maintainers mailing list