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