summaryrefslogtreecommitdiff
path: root/source4/auth/auth.h
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2011-12-28 17:48:45 +1100
committerAndrew Bartlett <abartlet@samba.org>2011-12-29 01:10:58 +0100
commit149f8f16be79dc9d142971fb74633cfc5b186840 (patch)
treef13e1a8f8b7c58f659330dc8ceb0a20e4fa0448c /source4/auth/auth.h
parentfc226f81c6c14b1afc9b98692463ff1e2f9b2464 (diff)
downloadsamba-149f8f16be79dc9d142971fb74633cfc5b186840.tar.gz
samba-149f8f16be79dc9d142971fb74633cfc5b186840.tar.bz2
samba-149f8f16be79dc9d142971fb74633cfc5b186840.zip
s4-gensec: Move parsing of the PAC blob and creating the session_info into auth
This uses a single callback to handle the PAC from the DATA_BLOB format until it becomes a struct auth_session_info. This allows a seperation between the GSS acceptor code and the PAC interpretation code based on the supplied auth context. Andrew Bartlett Autobuild-User: Andrew Bartlett <abartlet@samba.org> Autobuild-Date: Thu Dec 29 01:10:59 CET 2011 on sn-devel-104
Diffstat (limited to 'source4/auth/auth.h')
-rw-r--r--source4/auth/auth.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/source4/auth/auth.h b/source4/auth/auth.h
index ff7a13c967..bb2cd570ed 100644
--- a/source4/auth/auth.h
+++ b/source4/auth/auth.h
@@ -55,6 +55,7 @@ struct auth_check_password_request;
struct auth4_context;
struct auth_session_info;
struct ldb_dn;
+struct smb_krb5_context;
struct auth_operations {
const char *name;
@@ -129,17 +130,20 @@ struct auth4_context {
NTSTATUS (*set_challenge)(struct auth4_context *auth_ctx, const uint8_t chal[8], const char *set_by);
- NTSTATUS (*get_user_info_dc_principal)(TALLOC_CTX *mem_ctx,
- struct auth4_context *auth_ctx,
- const char *principal,
- struct ldb_dn *user_dn,
- struct auth_user_info_dc **user_info_dc);
-
NTSTATUS (*generate_session_info)(TALLOC_CTX *mem_ctx,
struct auth4_context *auth_context,
struct auth_user_info_dc *user_info_dc,
uint32_t session_info_flags,
struct auth_session_info **session_info);
+
+ NTSTATUS (*generate_session_info_pac)(struct auth4_context *auth_ctx,
+ TALLOC_CTX *mem_ctx_out,
+ struct smb_krb5_context *smb_krb5_context,
+ DATA_BLOB *pac_blob,
+ const char *principal_name,
+ const struct tsocket_address *remote_address,
+ uint32_t session_info_flags,
+ struct auth_session_info **session_info);
};
/* this structure is used by backends to determine the size of some critical types */