summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2012-02-03 16:14:42 +1100
committerAndrew Bartlett <abartlet@samba.org>2012-02-24 11:23:18 +1100
commit8a9b6fe26dc347afd6dc17570354e0af391b351d (patch)
treeb53bed5dc786897fdca800b84ad2eba6afd5fe3a /source3/include
parentaed0735862f9517c49918bb4e4b444427d924b2e (diff)
downloadsamba-8a9b6fe26dc347afd6dc17570354e0af391b351d.tar.gz
samba-8a9b6fe26dc347afd6dc17570354e0af391b351d.tar.bz2
samba-8a9b6fe26dc347afd6dc17570354e0af391b351d.zip
s3-auth: Add a way to get an auth4_context from the auth stack
This will allow us to use the same layer that auth_ntlmssp does in the non-SPNEGO session setup, which will in turn make the authentication code more consistent in the AD server case. Andrew Bartlett
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/auth.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/source3/include/auth.h b/source3/include/auth.h
index 5fae94ca84..894b7dff81 100644
--- a/source3/include/auth.h
+++ b/source3/include/auth.h
@@ -69,6 +69,9 @@ struct auth_serversupplied_info {
typedef NTSTATUS (*prepare_gensec_fn)(TALLOC_CTX *mem_ctx,
struct gensec_security **gensec_context);
+typedef NTSTATUS (*make_auth4_context_fn)(TALLOC_CTX *mem_ctx,
+ struct auth4_context **auth4_context);
+
struct auth_context {
DATA_BLOB challenge;
@@ -88,6 +91,7 @@ struct auth_context {
struct auth_serversupplied_info **server_info);
prepare_gensec_fn prepare_gensec;
+ make_auth4_context_fn make_auth4_context;
};
typedef struct auth_methods
@@ -109,8 +113,9 @@ typedef struct auth_methods
void **my_private_data,
TALLOC_CTX *mem_ctx);
- /* Optional methods allowing this module to provide a way to get a gensec context */
+ /* Optional methods allowing this module to provide a way to get a gensec context and an auth4_context */
prepare_gensec_fn prepare_gensec;
+ make_auth4_context_fn make_auth4_context;
/* Used to keep tabs on things like the cli for SMB server authentication */
void *private_data;