[PATCH] Prevent the overwriting of global errno in set file info code path.

Surbhi Palande Surbhi.Palande at canonical.com
Thu Mar 18 14:14:43 MDT 2010


On Thu, 2010-03-18 at 20:02 +0100, Volker Lendecke wrote:
> On Thu, Mar 18, 2010 at 08:47:29PM +0200, Surbhi Palande wrote:
> > Ya! I looked at this once again. You are right. The error number
> > is NOT getting overwritten. I looked at the free_acl() and the
> > allocation of entry code carefully.
> > 
> > Please do ignore this patch. I wonder how the patch worked for me!! 
> > 
> > I did find out the real problem though.
> > 
> > source3/lib/errmap_unix.c::map_nt_error_from_unix() gets called due to
> > error in set_unix_posix_acl(). The errno set is: "ENOTSUP"
> 
> In master we have
> 
> #ifdef ENOTSUP
>         { ENOTSUP,      NT_STATUS_NOT_SUPPORTED},
> #endif
> 
> Is that okay for you?

Is this from source4/libcli/util/errormap.c?

We might need a similar declaration in source3/lib/errmap_unix.c.
I added something like this for testing (to verify if this fixed
anything):
{ ENOTSUP, ERRDOS, ERRunsup, NT_STATUS_NOT_SUPPORTED }, 

But probably we need to add this if ENOTSUP is defined.

Thanks!

Warm Regards,
Surbhi.

> 
> Volker




More information about the samba-technical mailing list