summaryrefslogtreecommitdiff
path: root/source4/auth/credentials
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2005-12-05 03:20:40 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:47:02 -0500
commit61bd60957418b872688dc22ec41f7a7ec4f267b2 (patch)
tree33fdeea53b9aafa01b91a56ca24451e674767e49 /source4/auth/credentials
parent42f2bfbd9b13f0abec00d046f5e0b60fcaf343ef (diff)
downloadsamba-61bd60957418b872688dc22ec41f7a7ec4f267b2.tar.gz
samba-61bd60957418b872688dc22ec41f7a7ec4f267b2.tar.bz2
samba-61bd60957418b872688dc22ec41f7a7ec4f267b2.zip
r12060: Work towards allowing the credentials system to allow/deny certain
GENSEC mechansims. This will allow a machine join to an NT4 domain to avoid even trying kerberos, or a sensitive operation to require it. Andrew Bartlett (This used to be commit 11c7a89e523f85afd728d5e5f03bb084dc620244)
Diffstat (limited to 'source4/auth/credentials')
-rw-r--r--source4/auth/credentials/config.mk7
-rw-r--r--source4/auth/credentials/credentials.c1
-rw-r--r--source4/auth/credentials/credentials.h3
3 files changed, 8 insertions, 3 deletions
diff --git a/source4/auth/credentials/config.mk b/source4/auth/credentials/config.mk
index 5e3299784e..00d8319739 100644
--- a/source4/auth/credentials/config.mk
+++ b/source4/auth/credentials/config.mk
@@ -4,9 +4,10 @@
INIT_OBJ_FILES = credentials.o
ADD_OBJ_FILES = credentials_files.o \
credentials_krb5.o \
- credentials_ntlm.o
+ credentials_ntlm.o \
+ credentials_gensec.o
REQUIRED_SUBSYSTEMS = \
- HEIMDAL
-# End SUBSYSTEM GENSEC
+ HEIMDAL GENSEC
+# End SUBSYSTEM CREDENTIALS
#################################
diff --git a/source4/auth/credentials/credentials.c b/source4/auth/credentials/credentials.c
index 75c6795e73..22b7772182 100644
--- a/source4/auth/credentials/credentials.c
+++ b/source4/auth/credentials/credentials.c
@@ -55,6 +55,7 @@ struct cli_credentials *cli_credentials_init(TALLOC_CTX *mem_ctx)
cred->smb_krb5_context = NULL;
cred->salt_principal = NULL;
cred->machine_account = False;
+ cred->gensec_list = NULL;
return cred;
}
diff --git a/source4/auth/credentials/credentials.h b/source4/auth/credentials/credentials.h
index 81773aa70a..ec6f1aa619 100644
--- a/source4/auth/credentials/credentials.h
+++ b/source4/auth/credentials/credentials.h
@@ -91,4 +91,7 @@ struct cli_credentials {
/* Is this a machine account? */
BOOL machine_account;
+
+ /* A list of valid GENSEC mechanisms for use on this account */
+ struct gensec_security_ops **gensec_list;
};