1 /* header auto-generated by pidl */
5 #include "librpc/gen_ndr/drsuapi.h"
6 #include "librpc/gen_ndr/misc.h"
7 #ifndef _HEADER_drsblobs
8 #define _HEADER_drsblobs
10 #define SUPPLEMENTAL_CREDENTIALS_PREFIX ( " " )
11 enum drsuapi_DsAttributeId
;
13 struct replPropertyMetaData1
{
14 enum drsuapi_DsAttributeId attid
;
16 NTTIME originating_change_time
;
17 struct GUID originating_invocation_id
;
18 uint64_t originating_usn
;
22 struct replPropertyMetaDataCtr1
{
25 struct replPropertyMetaData1
*array
;
28 union replPropertyMetaDataCtr
{
29 struct replPropertyMetaDataCtr1 ctr1
;/* [case] */
30 }/* [nodiscriminant] */;
32 struct replPropertyMetaDataBlob
{
35 union replPropertyMetaDataCtr ctr
;/* [switch_is(version)] */
38 struct replUpToDateVectorCtr1
{
41 struct drsuapi_DsReplicaCursor
*cursors
;
44 struct replUpToDateVectorCtr2
{
47 struct drsuapi_DsReplicaCursor2
*cursors
;
50 union replUpToDateVectorCtr
{
51 struct replUpToDateVectorCtr1 ctr1
;/* [case] */
52 struct replUpToDateVectorCtr2 ctr2
;/* [case(2)] */
53 }/* [nodiscriminant] */;
55 struct replUpToDateVectorBlob
{
58 union replUpToDateVectorCtr ctr
;/* [switch_is(version)] */
61 struct repsFromTo1OtherInfo
{
62 uint32_t __dns_name_size
;/* [value(strlen(dns_name)+1)] */
63 const char *dns_name
;/* [charset(DOS)] */
64 }/* [gensize,public] */;
67 uint32_t blobsize
;/* [value(ndr_size_repsFromTo1(this,ndr->flags)+8)] */
68 uint32_t consecutive_sync_failures
;
71 WERROR result_last_attempt
;
72 struct repsFromTo1OtherInfo
*other_info
;/* [relative] */
73 uint32_t other_info_length
;/* [value(ndr_size_repsFromTo1OtherInfo(other_info,ndr->flags))] */
74 uint32_t replica_flags
;
77 struct drsuapi_DsReplicaHighWaterMark highwatermark
;
78 struct GUID source_dsa_obj_guid
;
79 struct GUID source_dsa_invocation_id
;
80 struct GUID transport_guid
;
81 }/* [gensize,public,flag(LIBNDR_PRINT_ARRAY_HEX)] */;
84 struct repsFromTo1 ctr1
;/* [case] */
85 }/* [nodiscriminant] */;
87 struct repsFromToBlob
{
90 union repsFromTo ctr
;/* [switch_is(version)] */
93 struct partialAttributeSetCtr1
{
95 enum drsuapi_DsAttributeId
*array
;
98 union partialAttributeSetCtr
{
99 struct partialAttributeSetCtr1 ctr1
;/* [case] */
100 }/* [nodiscriminant] */;
102 struct partialAttributeSetBlob
{
105 union partialAttributeSetCtr ctr
;/* [switch_is(version)] */
108 enum prefixMapVersion
109 #ifndef USE_UINT_ENUMS
111 PREFIX_MAP_VERSION_DSDB
=0x44534442
114 { __donnot_use_enum_prefixMapVersion
=0x7FFFFFFF}
115 #define PREFIX_MAP_VERSION_DSDB ( 0x44534442 )
120 struct drsuapi_DsReplicaOIDMapping_Ctr dsdb
;/* [case(PREFIX_MAP_VERSION_DSDB)] */
121 }/* [nodiscriminant] */;
123 struct prefixMapBlob
{
124 enum prefixMapVersion version
;
126 union prefixMapCtr ctr
;/* [switch_is(version)] */
129 union ldapControlDirSyncExtra
{
130 struct replUpToDateVectorBlob uptodateness_vector
;/* [default] */
131 }/* [gensize,nodiscriminant] */;
133 struct ldapControlDirSyncBlob
{
134 uint32_t u1
;/* [value(3)] */
138 uint32_t extra_length
;/* [value(ndr_size_ldapControlDirSyncExtra(&extra,extra.uptodateness_vector.version,0))] */
139 struct drsuapi_DsReplicaHighWaterMark highwatermark
;
141 union ldapControlDirSyncExtra extra
;/* [switch_is(extra_length)] */
144 struct ldapControlDirSyncCookie
{
145 const char *msds
;/* [value("MSDS"),charset(DOS)] */
146 struct ldapControlDirSyncBlob blob
;/* [subcontext(0)] */
147 }/* [relative_base,public] */;
149 struct supplementalCredentialsPackage
{
150 uint16_t name_len
;/* [value(2*strlen_m(name))] */
151 uint16_t data_len
;/* [value(strlen(data))] */
153 const char *name
;/* [charset(UTF16)] */
154 const char *data
;/* [charset(DOS)] */
157 enum supplementalCredentialsSignature
158 #ifndef USE_UINT_ENUMS
160 SUPPLEMENTAL_CREDENTIALS_SIGNATURE
=0x0050
163 { __donnot_use_enum_supplementalCredentialsSignature
=0x7FFFFFFF}
164 #define SUPPLEMENTAL_CREDENTIALS_SIGNATURE ( 0x0050 )
168 struct supplementalCredentialsSubBlob
{
169 const char *prefix
;/* [value(SUPPLEMENTAL_CREDENTIALS_PREFIX),charset(UTF16)] */
170 enum supplementalCredentialsSignature signature
;/* [value(SUPPLEMENTAL_CREDENTIALS_SIGNATURE)] */
171 uint16_t num_packages
;
172 struct supplementalCredentialsPackage
*packages
;
175 struct supplementalCredentialsBlob
{
176 uint32_t unknown1
;/* [value(0)] */
177 uint32_t __ndr_size
;/* [value(ndr_size_supplementalCredentialsSubBlob(&sub,ndr->flags))] */
178 uint32_t unknown2
;/* [value(0)] */
179 struct supplementalCredentialsSubBlob sub
;/* [subcontext_size(__ndr_size),subcontext(0)] */
180 uint8_t unknown3
;/* [value(0)] */
183 struct package_PackagesBlob
{
184 const char ** names
;/* [flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
187 struct package_PrimaryKerberosString
{
188 uint16_t length
;/* [value(2*strlen_m(string))] */
189 uint16_t size
;/* [value(2*strlen_m(string))] */
190 const char * string
;/* [relative,subcontext_size(size),subcontext(0),flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
193 struct package_PrimaryKerberosKey3
{
194 uint16_t reserved1
;/* [value(0)] */
195 uint16_t reserved2
;/* [value(0)] */
196 uint32_t reserved3
;/* [value(0)] */
198 uint32_t value_len
;/* [value((value?value->length:0))] */
199 DATA_BLOB
*value
;/* [relative,subcontext_size(value_len),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
202 struct package_PrimaryKerberosCtr3
{
204 uint16_t num_old_keys
;
205 struct package_PrimaryKerberosString salt
;
206 struct package_PrimaryKerberosKey3
*keys
;
207 struct package_PrimaryKerberosKey3
*old_keys
;
208 uint32_t padding1
;/* [value(0)] */
209 uint32_t padding2
;/* [value(0)] */
210 uint32_t padding3
;/* [value(0)] */
211 uint32_t padding4
;/* [value(0)] */
212 uint32_t padding5
;/* [value(0)] */
215 struct package_PrimaryKerberosKey4
{
216 uint16_t reserved1
;/* [value(0)] */
217 uint16_t reserved2
;/* [value(0)] */
218 uint32_t reserved3
;/* [value(0)] */
219 uint32_t iteration_count
;
221 uint32_t value_len
;/* [value((value?value->length:0))] */
222 DATA_BLOB
*value
;/* [relative,subcontext_size(value_len),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
225 struct package_PrimaryKerberosCtr4
{
227 uint16_t num_service_keys
;/* [value(0)] */
228 uint16_t num_old_keys
;
229 uint16_t num_older_keys
;
230 struct package_PrimaryKerberosString salt
;
231 uint32_t default_iteration_count
;
232 struct package_PrimaryKerberosKey4
*keys
;
233 struct package_PrimaryKerberosKey4
*service_keys
;
234 struct package_PrimaryKerberosKey4
*old_keys
;
235 struct package_PrimaryKerberosKey4
*older_keys
;
238 union package_PrimaryKerberosCtr
{
239 struct package_PrimaryKerberosCtr3 ctr3
;/* [case(3)] */
240 struct package_PrimaryKerberosCtr4 ctr4
;/* [case(4)] */
241 }/* [nodiscriminant] */;
243 struct package_PrimaryKerberosBlob
{
245 uint16_t flags
;/* [value(0)] */
246 union package_PrimaryKerberosCtr ctr
;/* [switch_is(version)] */
249 struct package_PrimaryCLEARTEXTBlob
{
250 const char * cleartext
;/* [flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
253 struct package_PrimaryWDigestHash
{
255 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
257 struct package_PrimaryWDigestBlob
{
258 uint16_t unknown1
;/* [value(0x31)] */
259 uint8_t unknown2
;/* [value(0x01)] */
261 uint32_t unknown3
;/* [value(0)] */
262 uint64_t uuknown4
;/* [value(0)] */
263 struct package_PrimaryWDigestHash
*hashes
;
266 struct trustAuthInOutSecret1
{
270 DATA_BLOB _pad
;/* [flag(LIBNDR_FLAG_ALIGN4)] */
273 struct trustAuthInOutCtr1
{
274 struct trustAuthInOutSecret1
*value1
;/* [relative] */
275 struct trustAuthInOutSecret1
*value2
;/* [relative] */
278 struct trustAuthInOutSecret2V1
{
286 DATA_BLOB _pad
;/* [flag(LIBNDR_FLAG_ALIGN4)] */
289 struct trustAuthInOutSecret2V2
{
296 DATA_BLOB _pad
;/* [flag(LIBNDR_FLAG_ALIGN4)] */
299 struct trustAuthInOutCtr2
{
300 struct trustAuthInOutSecret2V1
*value1
;/* [relative] */
301 struct trustAuthInOutSecret2V2
*value2
;/* [relative] */
304 union trustAuthInOutCtr
{
305 struct trustAuthInOutCtr1 ctr1
;/* [case] */
306 struct trustAuthInOutCtr2 ctr2
;/* [case(2)] */
307 }/* [nodiscriminant] */;
309 struct trustAuthInOutBlob
{
311 union trustAuthInOutCtr ctr
;/* [switch_is(version)] */
314 struct DsCompressedChunk
{
319 struct DsCompressedBlob
{
320 struct DsCompressedChunk chunks
[5];
324 struct decode_replPropertyMetaData
{
326 struct replPropertyMetaDataBlob blob
;
332 struct decode_replUpToDateVector
{
334 struct replUpToDateVectorBlob blob
;
340 struct decode_repsFromTo
{
342 struct repsFromToBlob blob
;
348 struct decode_partialAttributeSet
{
350 struct partialAttributeSetBlob blob
;
356 struct decode_prefixMap
{
358 struct prefixMapBlob blob
;
364 struct decode_ldapControlDirSync
{
366 struct ldapControlDirSyncCookie cookie
;
372 struct decode_supplementalCredentials
{
374 struct supplementalCredentialsBlob blob
;
380 struct decode_Packages
{
382 struct package_PackagesBlob blob
;
388 struct decode_PrimaryKerberos
{
390 struct package_PrimaryKerberosBlob blob
;
396 struct decode_PrimaryCLEARTEXT
{
398 struct package_PrimaryCLEARTEXTBlob blob
;
404 struct decode_PrimaryWDigest
{
406 struct package_PrimaryWDigestBlob blob
;
412 struct decode_trustAuthInOut
{
414 struct trustAuthInOutBlob blob
;
420 struct decode_DsCompressed
{
422 struct DsCompressedBlob blob
;
427 #endif /* _HEADER_drsblobs */