* ntea.cc (read_ea): Always add length of "user." prefix, not only

on Samba.  Change comment.
This commit is contained in:
Corinna Vinschen 2009-11-18 15:57:08 +00:00
parent edabf07696
commit b1d699c434
2 changed files with 11 additions and 7 deletions

View File

@ -1,3 +1,8 @@
2009-11-18 Corinna Vinschen <corinna@vinschen.de>
* ntea.cc (read_ea): Always add length of "user." prefix, not only
on Samba. Change comment.
2009-11-18 Corinna Vinschen <corinna@vinschen.de>
* ntea.cc (read_ea): Try to open file first to have more sensible

View File

@ -156,8 +156,7 @@ read_ea (HANDLE hdl, path_conv &pc, const char *name, char *value, size_t size)
ret = 0;
do
{
if (pc.fs_is_samba ()) /* See below. */
fea->EaNameLength += 5;
fea->EaNameLength += 5; /* "user." */
if (size > 0)
{
if ((size_t) ret + fea->EaNameLength + 1 > size)
@ -165,11 +164,11 @@ read_ea (HANDLE hdl, path_conv &pc, const char *name, char *value, size_t size)
set_errno (ERANGE);
goto out;
}
/* Samba hides the user namespace from Windows clients. We add
it in EA listings to keep tools like attr/getfattr/setfattr
happy. */
char tmpbuf[MAX_EA_NAME_LEN * 2], *tp = tmpbuf;
tp = stpcpy (tmpbuf, "user.");
/* For compatibility with Linux, we always prepend "user." to
the attribute name, so effectively we only support user
attributes from a application point of view. */
char tmpbuf[MAX_EA_NAME_LEN * 2];
char *tp = stpcpy (tmpbuf, "user.");
stpcpy (tp, fea->EaName);
/* NTFS stores all EA names in uppercase unfortunately. To keep
compatibility with ext/xfs EA namespaces and accompanying