Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
ntlmssp.h File Reference

Go to the source code of this file.

Data Structures

struct  _SECURITY_BUFFER
 
struct  _NEGOTIATE_MESSAGE
 
struct  _CHALLENGE_MESSAGE
 
struct  _AUTHENTICATE_MESSAGE
 

Macros

#define NTLMSSP_SIGNATURE   "NTLMSSP"
 
#define NtLmNegotiate   cpu_to_le32(1)
 
#define NtLmChallenge   cpu_to_le32(2)
 
#define NtLmAuthenticate   cpu_to_le32(3)
 
#define UnknownMessage   cpu_to_le32(8)
 
#define NTLMSSP_NEGOTIATE_UNICODE   0x01 /* Text strings are unicode */
 
#define NTLMSSP_NEGOTIATE_OEM   0x02 /* Text strings are in OEM */
 
#define NTLMSSP_REQUEST_TARGET   0x04 /* Srv returns its auth realm */
 
#define NTLMSSP_NEGOTIATE_SIGN   0x0010 /* Request signing capability */
 
#define NTLMSSP_NEGOTIATE_SEAL   0x0020 /* Request confidentiality */
 
#define NTLMSSP_NEGOTIATE_DGRAM   0x0040
 
#define NTLMSSP_NEGOTIATE_LM_KEY   0x0080 /* Use LM session key */
 
#define NTLMSSP_NEGOTIATE_NTLM   0x0200 /* NTLM authentication */
 
#define NTLMSSP_NEGOTIATE_NT_ONLY   0x0400 /* Lanman not allowed */
 
#define NTLMSSP_ANONYMOUS   0x0800
 
#define NTLMSSP_NEGOTIATE_DOMAIN_SUPPLIED   0x1000 /* reserved6 */
 
#define NTLMSSP_NEGOTIATE_WORKSTATION_SUPPLIED   0x2000
 
#define NTLMSSP_NEGOTIATE_LOCAL_CALL   0x4000 /* client/server same machine */
 
#define NTLMSSP_NEGOTIATE_ALWAYS_SIGN   0x8000 /* Sign. All security levels */
 
#define NTLMSSP_TARGET_TYPE_DOMAIN   0x10000
 
#define NTLMSSP_TARGET_TYPE_SERVER   0x20000
 
#define NTLMSSP_TARGET_TYPE_SHARE   0x40000
 
#define NTLMSSP_NEGOTIATE_EXTENDED_SEC   0x80000 /* NB:not related to NTLMv2 pwd*/
 
#define NTLMSSP_NEGOTIATE_IDENTIFY   0x100000
 
#define NTLMSSP_REQUEST_ACCEPT_RESP   0x200000 /* reserved5 */
 
#define NTLMSSP_REQUEST_NON_NT_KEY   0x400000
 
#define NTLMSSP_NEGOTIATE_TARGET_INFO   0x800000
 
#define NTLMSSP_NEGOTIATE_VERSION   0x2000000 /* we do not set */
 
#define NTLMSSP_NEGOTIATE_128   0x20000000
 
#define NTLMSSP_NEGOTIATE_KEY_XCH   0x40000000
 
#define NTLMSSP_NEGOTIATE_56   0x80000000
 

Enumerations

enum  av_field_type {
  NTLMSSP_AV_EOL = 0, NTLMSSP_AV_NB_COMPUTER_NAME, NTLMSSP_AV_NB_DOMAIN_NAME, NTLMSSP_AV_DNS_COMPUTER_NAME,
  NTLMSSP_AV_DNS_DOMAIN_NAME, NTLMSSP_AV_DNS_TREE_NAME, NTLMSSP_AV_FLAGS, NTLMSSP_AV_TIMESTAMP,
  NTLMSSP_AV_RESTRICTION, NTLMSSP_AV_TARGET_NAME, NTLMSSP_AV_CHANNEL_BINDINGS
}
 

Functions

struct _SECURITY_BUFFER __attribute__ ((packed)) SECURITY_BUFFER
 
