diff options
author | Simo Sorce <idra@samba.org> | 2012-03-31 22:09:22 -0400 |
---|---|---|
committer | Andreas Schneider <asn@samba.org> | 2012-04-12 12:06:43 +0200 |
commit | 70c303a7f357b2c73955b24128ac8a72b656d4e6 (patch) | |
tree | f87c92753e56bee1b274a20444f80f53e64ee0c0 /auth/kerberos/pac_utils.h | |
parent | 3fd6deda7d440b579950ab6d0e2407d755ac70ad (diff) | |
download | samba-70c303a7f357b2c73955b24128ac8a72b656d4e6.tar.gz samba-70c303a7f357b2c73955b24128ac8a72b656d4e6.tar.bz2 samba-70c303a7f357b2c73955b24128ac8a72b656d4e6.zip |
auth-krb: Move pac related util functions in a single place.
Signed-off-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'auth/kerberos/pac_utils.h')
-rw-r--r-- | auth/kerberos/pac_utils.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/auth/kerberos/pac_utils.h b/auth/kerberos/pac_utils.h new file mode 100644 index 0000000000..9fe08de834 --- /dev/null +++ b/auth/kerberos/pac_utils.h @@ -0,0 +1,50 @@ +/* + Unix SMB/CIFS implementation. + kerberos authorization data (PAC) utility library + Copyright (C) Andrew Bartlett <abartlet@samba.org> 2011 + Copyright (C) Simo Sorce 2010-2012 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#ifndef _PAC_UTILS_H +#define _PAC_UTILS_H + +#include "libcli/auth/krb5_wrap.h" +struct PAC_SIGNATURE_DATA; +struct PAC_DATA; + +krb5_error_code check_pac_checksum(DATA_BLOB pac_data, + struct PAC_SIGNATURE_DATA *sig, + krb5_context context, + const krb5_keyblock *keyblock); + +NTSTATUS kerberos_decode_pac(TALLOC_CTX *mem_ctx, + DATA_BLOB pac_data_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_DATA **pac_data_out); + +NTSTATUS gssapi_obtain_pac_blob(TALLOC_CTX *mem_ctx, + gss_ctx_id_t gssapi_context, + gss_name_t gss_client_name, + DATA_BLOB *pac_data); +NTSTATUS gssapi_get_session_key(TALLOC_CTX *mem_ctx, + gss_ctx_id_t gssapi_context, + DATA_BLOB *session_key, + uint32_t *keytype); +#endif /* _PAC_UTILS_H */ |