bug in smbcacls

Christof Schmitt cs at samba.org
Thu Feb 4 17:47:04 UTC 2016


On Thu, Feb 04, 2016 at 09:31:37AM -0800, Herb Lewis wrote:
> In source3/lib/util_sd.c function parse_ace there is the following
> line that I think is incorrect
> 
> if (sscanf(p, "%u/%u/%u", &atype, &aflags, &amask) == 3 &&
> 
> in the old samba 3.6 code it used to read
> 
> if (sscanf(p, "%i/%i/%i", &atype, &aflags, &amask) == 3 &&
> 
> and according to the man page for sscanf the %u is only for decimal
> integers while %i also checks for base 16 and base 8 as well. Was there
> a reason this was changed so that hex numbers are no longer allowed?

util_sd.c is the result of using common code between smbcacls and
sharesec. There is no reason why we would disallow base 16 and base 8; i
probably just missed that part. Feel free to send a patch, or i can
address this when i have a minute.

Christof



More information about the samba-technical mailing list