1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

drsblobs.idl: unify the Primary:Kerberos and Primary:Kerberos-Newer-Keys structs

metze
This commit is contained in:
Stefan Metzmacher 2008-07-24 08:20:06 +02:00
parent 231e6f5ab2
commit 4b79a76785

View File

@ -278,14 +278,14 @@ interface drsblobs {
uint32 keytype; uint32 keytype;
[value((value?value->length:0))] uint32 value_len; [value((value?value->length:0))] uint32 value_len;
[relative,subcontext(0),subcontext_size(value_len),flag(NDR_REMAINING)] DATA_BLOB *value; [relative,subcontext(0),subcontext_size(value_len),flag(NDR_REMAINING)] DATA_BLOB *value;
} package_PrimaryKerberosKey; } package_PrimaryKerberosKey3;
typedef struct { typedef struct {
uint16 num_keys; uint16 num_keys;
uint16 num_old_keys; uint16 num_old_keys;
package_PrimaryKerberosString salt; package_PrimaryKerberosString salt;
package_PrimaryKerberosKey keys[num_keys]; package_PrimaryKerberosKey3 keys[num_keys];
package_PrimaryKerberosKey old_keys[num_old_keys]; package_PrimaryKerberosKey3 old_keys[num_old_keys];
[value(0)] uint32 padding1; [value(0)] uint32 padding1;
[value(0)] uint32 padding2; [value(0)] uint32 padding2;
[value(0)] uint32 padding3; [value(0)] uint32 padding3;
@ -293,19 +293,6 @@ interface drsblobs {
[value(0)] uint32 padding5; [value(0)] uint32 padding5;
} package_PrimaryKerberosCtr3; } package_PrimaryKerberosCtr3;
typedef [nodiscriminant] union {
[case(3)] package_PrimaryKerberosCtr3 ctr3;
} package_PrimaryKerberosCtr;
typedef [public] struct {
[value(3)] uint32 version;
[switch_is(version)] package_PrimaryKerberosCtr ctr;
} package_PrimaryKerberosBlob;
void decode_PrimaryKerberos(
[in] package_PrimaryKerberosBlob blob
);
typedef struct { typedef struct {
[value(0)] uint16 reserved1; [value(0)] uint16 reserved1;
[value(0)] uint16 reserved2; [value(0)] uint16 reserved2;
@ -314,7 +301,7 @@ interface drsblobs {
uint32 keytype; uint32 keytype;
[value((value?value->length:0))] uint32 value_len; [value((value?value->length:0))] uint32 value_len;
[relative,subcontext(0),subcontext_size(value_len),flag(NDR_REMAINING)] DATA_BLOB *value; [relative,subcontext(0),subcontext_size(value_len),flag(NDR_REMAINING)] DATA_BLOB *value;
} package_PrimaryKerberosNewerKey; } package_PrimaryKerberosKey4;
typedef struct { typedef struct {
uint16 num_keys; uint16 num_keys;
@ -323,23 +310,25 @@ interface drsblobs {
uint16 num_older_keys; uint16 num_older_keys;
package_PrimaryKerberosString salt; package_PrimaryKerberosString salt;
uint32 default_iteration_count; uint32 default_iteration_count;
package_PrimaryKerberosNewerKey keys[num_keys]; package_PrimaryKerberosKey4 keys[num_keys];
package_PrimaryKerberosNewerKey service_keys[num_service_keys]; package_PrimaryKerberosKey4 service_keys[num_service_keys];
package_PrimaryKerberosNewerKey old_keys[num_old_keys]; package_PrimaryKerberosKey4 old_keys[num_old_keys];
package_PrimaryKerberosNewerKey older_keys[num_older_keys]; package_PrimaryKerberosKey4 older_keys[num_older_keys];
} package_PrimaryKerberosNewerCtr4; } package_PrimaryKerberosCtr4;
typedef [nodiscriminant] union { typedef [nodiscriminant] union {
[case(4)] package_PrimaryKerberosNewerCtr4 ctr4; [case(3)] package_PrimaryKerberosCtr3 ctr3;
} package_PrimaryKerberosNewerCtr; [case(4)] package_PrimaryKerberosCtr4 ctr4;
} package_PrimaryKerberosCtr;
typedef [public] struct { typedef [public] struct {
[value(4)] uint32 version; uint16 version;
[switch_is(version)] package_PrimaryKerberosNewerCtr ctr; [value(0)] uint16 flags;
} package_PrimaryKerberosNewerBlob; [switch_is(version)] package_PrimaryKerberosCtr ctr;
} package_PrimaryKerberosBlob;
void decode_PrimaryKerberosNewer( void decode_PrimaryKerberos(
[in] package_PrimaryKerberosNewerBlob blob [in] package_PrimaryKerberosBlob blob
); );
typedef [public] struct { typedef [public] struct {