int decode_ntlmssp_challenge (char *bcc_ptr, int blob_len, struct cifs_ses *ses)
 
void build_ntlmssp_negotiate_blob (unsigned char *pbuffer, struct cifs_ses *ses)
 
int build_ntlmssp_auth_blob (unsigned char *pbuffer, u16 *buflen, struct cifs_ses *ses, const struct nls_table *nls_cp)
 

Variables

__le16 Length
 
__le16 MaximumLength
 
__le32 BufferOffset
 
__u8 Signature [sizeof(NTLMSSP_SIGNATURE)]
 
__le32 MessageType
 
__le32 NegotiateFlags
 
SECURITY_BUFFER DomainName
 
SECURITY_BUFFER WorkstationName
 
char DomainString [0]
 
struct _NEGOTIATE_MESSAGEPNEGOTIATE_MESSAGE
 
SECURITY_BUFFER TargetName
 
__u8 Challenge [CIFS_CRYPTO_KEY_SIZE]
 
__u8 Reserved [8]
 
SECURITY_BUFFER TargetInfoArray
 
struct _CHALLENGE_MESSAGEPCHALLENGE_MESSAGE
 
SECURITY_BUFFER LmChallengeResponse
 
SECURITY_BUFFER NtChallengeResponse
 
SECURITY_BUFFER UserName
 
SECURITY_BUFFER SessionKey
 
char UserString [0]
 
struct _AUTHENTICATE_MESSAGEPAUTHENTICATE_MESSAGE
 

Macro Definition Documentation

#define NtLmAuthenticate   cpu_to_le32(3)

Definition at line 26 of file ntlmssp.h.

#define NtLmChallenge   cpu_to_le32(2)

Definition at line 25 of file ntlmssp.h.

#define NtLmNegotiate   cpu_to_le32(1)

Definition at line 24 of file ntlmssp.h.

#define NTLMSSP_ANONYMOUS   0x0800

Definition at line 41 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_128   0x20000000

Definition at line 60 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_56   0x80000000

Definition at line 62 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_ALWAYS_SIGN   0x8000 /* Sign. All security levels */

Definition at line 45 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_DGRAM   0x0040

Definition at line 36 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_DOMAIN_SUPPLIED   0x1000 /* reserved6 */

Definition at line 42 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_EXTENDED_SEC   0x80000 /* NB:not related to NTLMv2 pwd*/

Definition at line 49 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_IDENTIFY   0x100000

Definition at line 51 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_KEY_XCH   0x40000000

Definition at line 61 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_LM_KEY   0x0080 /* Use LM session key */

Definition at line 37 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_LOCAL_CALL   0x4000 /* client/server same machine */

Definition at line 44 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_NT_ONLY   0x0400 /* Lanman not allowed */

Definition at line 40 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_NTLM   0x0200 /* NTLM authentication */

Definition at line 39 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_OEM   0x02 /* Text strings are in OEM */

Definition at line 31 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_SEAL   0x0020 /* Request confidentiality */

Definition at line 35 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_SIGN   0x0010 /* Request signing capability */

Definition at line 34 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_TARGET_INFO   0x800000

Definition at line 54 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_UNICODE   0x01 /* Text strings are unicode */

Definition at line 30 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_VERSION   0x2000000 /* we do not set */

Definition at line 56 of file ntlmssp.h.

#define NTLMSSP_NEGOTIATE_WORKSTATION_SUPPLIED   0x2000

Definition at line 43 of file ntlmssp.h.

#define NTLMSSP_REQUEST_ACCEPT_RESP   0x200000 /* reserved5 */

Definition at line 52 of file ntlmssp.h.

#define NTLMSSP_REQUEST_NON_NT_KEY   0x400000

Definition at line 53 of file ntlmssp.h.

#define NTLMSSP_REQUEST_TARGET   0x04 /* Srv returns its auth realm */

Definition at line 32 of file ntlmssp.h.

#define NTLMSSP_SIGNATURE   "NTLMSSP"

