summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2002-01-31 09:37:26 +0000
committerAndrew Tridgell <tridge@samba.org>2002-01-31 09:37:26 +0000
commit9930cf97330dd93985c5558cec6b24406e90c228 (patch)
treea6a36de4a34567cca3e832154826eb6c426a1cb6 /source
parent6f977036ad1053cc4c06f801b989afdd8cfca10d (diff)
downloadsamba-9930cf97330dd93985c5558cec6b24406e90c228.tar.gz
samba-9930cf97330dd93985c5558cec6b24406e90c228.tar.xz
samba-9930cf97330dd93985c5558cec6b24406e90c228.zip
this fixes the problem of not being able to add a SD to a file on a
non-domain Samba server from a NT4 client. Note that this exactly reverses a change by Jeremy on the 18th of December 2001, reverting the code back to what JF originally wrote. I have looked carefully with a sniffer and JFs original NULL sid is correct (ie. it matches what NT4 does) and also fixes the problem. Sending a blank sid (which is what jeremy's patch did) causes NT4 to give a classic "parameter is incorrect error" and prevents the addition of new ACLs.
Diffstat (limited to 'source')
-rw-r--r--source/lib/util_sid.c2
-rw-r--r--source/rpc_server/srv_lsa_nt.c3
2 files changed, 1 insertions, 4 deletions
diff --git a/source/lib/util_sid.c b/source/lib/util_sid.c
index d4f8abb0896..436f045e979 100644
--- a/source/lib/util_sid.c
+++ b/source/lib/util_sid.c
@@ -41,7 +41,6 @@ DOM_SID global_sid_Builtin_Guests; /* Builtin guest users */
DOM_SID global_sid_Authenticated_Users; /* All authenticated rids */
DOM_SID global_sid_Network; /* Network rids */
DOM_SID global_sid_Anonymous; /* Anonymous login */
-DOM_SID global_sid_nonexistent; /* S-0-0. Used in Lsa level 3. */
const DOM_SID *global_sid_everyone = &global_sid_World;
@@ -182,7 +181,6 @@ void generate_wellknown_sids(void)
string_to_sid(&global_sid_Authenticated_Users, "S-1-5-11");
string_to_sid(&global_sid_Network, "S-1-5-2");
string_to_sid(&global_sid_Anonymous, "S-1-5-7");
- string_to_sid(&global_sid_nonexistent, "S-0-0"); /* Used in Lsa level 3. */
/* Create the anon token. */
sid_copy( &anonymous_token.user_sids[0], &global_sid_World);
diff --git a/source/rpc_server/srv_lsa_nt.c b/source/rpc_server/srv_lsa_nt.c
index 97361cab4c1..c044340456e 100644
--- a/source/rpc_server/srv_lsa_nt.c
+++ b/source/rpc_server/srv_lsa_nt.c
@@ -441,7 +441,6 @@ NTSTATUS _lsa_enum_trust_dom(pipes_struct *p, LSA_Q_ENUM_TRUST_DOM *q_u, LSA_R_E
NTSTATUS _lsa_query_info(pipes_struct *p, LSA_Q_QUERY_INFO *q_u, LSA_R_QUERY_INFO *r_u)
{
- extern DOM_SID global_sid_nonexistent;
struct lsa_info *handle;
LSA_INFO_UNION *info = &r_u->dom;
DOM_SID domain_sid;
@@ -494,7 +493,7 @@ NTSTATUS _lsa_query_info(pipes_struct *p, LSA_Q_QUERY_INFO *q_u, LSA_R_QUERY_INF
break;
case ROLE_STANDALONE:
name = global_myworkgroup;
- sid = &global_sid_nonexistent;
+ sid = NULL;
break;
default:
return NT_STATUS_CANT_ACCESS_DOMAIN_INFO;