diff options
author | Gerald Carter <jerry@samba.org> | 2005-11-11 03:03:41 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2005-11-11 03:03:41 +0000 |
commit | 7060a2c9442111650852383da1abccf01c1102f0 (patch) | |
tree | dbbc509aca435466f55c453db92409e4e7344098 /source/smbd/sesssetup.c | |
parent | 63a386354d86c7a76bc8636ac675c103bdc7654c (diff) | |
download | samba-7060a2c9442111650852383da1abccf01c1102f0.tar.gz samba-7060a2c9442111650852383da1abccf01c1102f0.tar.xz samba-7060a2c9442111650852383da1abccf01c1102f0.zip |
r11661: Store the INFO3 in the PAC data into the netsamlogon_cache.
Also remove the mem_ctx from the netsamlogon_cache_store() API.
Guenther, what should we be doing with the other fields in
the PAC_LOGON_INFO?
Diffstat (limited to 'source/smbd/sesssetup.c')
-rw-r--r-- | source/smbd/sesssetup.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/source/smbd/sesssetup.c b/source/smbd/sesssetup.c index 9ac258cb5e9..2c967601678 100644 --- a/source/smbd/sesssetup.c +++ b/source/smbd/sesssetup.c @@ -180,10 +180,6 @@ static int reply_spnego_kerberos(connection_struct *conn, return ERROR_NT(NT_STATUS_LOGON_FAILURE); } - if (pac_data) { - logon_info = get_logon_info_from_pac(pac_data); - } - DEBUG(3,("Ticket name is [%s]\n", client)); p = strchr_m(client, '@'); @@ -196,6 +192,14 @@ static int reply_spnego_kerberos(connection_struct *conn, } *p = 0; + + /* save the PAC data if we have it */ + + if (pac_data) { + logon_info = get_logon_info_from_pac(pac_data); + netsamlogon_cache_store( client, &logon_info->info3 ); + } + if (!strequal(p+1, lp_realm())) { DEBUG(3,("Ticket for foreign realm %s@%s\n", client, p+1)); if (!lp_allow_trusted_domains()) { |