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

Andrew Haley aph at redhat.com
Thu Aug 16 13:14:39 UTC 2007


David Woodhouse writes:
 > On Thu, 2007-08-16 at 05:39 -0400, Alan Cox wrote:
 > > Sorry ignore the previous email I misunderstood what was going on.
 > > 
 > > You can open a file O_CREAT with neither read or write, you can open a file
 > > with O_CREAT|O_WRONLY but not give permissions in the file mode. You must
 > > provide the third argument so the abort is right. If you don't then the permissions
 > > are set based on the random values (eg the return address)
 > 
 > Return address?
 > 
 > Even on crappy register-starved architectures like i386 we'd have the
 > three arguments in registers, wouldn't we?

No: in userland all args are passed on the stack.

        subl    $24, %esp       #,
        movl    $66, 4(%esp)    #,
        movl    $.LC0, (%esp)   #,
        call    open    #

Andrew.

-- 
Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, UK
Registered in England and Wales No. 3798903




More information about the Fedora-maintainers mailing list