Merge branch 'master' of /home/tridge/samba/git/combined
[Samba/aatanasov.git] / librpc / gen_ndr / drsblobs.h
blobf7570af16fc5edba27f80e29101a24f2ce72035d
1 /* header auto-generated by pidl */
3 #include <stdint.h>
5 #include "libcli/util/ntstatus.h"
7 #include "librpc/gen_ndr/drsuapi.h"
8 #include "librpc/gen_ndr/misc.h"
9 #include "librpc/gen_ndr/samr.h"
10 #include "librpc/gen_ndr/lsa.h"
11 #ifndef _HEADER_drsblobs
12 #define _HEADER_drsblobs
14 #define SUPPLEMENTAL_CREDENTIALS_PREFIX ( " " )
15 struct replPropertyMetaData1 {
16 enum drsuapi_DsAttributeId attid;
17 uint32_t version;
18 NTTIME originating_change_time;
19 struct GUID originating_invocation_id;
20 uint64_t originating_usn;
21 uint64_t local_usn;
24 struct replPropertyMetaDataCtr1 {
25 uint32_t count;
26 uint32_t reserved;
27 struct replPropertyMetaData1 *array;
30 union replPropertyMetaDataCtr {
31 struct replPropertyMetaDataCtr1 ctr1;/* [case] */
32 }/* [nodiscriminant] */;
34 struct replPropertyMetaDataBlob {
35 uint32_t version;
36 uint32_t reserved;
37 union replPropertyMetaDataCtr ctr;/* [switch_is(version)] */
38 }/* [public] */;
40 struct replUpToDateVectorCtr1 {
41 uint32_t count;
42 uint32_t reserved;
43 struct drsuapi_DsReplicaCursor *cursors;
46 struct replUpToDateVectorCtr2 {
47 uint32_t count;
48 uint32_t reserved;
49 struct drsuapi_DsReplicaCursor2 *cursors;
52 union replUpToDateVectorCtr {
53 struct replUpToDateVectorCtr1 ctr1;/* [case] */
54 struct replUpToDateVectorCtr2 ctr2;/* [case(2)] */
55 }/* [nodiscriminant] */;
57 struct replUpToDateVectorBlob {
58 uint32_t version;
59 uint32_t reserved;
60 union replUpToDateVectorCtr ctr;/* [switch_is(version)] */
61 }/* [public] */;
63 struct repsFromTo1OtherInfo {
64 uint32_t __dns_name_size;/* [value(strlen(dns_name)+1)] */
65 const char *dns_name;/* [charset(DOS)] */
66 }/* [gensize,public] */;
68 struct repsFromTo1 {
69 uint32_t blobsize;/* [value(ndr_size_repsFromTo1(this,ndr->iconv_convenience,ndr->flags)+8)] */
70 uint32_t consecutive_sync_failures;
71 NTTIME last_success;
72 NTTIME last_attempt;
73 WERROR result_last_attempt;
74 struct repsFromTo1OtherInfo *other_info;/* [relative] */
75 uint32_t other_info_length;/* [value(ndr_size_repsFromTo1OtherInfo(other_info,ndr->iconv_convenience,ndr->flags))] */
76 uint32_t replica_flags;
77 uint8_t schedule[84];
78 uint32_t reserved;
79 struct drsuapi_DsReplicaHighWaterMark highwatermark;
80 struct GUID source_dsa_obj_guid;
81 struct GUID source_dsa_invocation_id;
82 struct GUID transport_guid;
83 }/* [gensize,public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
85 union repsFromTo {
86 struct repsFromTo1 ctr1;/* [case] */
87 }/* [nodiscriminant] */;
89 struct repsFromToBlob {
90 uint32_t version;
91 uint32_t reserved;
92 union repsFromTo ctr;/* [switch_is(version)] */
93 }/* [public] */;
95 struct partialAttributeSetCtr1 {
96 uint32_t count;
97 enum drsuapi_DsAttributeId *array;
100 union partialAttributeSetCtr {
101 struct partialAttributeSetCtr1 ctr1;/* [case] */
102 }/* [nodiscriminant] */;
104 struct partialAttributeSetBlob {
105 uint32_t version;
106 uint32_t reserved;
107 union partialAttributeSetCtr ctr;/* [switch_is(version)] */
108 }/* [public] */;
110 enum prefixMapVersion
111 #ifndef USE_UINT_ENUMS
113 PREFIX_MAP_VERSION_DSDB=(int)(0x44534442)
115 #else
116 { __donnot_use_enum_prefixMapVersion=0x7FFFFFFF}
117 #define PREFIX_MAP_VERSION_DSDB ( 0x44534442 )
118 #endif
121 union prefixMapCtr {
122 struct drsuapi_DsReplicaOIDMapping_Ctr dsdb;/* [case(PREFIX_MAP_VERSION_DSDB)] */
123 }/* [nodiscriminant] */;
125 struct prefixMapBlob {
126 enum prefixMapVersion version;
127 uint32_t reserved;
128 union prefixMapCtr ctr;/* [switch_is(version)] */
129 }/* [public] */;
131 union ldapControlDirSyncExtra {
132 struct replUpToDateVectorBlob uptodateness_vector;/* [default] */
133 }/* [gensize,nodiscriminant] */;
135 struct ldapControlDirSyncBlob {
136 uint32_t u1;/* [value(3)] */
137 NTTIME time;
138 uint32_t u2;
139 uint32_t u3;
140 uint32_t extra_length;/* [value(ndr_size_ldapControlDirSyncExtra(&extra,extra.uptodateness_vector.version,ndr->iconv_convenience,0))] */
141 struct drsuapi_DsReplicaHighWaterMark highwatermark;
142 struct GUID guid1;
143 union ldapControlDirSyncExtra extra;/* [switch_is(extra_length)] */
146 struct ldapControlDirSyncCookie {
147 const char *msds;/* [value("MSDS"),charset(DOS)] */
148 struct ldapControlDirSyncBlob blob;/* [subcontext(0)] */
149 }/* [relative_base,public] */;
151 struct supplementalCredentialsPackage {
152 uint16_t name_len;/* [value(2*strlen_m(name))] */
153 uint16_t data_len;/* [value(strlen(data))] */
154 uint16_t reserved;
155 const char *name;/* [charset(UTF16)] */
156 const char *data;/* [charset(DOS)] */
159 enum supplementalCredentialsSignature
160 #ifndef USE_UINT_ENUMS
162 SUPPLEMENTAL_CREDENTIALS_SIGNATURE=(int)(0x0050)
164 #else
165 { __donnot_use_enum_supplementalCredentialsSignature=0x7FFFFFFF}
166 #define SUPPLEMENTAL_CREDENTIALS_SIGNATURE ( 0x0050 )
167 #endif
170 struct supplementalCredentialsSubBlob {
171 const char *prefix;/* [value(SUPPLEMENTAL_CREDENTIALS_PREFIX),charset(UTF16)] */
172 enum supplementalCredentialsSignature signature;/* [value(SUPPLEMENTAL_CREDENTIALS_SIGNATURE)] */
173 uint16_t num_packages;
174 struct supplementalCredentialsPackage *packages;
175 }/* [gensize] */;
177 struct supplementalCredentialsBlob {
178 uint32_t unknown1;/* [value(0)] */
179 uint32_t __ndr_size;/* [value(ndr_size_supplementalCredentialsSubBlob(&sub,ndr->iconv_convenience,ndr->flags))] */
180 uint32_t unknown2;/* [value(0)] */
181 struct supplementalCredentialsSubBlob sub;/* [subcontext_size(__ndr_size),subcontext(0)] */
182 uint8_t unknown3;/* [value(0)] */
183 }/* [public] */;
185 struct package_PackagesBlob {
186 const char ** names;/* [flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
187 }/* [public] */;
189 struct package_PrimaryKerberosString {
190 uint16_t length;/* [value(2*strlen_m(string))] */
191 uint16_t size;/* [value(2*strlen_m(string))] */
192 const char * string;/* [relative,subcontext_size(size),subcontext(0),flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
195 struct package_PrimaryKerberosKey3 {
196 uint16_t reserved1;/* [value(0)] */
197 uint16_t reserved2;/* [value(0)] */
198 uint32_t reserved3;/* [value(0)] */
199 uint32_t keytype;
200 uint32_t value_len;/* [value((value?value->length:0))] */
201 DATA_BLOB *value;/* [relative,subcontext_size(value_len),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
204 struct package_PrimaryKerberosCtr3 {
205 uint16_t num_keys;
206 uint16_t num_old_keys;
207 struct package_PrimaryKerberosString salt;
208 struct package_PrimaryKerberosKey3 *keys;
209 struct package_PrimaryKerberosKey3 *old_keys;
210 uint32_t padding1;/* [value(0)] */
211 uint32_t padding2;/* [value(0)] */
212 uint32_t padding3;/* [value(0)] */
213 uint32_t padding4;/* [value(0)] */
214 uint32_t padding5;/* [value(0)] */
217 struct package_PrimaryKerberosKey4 {
218 uint16_t reserved1;/* [value(0)] */
219 uint16_t reserved2;/* [value(0)] */
220 uint32_t reserved3;/* [value(0)] */
221 uint32_t iteration_count;
222 uint32_t keytype;
223 uint32_t value_len;/* [value((value?value->length:0))] */
224 DATA_BLOB *value;/* [relative,subcontext_size(value_len),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
227 struct package_PrimaryKerberosCtr4 {
228 uint16_t num_keys;
229 uint16_t num_service_keys;/* [value(0)] */
230 uint16_t num_old_keys;
231 uint16_t num_older_keys;
232 struct package_PrimaryKerberosString salt;
233 uint32_t default_iteration_count;
234 struct package_PrimaryKerberosKey4 *keys;
235 struct package_PrimaryKerberosKey4 *service_keys;
236 struct package_PrimaryKerberosKey4 *old_keys;
237 struct package_PrimaryKerberosKey4 *older_keys;
240 union package_PrimaryKerberosCtr {
241 struct package_PrimaryKerberosCtr3 ctr3;/* [case(3)] */
242 struct package_PrimaryKerberosCtr4 ctr4;/* [case(4)] */
243 }/* [nodiscriminant] */;
245 struct package_PrimaryKerberosBlob {
246 uint16_t version;
247 uint16_t flags;/* [value(0)] */
248 union package_PrimaryKerberosCtr ctr;/* [switch_is(version)] */
249 }/* [public] */;
251 struct package_PrimaryCLEARTEXTBlob {
252 DATA_BLOB cleartext;/* [flag(LIBNDR_FLAG_REMAINING)] */
253 }/* [public] */;
255 struct package_PrimaryWDigestHash {
256 uint8_t hash[16];
257 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
259 struct package_PrimaryWDigestBlob {
260 uint16_t unknown1;/* [value(0x31)] */
261 uint8_t unknown2;/* [value(0x01)] */
262 uint8_t num_hashes;
263 uint32_t unknown3;/* [value(0)] */
264 uint64_t uuknown4;/* [value(0)] */
265 struct package_PrimaryWDigestHash *hashes;
266 }/* [public] */;
268 struct AuthInfoNone {
269 uint32_t size;/* [value(0)] */
272 struct AuthInfoNT4Owf {
273 uint32_t size;/* [value(16)] */
274 struct samr_Password password;
277 struct AuthInfoClear {
278 uint32_t size;
279 uint8_t *password;
282 struct AuthInfoVersion {
283 uint32_t size;/* [value(4)] */
284 uint32_t version;
287 union AuthInfo {
288 struct AuthInfoNone none;/* [case(TRUST_AUTH_TYPE_NONE)] */
289 struct AuthInfoNT4Owf nt4owf;/* [case(TRUST_AUTH_TYPE_NT4OWF)] */
290 struct AuthInfoClear clear;/* [case(TRUST_AUTH_TYPE_CLEAR)] */
291 struct AuthInfoVersion version;/* [case(TRUST_AUTH_TYPE_VERSION)] */
292 }/* [nodiscriminant] */;
294 struct AuthenticationInformation {
295 NTTIME LastUpdateTime;
296 enum lsa_TrustAuthType AuthType;
297 union AuthInfo AuthInfo;/* [switch_is(AuthType)] */
298 DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN4)] */
299 }/* [public] */;
301 struct AuthenticationInformationArray {
302 struct AuthenticationInformation *array;/* [size_is] */
303 }/* [noprint,nopush,nopull] */;
305 struct trustAuthInOutBlob {
306 uint32_t count;
307 struct AuthenticationInformationArray *current;/* [relative] */
308 struct AuthenticationInformationArray *previous;/* [relative] */
309 }/* [noprint,gensize,nopull,public,nopush] */;
311 struct trustCurrentPasswords {
312 uint32_t count;
313 struct AuthenticationInformation **current;/* [relative] */
314 }/* [gensize,public] */;
316 struct trustDomainPasswords {
317 uint8_t confounder[512];
318 struct trustCurrentPasswords outgoing;/* [subcontext_size(outgoing_size),subcontext(0)] */
319 struct trustCurrentPasswords incoming;/* [subcontext_size(incoming_size),subcontext(0)] */
320 uint32_t outgoing_size;/* [value(ndr_size_trustCurrentPasswords(&outgoing,ndr->iconv_convenience,ndr->flags))] */
321 uint32_t incoming_size;/* [value(ndr_size_trustCurrentPasswords(&incoming,ndr->iconv_convenience,ndr->flags))] */
322 }/* [public,nopull] */;
324 struct DsCompressedChunk {
325 uint32_t marker;
326 DATA_BLOB data;
327 }/* [public] */;
329 struct ExtendedErrorAString {
330 uint16_t __size;
331 const char *string;/* [unique,charset(DOS),size_is(__size)] */
334 struct ExtendedErrorUString {
335 uint16_t __size;
336 const char *string;/* [unique,charset(UTF16),size_is(__size)] */
339 struct ExtendedErrorBlob {
340 uint16_t length;
341 uint8_t *data;/* [unique,size_is(length)] */
344 enum ExtendedErrorComputerNamePresent
345 #ifndef USE_UINT_ENUMS
347 EXTENDED_ERROR_COMPUTER_NAME_PRESENT=(int)(1),
348 EXTENDED_ERROR_COMPUTER_NAME_NOT_PRESENT=(int)(2)
350 #else
351 { __donnot_use_enum_ExtendedErrorComputerNamePresent=0x7FFFFFFF}
352 #define EXTENDED_ERROR_COMPUTER_NAME_PRESENT ( 1 )
353 #define EXTENDED_ERROR_COMPUTER_NAME_NOT_PRESENT ( 2 )
354 #endif
357 union ExtendedErrorComputerNameU {
358 struct ExtendedErrorUString name;/* [case(EXTENDED_ERROR_COMPUTER_NAME_PRESENT)] */
359 }/* [switch_type(ExtendedErrorComputerNamePresent)] */;
361 struct ExtendedErrorComputerName {
362 enum ExtendedErrorComputerNamePresent present;
363 union ExtendedErrorComputerNameU n;/* [switch_is(present)] */
366 enum ExtendedErrorParamType
367 #ifndef USE_UINT_ENUMS
369 EXTENDED_ERROR_PARAM_TYPE_ASCII_STRING=(int)(1),
370 EXTENDED_ERROR_PARAM_TYPE_UNICODE_STRING=(int)(2),
371 EXTENDED_ERROR_PARAM_TYPE_UINT32=(int)(3),
372 EXTENDED_ERROR_PARAM_TYPE_UINT16=(int)(4),
373 EXTENDED_ERROR_PARAM_TYPE_UINT64=(int)(5),
374 EXTENDED_ERROR_PARAM_TYPE_NONE=(int)(6),
375 EXTENDED_ERROR_PARAM_TYPE_BLOB=(int)(7)
377 #else
378 { __donnot_use_enum_ExtendedErrorParamType=0x7FFFFFFF}
379 #define EXTENDED_ERROR_PARAM_TYPE_ASCII_STRING ( 1 )
380 #define EXTENDED_ERROR_PARAM_TYPE_UNICODE_STRING ( 2 )
381 #define EXTENDED_ERROR_PARAM_TYPE_UINT32 ( 3 )
382 #define EXTENDED_ERROR_PARAM_TYPE_UINT16 ( 4 )
383 #define EXTENDED_ERROR_PARAM_TYPE_UINT64 ( 5 )
384 #define EXTENDED_ERROR_PARAM_TYPE_NONE ( 6 )
385 #define EXTENDED_ERROR_PARAM_TYPE_BLOB ( 7 )
386 #endif
389 union ExtendedErrorParamU {
390 struct ExtendedErrorAString a_string;/* [case(EXTENDED_ERROR_PARAM_TYPE_ASCII_STRING)] */
391 struct ExtendedErrorUString u_string;/* [case(EXTENDED_ERROR_PARAM_TYPE_UNICODE_STRING)] */
392 uint32_t uint32;/* [case(EXTENDED_ERROR_PARAM_TYPE_UINT32)] */
393 uint16_t uint16;/* [case(EXTENDED_ERROR_PARAM_TYPE_UINT16)] */
394 uint64_t uint64;/* [case(EXTENDED_ERROR_PARAM_TYPE_UINT64)] */
395 struct ExtendedErrorBlob blob;/* [case(EXTENDED_ERROR_PARAM_TYPE_BLOB)] */
396 }/* [switch_type(ExtendedErrorParamType)] */;
398 struct ExtendedErrorParam {
399 enum ExtendedErrorParamType type;
400 union ExtendedErrorParamU p;/* [switch_is(type)] */
403 struct ExtendedErrorInfo {
404 struct ExtendedErrorInfo *next;/* [unique] */
405 struct ExtendedErrorComputerName computer_name;
406 uint64_t pid;
407 NTTIME time;
408 uint32_t generating_component;
409 WERROR status;
410 uint16_t detection_location;
411 uint16_t flags;
412 uint16_t num_params;
413 struct ExtendedErrorParam *params;/* [size_is(num_params)] */
414 }/* [public] */;
416 struct ExtendedErrorInfoPtr {
417 struct ExtendedErrorInfo *info;/* [unique] */
421 struct decode_replPropertyMetaData {
422 struct {
423 struct replPropertyMetaDataBlob blob;
424 } in;
429 struct decode_replUpToDateVector {
430 struct {
431 struct replUpToDateVectorBlob blob;
432 } in;
437 struct decode_repsFromTo {
438 struct {
439 struct repsFromToBlob blob;
440 } in;
445 struct decode_partialAttributeSet {
446 struct {
447 struct partialAttributeSetBlob blob;
448 } in;
453 struct decode_prefixMap {
454 struct {
455 struct prefixMapBlob blob;
456 } in;
461 struct decode_ldapControlDirSync {
462 struct {
463 struct ldapControlDirSyncCookie cookie;
464 } in;
469 struct decode_supplementalCredentials {
470 struct {
471 struct supplementalCredentialsBlob blob;
472 } in;
477 struct decode_Packages {
478 struct {
479 struct package_PackagesBlob blob;
480 } in;
485 struct decode_PrimaryKerberos {
486 struct {
487 struct package_PrimaryKerberosBlob blob;
488 } in;
493 struct decode_PrimaryCLEARTEXT {
494 struct {
495 struct package_PrimaryCLEARTEXTBlob blob;
496 } in;
501 struct decode_PrimaryWDigest {
502 struct {
503 struct package_PrimaryWDigestBlob blob;
504 } in;
509 struct decode_trustAuthInOut {
510 struct {
511 struct trustAuthInOutBlob blob;
512 } in;
517 struct decode_trustDomainPasswords {
518 struct {
519 struct trustDomainPasswords blob;
520 } in;
525 struct decode_ExtendedErrorInfo {
526 struct {
527 struct ExtendedErrorInfoPtr ptr;/* [subcontext(0xFFFFFC01)] */
528 } in;
532 #endif /* _HEADER_drsblobs */