apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Orton <...@manyfish.co.uk>
Subject Re: Unix-only code (was Re: svn commit: r10060 - trunk/subversion/libsvn_fs)
Date Fri, 25 Jun 2004 15:17:32 GMT
On Fri, Jun 25, 2004 at 10:59:55AM -0400, Greg Hudson wrote:
> On Thu, 2004-06-24 at 17:47, Joe Orton wrote:
> > Support for the sticky/setgid/setuid bits has been in APR for a short
> > while, on both branches.
> Thanks for pointing this out.  But you guys appear to have introduced a
> bad bug in the process: APR_OS_DEFAULT now includes APR_USETID,
> APR_GSETID, and APR_WSTICKY.  The first two bits are ignored on file and
> directory creation, but the third is not.

Ah good catch Greg.

Interestingly apr_file_open() interprets APR_OS_DEFAULT as meaning "use
0666" on Unix whereas apr_dir_make() really just maps the bits across.

I'll change the new constants to be 0x[248]000 to avoid this issue as
you suggest.  Thanks a lot.

> Note that changing the definition of APR_OS_DEFAULT will not solve this
> problem, since programs compiled against apr 0.9.4 will have used the
> old APR_OS_DEFAULT value.  You need to use flag values outside of 0x0FFF
> for the new bits.
> (All of the above refers to the 0.9 branch, but may also be true of the
> 1.0 branch.  Let me know if further action is required to make sure this
> gets fixed.)

View raw message