summaryrefslogtreecommitdiff
path: root/source4/auth/kerberos/kerberos_pac.c
diff options
context:
space:
mode:
authorChristof Schmitt <christof.schmitt@us.ibm.com>2012-07-05 13:17:00 -0700
committerAndrew Bartlett <abartlet@samba.org>2012-07-06 20:45:51 +1000
commit7285ed586f129d45843f98c359003d9ac88cf5cb (patch)
tree4ca176f1284f9f43930be940b0173bae209fc0ab /source4/auth/kerberos/kerberos_pac.c
parenta49eb60e041a55122ce04ed6f576c2ba09c11fe3 (diff)
downloadsamba-7285ed586f129d45843f98c359003d9ac88cf5cb.tar.gz
samba-7285ed586f129d45843f98c359003d9ac88cf5cb.tar.bz2
samba-7285ed586f129d45843f98c359003d9ac88cf5cb.zip
auth: Common function for retrieving PAC_LOGIN_INFO from PAC
Several functions use the same logic as kerberos_pac_logon_info. Move kerberos_pac_logon_info to common code and reuse it to remove the code duplication. Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/auth/kerberos/kerberos_pac.c')
-rw-r--r--source4/auth/kerberos/kerberos_pac.c37
1 files changed, 0 insertions, 37 deletions
diff --git a/source4/auth/kerberos/kerberos_pac.c b/source4/auth/kerberos/kerberos_pac.c
index 85b62632ba..76c1d99d91 100644
--- a/source4/auth/kerberos/kerberos_pac.c
+++ b/source4/auth/kerberos/kerberos_pac.c
@@ -33,43 +33,6 @@
#include "auth/kerberos/kerberos_util.h"
#include "auth/kerberos/pac_utils.h"
-_PUBLIC_ NTSTATUS kerberos_pac_logon_info(TALLOC_CTX *mem_ctx,
- DATA_BLOB blob,
- krb5_context context,
- const krb5_keyblock *krbtgt_keyblock,
- const krb5_keyblock *service_keyblock,
- krb5_const_principal client_principal,
- time_t tgs_authtime,
- struct PAC_LOGON_INFO **logon_info)
-{
- NTSTATUS nt_status;
- struct PAC_DATA *pac_data;
- int i;
- nt_status = kerberos_decode_pac(mem_ctx,
- blob,
- context,
- krbtgt_keyblock,
- service_keyblock,
- client_principal,
- tgs_authtime,
- &pac_data);
- if (!NT_STATUS_IS_OK(nt_status)) {
- return nt_status;
- }
-
- *logon_info = NULL;
- for (i=0; i < pac_data->num_buffers; i++) {
- if (pac_data->buffers[i].type != PAC_TYPE_LOGON_INFO) {
- continue;
- }
- *logon_info = pac_data->buffers[i].info->logon_info.info;
- }
- if (!*logon_info) {
- return NT_STATUS_INVALID_PARAMETER;
- }
- return NT_STATUS_OK;
-}
-
krb5_error_code kerberos_encode_pac(TALLOC_CTX *mem_ctx,
struct PAC_DATA *pac_data,
krb5_context context,