summaryrefslogtreecommitdiff
path: root/librpc/gen_ndr/schannel.h
blob: c07212fea6cc96d089880caba90c5b61a8ef6f3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/* header auto-generated by pidl */

#include <stdint.h>

#include "libcli/util/ntstatus.h"

#include "librpc/gen_ndr/netlogon.h"
#include "librpc/gen_ndr/nbt.h"
#ifndef _HEADER_schannel
#define _HEADER_schannel

struct netlogon_creds_CredentialState {
	uint32_t negotiate_flags;
	uint8_t session_key[16];
	uint32_t sequence;
	struct netr_Credential seed;
	struct netr_Credential client;
	struct netr_Credential server;
	enum netr_SchannelType secure_channel_type;
	const char *computer_name;/* [charset(UTF8)] */
	const char *account_name;/* [charset(UTF8)] */
	struct dom_sid *sid;/* [unique] */
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;

enum NL_AUTH_MESSAGE_TYPE
#ifndef USE_UINT_ENUMS
 {
	NL_NEGOTIATE_REQUEST=0x00000000,
	NL_NEGOTIATE_RESPONSE=0x00000001
}
#else
 { __donnot_use_enum_NL_AUTH_MESSAGE_TYPE=0x7FFFFFFF}
#define NL_NEGOTIATE_REQUEST ( 0x00000000 )
#define NL_NEGOTIATE_RESPONSE ( 0x00000001 )
#endif
;

/* bitmap NL_AUTH_MESSAGE_FLAGS */
#define NL_FLAG_OEM_NETBIOS_DOMAIN_NAME ( 0x00000001 )
#define NL_FLAG_OEM_NETBIOS_COMPUTER_NAME ( 0x00000002 )
#define NL_FLAG_UTF8_DNS_DOMAIN_NAME ( 0x00000004 )
#define NL_FLAG_UTF8_DNS_HOST_NAME ( 0x00000008 )
#define NL_FLAG_UTF8_NETBIOS_COMPUTER_NAME ( 0x00000010 )

union NL_AUTH_MESSAGE_BUFFER {
	const char * a;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM),case(NL_FLAG_OEM_NETBIOS_DOMAIN_NAME)] */
	const char * u;/* [case(NL_FLAG_UTF8_DNS_DOMAIN_NAME)] */
}/* [noprint,nodiscriminant,public] */;

union NL_AUTH_MESSAGE_BUFFER_REPLY {
	uint32_t dummy;/* [case(NL_NEGOTIATE_RESPONSE)] */
}/* [noprint,nodiscriminant,public] */;

struct NL_AUTH_MESSAGE {
	enum NL_AUTH_MESSAGE_TYPE MessageType;
	uint32_t Flags;
	union NL_AUTH_MESSAGE_BUFFER oem_netbios_domain;/* [switch_is(Flags&NL_FLAG_OEM_NETBIOS_DOMAIN_NAME)] */
	union NL_AUTH_MESSAGE_BUFFER oem_netbios_computer;/* [switch_is(Flags&NL_FLAG_OEM_NETBIOS_COMPUTER_NAME)] */
	union NL_AUTH_MESSAGE_BUFFER utf8_dns_domain;/* [switch_is(Flags&NL_FLAG_UTF8_DNS_DOMAIN_NAME)] */
	union NL_AUTH_MESSAGE_BUFFER utf8_dns_host;/* [switch_is(Flags&NL_FLAG_UTF8_DNS_HOST_NAME)] */
	union NL_AUTH_MESSAGE_BUFFER utf8_netbios_computer;/* [switch_is(Flags&NL_FLAG_UTF8_NETBIOS_COMPUTER_NAME)] */
	union NL_AUTH_MESSAGE_BUFFER_REPLY Buffer;/* [switch_is(MessageType&NL_NEGOTIATE_RESPONSE)] */
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;

enum NL_SIGNATURE_ALGORITHM
#ifndef USE_UINT_ENUMS
 {
	NL_SIGN_HMAC_SHA256=0x0013,
	NL_SIGN_HMAC_MD5=0x0077
}
#else
 { __donnot_use_enum_NL_SIGNATURE_ALGORITHM=0x7FFFFFFF}
#define NL_SIGN_HMAC_SHA256 ( 0x0013 )
#define NL_SIGN_HMAC_MD5 ( 0x0077 )
#endif
;

enum NL_SEAL_ALGORITHM
#ifndef USE_UINT_ENUMS
 {
	NL_SEAL_AES128=0x001A,
	NL_SEAL_RC4=0x007A,
	NL_SEAL_NONE=0xFFFF
}
#else
 { __donnot_use_enum_NL_SEAL_ALGORITHM=0x7FFFFFFF}
#define NL_SEAL_AES128 ( 0x001A )
#define NL_SEAL_RC4 ( 0x007A )
#define NL_SEAL_NONE ( 0xFFFF )
#endif
;

struct NL_AUTH_SIGNATURE {
	enum NL_SIGNATURE_ALGORITHM SignatureAlgorithm;/* [value(NL_SIGN_HMAC_MD5)] */
	enum NL_SEAL_ALGORITHM SealAlgorithm;
	uint16_t Pad;
	uint16_t Flags;
	uint8_t SequenceNumber[8];
	uint8_t Checksum[8];
	uint8_t Confounder[8];
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;

struct NL_AUTH_SHA2_SIGNATURE {
	enum NL_SIGNATURE_ALGORITHM SignatureAlgorithm;/* [value(NL_SIGN_HMAC_SHA256)] */
	enum NL_SEAL_ALGORITHM SealAlgorithm;
	uint16_t Pad;
	uint16_t Flags;
	uint8_t SequenceNumber[8];
	uint8_t Checksum[32];
	uint8_t Confounder[8];
}/* [public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;

#endif /* _HEADER_schannel */