diff options
author | Andrew Tridgell <tridge@samba.org> | 2004-05-26 07:32:30 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:56:19 -0500 |
commit | d66c2b477d9cfb3cf68127214c92b4b3bcb8aa22 (patch) | |
tree | 52cd9596ed2adbfa25f546c613c6512f4bc29ac2 | |
parent | 766ce9a057f954478deede1e4635ef9596894d34 (diff) | |
download | samba-d66c2b477d9cfb3cf68127214c92b4b3bcb8aa22.tar.gz samba-d66c2b477d9cfb3cf68127214c92b4b3bcb8aa22.tar.bz2 samba-d66c2b477d9cfb3cf68127214c92b4b3bcb8aa22.zip |
r901: w2k3 completely ignores the domain name argument to GetDomPwInfo,
always returning the info for the primary domain. I noticed this
because WinXP sends the wrong information in this field (it sends
\\server_name) and gets away with it
(This used to be commit e128bcca562960afe75bf14dd775113e1dd7b213)
-rw-r--r-- | source4/rpc_server/samr/dcesrv_samr.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c index da89688d8f..322ef3a11c 100644 --- a/source4/rpc_server/samr/dcesrv_samr.c +++ b/source4/rpc_server/samr/dcesrv_samr.c @@ -1990,6 +1990,9 @@ static NTSTATUS samr_RemoveMultipleMembersFromAlias(struct dcesrv_call_state *dc samr_GetDomPwInfo this fetches the default password properties for a domain + + note that w2k3 completely ignores the domain name in this call, and + always returns the information for the servers primary domain */ static NTSTATUS samr_GetDomPwInfo(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, struct samr_GetDomPwInfo *r) @@ -1999,10 +2002,6 @@ static NTSTATUS samr_GetDomPwInfo(struct dcesrv_call_state *dce_call, TALLOC_CTX const char * const attrs[] = {"minPwdLength", "pwdProperties", NULL }; void *sam_ctx; - if (r->in.name == NULL || r->in.name->name == NULL) { - return NT_STATUS_NO_SUCH_DOMAIN; - } - sam_ctx = samdb_connect(); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; @@ -2011,7 +2010,7 @@ static NTSTATUS samr_GetDomPwInfo(struct dcesrv_call_state *dce_call, TALLOC_CTX ret = samdb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(name=%s)(objectclass=domain))", - r->in.name->name); + lp_workgroup()); if (ret <= 0) { samdb_close(sam_ctx); return NT_STATUS_NO_SUCH_DOMAIN; |