Definition at line 22 of file ntlmssp.h.

#define NTLMSSP_TARGET_TYPE_DOMAIN   0x10000

Definition at line 46 of file ntlmssp.h.

#define NTLMSSP_TARGET_TYPE_SERVER   0x20000

Definition at line 47 of file ntlmssp.h.

#define NTLMSSP_TARGET_TYPE_SHARE   0x40000

Definition at line 48 of file ntlmssp.h.

#define UnknownMessage   cpu_to_le32(8)

Definition at line 27 of file ntlmssp.h.

Enumeration Type Documentation

Enumerator:
NTLMSSP_AV_EOL 
NTLMSSP_AV_NB_COMPUTER_NAME 
NTLMSSP_AV_NB_DOMAIN_NAME 
NTLMSSP_AV_DNS_COMPUTER_NAME 
NTLMSSP_AV_DNS_DOMAIN_NAME 
NTLMSSP_AV_DNS_TREE_NAME 
NTLMSSP_AV_FLAGS 
NTLMSSP_AV_TIMESTAMP 
NTLMSSP_AV_RESTRICTION 
NTLMSSP_AV_TARGET_NAME 
NTLMSSP_AV_CHANNEL_BINDINGS 

Definition at line 65 of file ntlmssp.h.

Function Documentation

struct _SECURITY_BUFFER __attribute__ ( (packed)  )
read

mcontroller : adapter info structure for old mimd_t apps

: base address : irq number : number of logical drives : pci bus : pci device : pci function : pci id : vendor id : slot number : unique id

Definition at line 171 of file esd_usb2.c.

int build_ntlmssp_auth_blob ( unsigned char pbuffer,
u16 buflen,
struct cifs_ses ses,
const struct nls_table nls_cp 
)

Definition at line 454 of file sess.c.

void build_ntlmssp_negotiate_blob ( unsigned char pbuffer,
struct cifs_ses ses 
)

Definition at line 418 of file sess.c.

int decode_ntlmssp_challenge ( char bcc_ptr,
int  blob_len,
struct cifs_ses ses 
)

Definition at line 367 of file sess.c.

Variable Documentation

__le32 BufferOffset

Definition at line 92 of file ntlmssp.h.

Definition at line 118 of file ntlmssp.h.

SECURITY_BUFFER DomainName

Definition at line 105 of file ntlmssp.h.

char DomainString[0]

Definition at line 109 of file ntlmssp.h.

__le16 Length

Definition at line 90 of file ntlmssp.h.

SECURITY_BUFFER LmChallengeResponse

Definition at line 131 of file ntlmssp.h.

__le16 MaximumLength

Definition at line 91 of file ntlmssp.h.

__le32 MessageType

Definition at line 103 of file ntlmssp.h.

__le32 NegotiateFlags

Definition at line 104 of file ntlmssp.h.

SECURITY_BUFFER NtChallengeResponse

Definition at line 132 of file ntlmssp.h.

struct _AUTHENTICATE_MESSAGE * PAUTHENTICATE_MESSAGE

Definition at line 128 of file ntlmssp.h.

struct _CHALLENGE_MESSAGE * PCHALLENGE_MESSAGE

Definition at line 113 of file ntlmssp.h.

struct _NEGOTIATE_MESSAGE * PNEGOTIATE_MESSAGE

Definition at line 101 of file ntlmssp.h.

__u8 Reserved[8]

Definition at line 119 of file ntlmssp.h.

SECURITY_BUFFER SessionKey

Definition at line 136 of file ntlmssp.h.

Definition at line 102 of file ntlmssp.h.

SECURITY_BUFFER TargetInfoArray

Definition at line 120 of file ntlmssp.h.

SECURITY_BUFFER TargetName

Definition at line 116 of file ntlmssp.h.

SECURITY_BUFFER UserName

Definition at line 134 of file ntlmssp.h.

char UserString[0]

Definition at line 140 of file ntlmssp.h.

SECURITY_BUFFER WorkstationName

Definition at line 106 of file ntlmssp.h.