summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2003-01-28 12:07:02 +0000
committerAndrew Bartlett <abartlet@samba.org>2003-01-28 12:07:02 +0000
commit1cba0a757970ffd8b81d61c88965010968ab3eff (patch)
treed776df92ed188a6818033b1dc1f1b3eadc22fe1e /source3/include
parent23265259508e2a89c0386608c5f034fac635ca62 (diff)
downloadsamba-1cba0a757970ffd8b81d61c88965010968ab3eff.tar.gz
samba-1cba0a757970ffd8b81d61c88965010968ab3eff.tar.bz2
samba-1cba0a757970ffd8b81d61c88965010968ab3eff.zip
Merge from HEAD:
- NTLMSSP over SPENGO (sesssion-setup-and-x) cleanup and code refactor. - also consequential changes to the NTLMSSP and SPNEGO parsing functions - and the client code that uses the same functions - Add ntlm_auth, a NTLMSSP authentication interface for use by applications like Squid and Apache. - also consquential changes to use common code for base64 encode/decode. - Winbind changes to support ntlm_auth (I don't want this program to need to read smb.conf, instead getting all it's details over the pipe). - nmbd changes for fstrcat() instead of fstrcpy(). Andrew Bartlett (This used to be commit fbb46da79cf322570a7e3318100c304bbf33409e)
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/asn_1.h4
-rw-r--r--source3/include/auth.h9
-rw-r--r--source3/include/ntlmssp.h19
3 files changed, 28 insertions, 4 deletions
diff --git a/source3/include/asn_1.h b/source3/include/asn_1.h
index 7783ab4c2f..9cd873c18a 100644
--- a/source3/include/asn_1.h
+++ b/source3/include/asn_1.h
@@ -55,4 +55,8 @@ typedef struct {
#define OID_KERBEROS5_OLD "1 2 840 48018 1 2 2"
#define OID_KERBEROS5 "1 2 840 113554 1 2 2"
+#define SPNGEO_NEG_RESULT_ACCEPT 0
+#define SPNGEO_NEG_RESULT_INCOMPLETE 1
+#define SPNGEO_NEG_RESULT_REJECT 2
+
#endif /* _ASN_1_H */
diff --git a/source3/include/auth.h b/source3/include/auth.h
index 846662d17c..e37f181082 100644
--- a/source3/include/auth.h
+++ b/source3/include/auth.h
@@ -149,4 +149,13 @@ struct auth_init_function_entry {
auth_init_function init;
};
+
+typedef struct auth_ntlmssp_state
+{
+ TALLOC_CTX *mem_ctx;
+ struct auth_context *auth_context;
+ struct auth_serversupplied_info *server_info;
+ struct ntlmssp_state *ntlmssp_state;
+} AUTH_NTLMSSP_STATE;
+
#endif /* _SMBAUTH_H_ */
diff --git a/source3/include/ntlmssp.h b/source3/include/ntlmssp.h
index 673be83532..79d0446a77 100644
--- a/source3/include/ntlmssp.h
+++ b/source3/include/ntlmssp.h
@@ -71,9 +71,20 @@ typedef struct ntlmssp_state
{
TALLOC_CTX *mem_ctx;
enum NTLMSSP_ROLE role;
- struct auth_context *auth_context;
- struct auth_serversupplied_info *server_info;
BOOL unicode;
- char *orig_user;
- char *orig_domain;
+ char *user;
+ char *domain;
+ char *workstation;
+ DATA_BLOB lm_resp;
+ DATA_BLOB nt_resp;
+ DATA_BLOB chal;
+ void *auth_context;
+ const uint8 *(*get_challenge)(struct ntlmssp_state *ntlmssp_state);
+ NTSTATUS (*check_password)(struct ntlmssp_state *ntlmssp_state);
+
+ const char *(*get_global_myname)(void);
+ const char *(*get_domain)(void);
+
+ int server_role;
} NTLMSSP_STATE;
+