getfacl gives octal output for Hebrew user/group names
Anoop Vijayan
acv at linux.vnet.ibm.com
Mon Jun 22 02:30:12 CDT 2009
Andreas,
>> Removing the checks isprint(*s) and *s == '\\' resolves the issue.
>> AD shares are associated with a doamin name and AD users/groups will be in
>> the format Dom\user. Can someone explain why these checks are required?
>
> The '\\' check is required so that backslashes will go through
> unquote(quote(string)) will come out correctly.
>
> The isprint() check is a misguided attempt to do something reasonable with
> unprintable characters, but it leads to lots of problems with different
> encodings, so it should probably be removed. I'll fix that.
>
> There also is a check for '=' in quote(). This is from the attr package which
> separates names and values with '=', but unnecessary in acl. quote() should
> probably be passed in a string of additional characters that need to be quoted
> so that it does the right thing in both packages.
The do_print() in getfacl/getfacl.c calls
printf("# owner: %s\n", xquote(user_name(st->st_uid, opt_numeric)));
printf("# group: %s\n", xquote(group_name(st->st_gid, opt_numeric)));
and xquote simply calls quote().
Also, acl_entry_to_any_str() in libacl/__acl_to_any_text.c calls quote.
I could not find the corresponding unquote calls for these.
If I wrap the above quote() calls with unquote(), the problem seems to be resolved.
Attaching a patch for the same.
Cheers!
Anoop
-------------- next part --------------
A non-text attachment was scrubbed...
Name: getfacl-2.2.47.patch.2
Type: application/x-troff-man
Size: 1142 bytes
Desc: not available
URL: <http://oss.sgi.com/pipermail/xfs/attachments/20090622/8645a01c/attachment.man>
More information about the xfs
mailing list