mirror of
https://github.com/samba-team/samba.git
synced 2025-11-18 00:23:50 +03:00
r22914: - Fixes bug 4599. A missing <code>if</code> statement forced subseqeuent
attempts to set attributes to fail. - I also noticed that missing attributes were setting an invalid return string by getxattr(), e.g. if there was not group, the return string had "GROUP:;" instead of excluding the GROUP attribute entirely as it should. The big problem with the way it was, is that the string could not then be passed to setxattr() and parsed.
This commit is contained in:
committed by
Gerald (Jerry) Carter
parent
cc92ce665d
commit
7213b5ebec
@@ -4546,7 +4546,7 @@ cacl_get(SMBCCTX *context,
|
||||
return -1;
|
||||
}
|
||||
n = strlen(p);
|
||||
} else {
|
||||
} else if (sidstr[0] != '\0') {
|
||||
n = snprintf(buf, bufsize,
|
||||
",OWNER:%s", sidstr);
|
||||
}
|
||||
@@ -4591,7 +4591,7 @@ cacl_get(SMBCCTX *context,
|
||||
return -1;
|
||||
}
|
||||
n = strlen(p);
|
||||
} else {
|
||||
} else if (sidstr[0] != '\0') {
|
||||
n = snprintf(buf, bufsize,
|
||||
",GROUP:%s", sidstr);
|
||||
}
|
||||
@@ -5317,7 +5317,9 @@ smbc_setxattr_ctx(SMBCCTX *context,
|
||||
ipc_srv = smbc_attr_server(context, server, share,
|
||||
workgroup, user, password,
|
||||
&pol);
|
||||
srv->no_nt_session = True;
|
||||
if (! ipc_srv) {
|
||||
srv->no_nt_session = True;
|
||||
}
|
||||
} else {
|
||||
ipc_srv = NULL;
|
||||
}
|
||||
@@ -5742,7 +5744,9 @@ smbc_removexattr_ctx(SMBCCTX *context,
|
||||
ipc_srv = smbc_attr_server(context, server, share,
|
||||
workgroup, user, password,
|
||||
&pol);
|
||||
srv->no_nt_session = True;
|
||||
if (! ipc_srv) {
|
||||
srv->no_nt_session = True;
|
||||
}
|
||||
} else {
|
||||
ipc_srv = NULL;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user