Changeset 745 for trunk/server/source3/include/auth.h
- Timestamp:
- Nov 27, 2012, 4:43:17 PM (13 years ago)
- Location:
- trunk/server
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server
- Property svn:mergeinfo changed
/vendor/current merged: 581,587,591,594,597,600,615,618,740
- Property svn:mergeinfo changed
-
trunk/server/source3/include/auth.h
r414 r745 20 20 */ 21 21 22 typedef struct auth_usersupplied_info { 23 DATA_BLOB lm_resp; 24 DATA_BLOB nt_resp; 25 DATA_BLOB lm_interactive_pwd; 26 DATA_BLOB nt_interactive_pwd; 27 DATA_BLOB plaintext_password; 22 #include "../auth/common_auth.h" 28 23 29 bool encrypted; 24 struct extra_auth_info { 25 struct dom_sid user_sid; 26 struct dom_sid pgid_sid; 27 }; 30 28 31 bool was_mapped; /* Did the username map actually match? */ 32 char *client_domain; /* domain name string */ 33 char *domain; /* domain name after mapping */ 34 char *internal_username; /* username after mapping */ 35 char *smb_name; /* username before mapping */ 36 char *wksta_name; /* workstation name (netbios calling 37 * name) unicode string */ 29 struct auth_serversupplied_info { 30 bool guest; 31 bool system; 38 32 39 uint32 logon_parameters; 40 41 } auth_usersupplied_info; 42 43 typedef struct auth_serversupplied_info { 44 bool guest; 45 46 DOM_SID *sids; /* These SIDs are preliminary between 47 check_ntlm_password and the token creation. */ 48 size_t num_sids; 49 50 struct unix_user_token utok; 33 struct security_unix_token utok; 51 34 52 35 /* NT group information taken from the info3 structure */ 53 36 54 NT_USER_TOKEN *ptok; 37 struct security_token *security_token; 38 39 /* This is the final session key, as used by SMB signing, and 40 * (truncated to 16 bytes) encryption on the SAMR and LSA pipes 41 * when over ncacn_np. 42 * It is calculated by NTLMSSP from the session key in the info3, 43 * and is set from the Kerberos session key using 44 * krb5_auth_con_getremotesubkey(). 45 * 46 * Bottom line, it is not the same as the session keys in info3. 47 */ 55 48 56 49 DATA_BLOB user_session_key; 57 50 DATA_BLOB lm_session_key; 58 51 59 char *login_server; /* which server authorized the login? */ 52 struct netr_SamInfo3 *info3; 60 53 61 struct samu *sam_account; 62 63 void *pam_handle; 54 /* this structure is filled *only* in pathological cases where the user 55 * sid or the primary group sid are not sids of the domain. Normally 56 * this happens only for unix accounts that have unix domain sids. 57 * This is checked only when info3.rid and/or info3.primary_gid are set 58 * to the special invalid value of 0xFFFFFFFF */ 59 struct extra_auth_info extra; 64 60 65 61 /* … … 78 74 */ 79 75 char *sanitized_username; 80 } auth_serversupplied_info;76 }; 81 77 82 78 struct auth_context { … … 92 88 struct auth_methods *auth_method_list; 93 89 94 TALLOC_CTX *mem_ctx; 95 void (*get_ntlm_challenge)(struct auth_context *auth_context, 96 uint8_t chal[8]); 90 NTSTATUS (*get_ntlm_challenge)(struct auth_context *auth_context, 91 uint8_t chal[8]); 97 92 NTSTATUS (*check_ntlm_password)(const struct auth_context *auth_context, 98 93 const struct auth_usersupplied_info *user_info, 99 94 struct auth_serversupplied_info **server_info); 100 95 NTSTATUS (*nt_status_squash)(NTSTATUS nt_status); 101 void (*free)(struct auth_context **auth_context);102 96 }; 103 97 … … 111 105 TALLOC_CTX *mem_ctx, 112 106 const struct auth_usersupplied_info *user_info, 113 auth_serversupplied_info **server_info);107 struct auth_serversupplied_info **server_info); 114 108 115 109 /* If you are using this interface, then you are probably … … 137 131 }; 138 132 139 typedef struct auth_ntlmssp_state { 140 TALLOC_CTX *mem_ctx; 141 struct auth_context *auth_context; 142 struct auth_serversupplied_info *server_info; 143 struct ntlmssp_state *ntlmssp_state; 144 } AUTH_NTLMSSP_STATE; 133 struct auth_ntlmssp_state; 145 134 146 135 /* Changed from 1 -> 2 to add the logon_parameters field. */ 147 #define AUTH_INTERFACE_VERSION 2 136 /* Changed from 2 -> 3 when we reworked many auth structures to use IDL or be in common with Samba4 */ 137 #define AUTH_INTERFACE_VERSION 3 138 139 #include "auth/proto.h" 148 140 149 141 #endif /* _SMBAUTH_H_ */
Note:
See TracChangeset
for help on using the changeset viewer.