diff options
author | Andrew Bartlett <abartlet@samba.org> | 2011-12-21 17:26:23 +1100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2011-12-22 15:51:09 +0100 |
commit | e34989eeb261627115d49dd760f7db92ffc96abe (patch) | |
tree | 5095105900aa3d4d6752495c3791beff27a5252e | |
parent | 4ecac6067f6637b160f3beff775c43118e6b684a (diff) | |
download | samba-e34989eeb261627115d49dd760f7db92ffc96abe.tar.gz samba-e34989eeb261627115d49dd760f7db92ffc96abe.tar.bz2 samba-e34989eeb261627115d49dd760f7db92ffc96abe.zip |
s3-auth Restore shortcut for guest security token
This was lost when the server_info and session_info structures were split.
This helps avoid doing lookups for the guest account to determine the
uid/gid and SID values.
Andrew Bartlett
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu Dec 22 15:51:09 CET 2011 on sn-devel-104
-rw-r--r-- | source3/auth/auth_util.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source3/auth/auth_util.c b/source3/auth/auth_util.c index fcfed834e5..4c9ebc01c8 100644 --- a/source3/auth/auth_util.c +++ b/source3/auth/auth_util.c @@ -520,7 +520,17 @@ NTSTATUS create_local_token(TALLOC_CTX *mem_ctx, server_info->session_key.length); } - if (session_info->security_token) { + /* We need to populate session_info->info with the information found in server_info->info3 */ + status = make_user_info_SamBaseInfo(session_info, "", &server_info->info3->base, + server_info->guest == false, + &session_info->info); + if (!NT_STATUS_IS_OK(status)) { + DEBUG(0, ("conversion of info3 into auth_user_info failed!\n")); + TALLOC_FREE(session_info); + return status; + } + + if (server_info->security_token) { /* Just copy the token, it has already been finalised * (nasty hack to support a cached guest session_info, * and a possible strategy for auth_samba4 to pass in @@ -545,16 +555,6 @@ NTSTATUS create_local_token(TALLOC_CTX *mem_ctx, return NT_STATUS_OK; } - /* We need to populate session_info->info with the information found in server_info->info3 */ - status = make_user_info_SamBaseInfo(session_info, "", &server_info->info3->base, - server_info->guest == false, - &session_info->info); - if (!NT_STATUS_IS_OK(status)) { - DEBUG(0, ("conversion of info3 into auth_user_info failed!\n")); - TALLOC_FREE(session_info); - return status; - } - /* * If winbind is not around, we can not make much use of the SIDs the * domain controller provided us with. Likewise if the user name was |