summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2011-07-19 10:43:23 +1000
committerAndrew Bartlett <abartlet@samba.org>2011-07-20 09:17:10 +1000
commitfa18267042440e9d9529f0228a3df030c84acb11 (patch)
treeca616990ff66ff92014e6472223f6ab287d2ba29
parentf47662f363a433f43568b62af14be979c33109e1 (diff)
downloadsamba-fa18267042440e9d9529f0228a3df030c84acb11.tar.gz
samba-fa18267042440e9d9529f0228a3df030c84acb11.tar.bz2
samba-fa18267042440e9d9529f0228a3df030c84acb11.zip
auth: Preserve guest flag on transition via netr_SamInfo3
Signed-off-by: Andrew Tridgell <tridge@samba.org>
-rw-r--r--auth/auth_sam_reply.c3
-rw-r--r--source3/auth/auth_util.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/auth/auth_sam_reply.c b/auth/auth_sam_reply.c
index 54797ef501..5cd4530eff 100644
--- a/auth/auth_sam_reply.c
+++ b/auth/auth_sam_reply.c
@@ -102,6 +102,9 @@ NTSTATUS auth_convert_user_info_dc_sambaseinfo(TALLOC_CTX *mem_ctx,
}
sam->user_flags = 0; /* w2k3 uses NETLOGON_EXTRA_SIDS | NETLOGON_NTLMV2_ENABLED */
+ if (!user_info_dc->info->authenticated) {
+ sam->user_flags |= NETLOGON_GUEST;
+ }
sam->acct_flags = user_info_dc->info->acct_flags;
sam->logon_server.string = user_info_dc->info->logon_server;
sam->domain.string = user_info_dc->info->domain_name;
diff --git a/source3/auth/auth_util.c b/source3/auth/auth_util.c
index 59850bb20e..5553300ad1 100644
--- a/source3/auth/auth_util.c
+++ b/source3/auth/auth_util.c
@@ -1340,6 +1340,8 @@ NTSTATUS make_server_info_info3(TALLOC_CTX *mem_ctx,
result->nss_token |= username_was_mapped;
+ result->guest = (info3->base.user_flags & NETLOGON_GUEST);
+
*server_info = result;
return NT_STATUS_OK;