[SCM] Samba Shared Repository - branch v3-3-test updated -
release-3-2-0pre2-3432-g6dd1582
Michael Adam
obnox at samba.org
Mon Jul 28 12:50:50 GMT 2008
The branch, v3-3-test has been updated
via 6dd1582e3583ed3c0766db552a368ddb30af5f7d (commit)
via e8ae49fc2aadfeee696ad7fde1fee643e167537c (commit)
via e5d95c4f41c2fe25920b0b707f637a562cb23ed8 (commit)
via 67de7455b66b6c6c959e5e4ca1b8d97e2f4cf71d (commit)
via 18ea033909a5363c92530ed2a06a2b89be5e7c79 (commit)
from 1970eed1b79a5d9dc45eb96098d653ad62a20871 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test
- Log -----------------------------------------------------------------
commit 6dd1582e3583ed3c0766db552a368ddb30af5f7d
Author: Michael Adam <obnox at samba.org>
Date: Mon Jul 28 14:17:11 2008 +0200
run "make idl" after idl change to unify Primary:Kerberos* structs (e8ae49f)
Michael
commit e8ae49fc2aadfeee696ad7fde1fee643e167537c
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Jul 24 08:20:06 2008 +0200
drsblobs.idl: unify the Primary:Kerberos and Primary:Kerberos-Newer-Keys structs
metze
(cherry picked from commit 4b79a7678571ac2f7d5f827913fdcb419f5d2e20)
commit e5d95c4f41c2fe25920b0b707f637a562cb23ed8
Author: Michael Adam <obnox at samba.org>
Date: Mon Jul 28 14:15:27 2008 +0200
run "make idl" after idl change "give some unknowns a meaning" (67de745)
Michael
commit 67de7455b66b6c6c959e5e4ca1b8d97e2f4cf71d
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Jul 24 07:53:55 2008 +0200
drsblobs.idl: give some unknowns a meaning
metze
(cherry picked from commit 231e6f5ab2dc8a3e991a9872be252cffff6f14c6)
commit 18ea033909a5363c92530ed2a06a2b89be5e7c79
Author: Michael Adam <obnox at samba.org>
Date: Mon Jul 28 14:08:34 2008 +0200
rpcclient: Set the pid filed of the outgoing DsBindInfo to 0.
This is for debugging and informational purposes only.
The assignment is implementation specific.
(WSPP docs, sec. 5.35).
Michael
-----------------------------------------------------------------------
Summary of changes:
source/librpc/gen_ndr/drsblobs.h | 61 ++---
source/librpc/gen_ndr/ndr_drsblobs.c | 445 +++++++++++++---------------------
source/librpc/gen_ndr/ndr_drsblobs.h | 23 +--
source/librpc/idl/drsblobs.idl | 61 ++---
source/rpcclient/cmd_drsuapi.c | 2 +-
5 files changed, 233 insertions(+), 359 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/librpc/gen_ndr/drsblobs.h b/source/librpc/gen_ndr/drsblobs.h
index c0db9e9..b0ab9ae 100644
--- a/source/librpc/gen_ndr/drsblobs.h
+++ b/source/librpc/gen_ndr/drsblobs.h
@@ -190,7 +190,7 @@ struct package_PrimaryKerberosString {
const char * string;/* [relative,subcontext_size(size),subcontext(0),flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING)] */
};
-struct package_PrimaryKerberosKey {
+struct package_PrimaryKerberosKey3 {
uint16_t reserved1;/* [value(0)] */
uint16_t reserved2;/* [value(0)] */
uint32_t reserved3;/* [value(0)] */
@@ -203,8 +203,8 @@ struct package_PrimaryKerberosCtr3 {
uint16_t num_keys;
uint16_t num_old_keys;
struct package_PrimaryKerberosString salt;
- struct package_PrimaryKerberosKey *keys;
- struct package_PrimaryKerberosKey *old_keys;
+ struct package_PrimaryKerberosKey3 *keys;
+ struct package_PrimaryKerberosKey3 *old_keys;
uint32_t padding1;/* [value(0)] */
uint32_t padding2;/* [value(0)] */
uint32_t padding3;/* [value(0)] */
@@ -212,43 +212,38 @@ struct package_PrimaryKerberosCtr3 {
uint32_t padding5;/* [value(0)] */
};
-union package_PrimaryKerberosCtr {
- struct package_PrimaryKerberosCtr3 ctr3;/* [case(3)] */
-}/* [nodiscriminant] */;
-
-struct package_PrimaryKerberosBlob {
- uint32_t version;/* [value(3)] */
- union package_PrimaryKerberosCtr ctr;/* [switch_is(version)] */
-}/* [public] */;
-
-struct package_PrimaryKerberosNewerKey {
- uint32_t unknown1;/* [value(0)] */
- uint32_t unknown2;/* [value(0)] */
- uint32_t unknown3;/* [value(0x00001000)] */
+struct package_PrimaryKerberosKey4 {
+ uint16_t reserved1;/* [value(0)] */
+ uint16_t reserved2;/* [value(0)] */
+ uint32_t reserved3;/* [value(0)] */
+ uint32_t iteration_count;
uint32_t keytype;
uint32_t value_len;/* [value((value?value->length:0))] */
DATA_BLOB *value;/* [relative,subcontext_size(value_len),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
};
-struct package_PrimaryKerberosNewerCtr4 {
+struct package_PrimaryKerberosCtr4 {
uint16_t num_keys;
- uint16_t unknown1;/* [value(0)] */
- uint16_t num_old_keys1;
- uint16_t num_old_keys2;
+ uint16_t num_service_keys;/* [value(0)] */
+ uint16_t num_old_keys;
+ uint16_t num_older_keys;
struct package_PrimaryKerberosString salt;
- uint32_t unknown2;/* [value(0x00001000)] */
- struct package_PrimaryKerberosNewerKey *keys;
- struct package_PrimaryKerberosNewerKey *old_keys1;
- struct package_PrimaryKerberosNewerKey *old_keys2;
+ uint32_t default_iteration_count;
+ struct package_PrimaryKerberosKey4 *keys;
+ struct package_PrimaryKerberosKey4 *service_keys;
+ struct package_PrimaryKerberosKey4 *old_keys;
+ struct package_PrimaryKerberosKey4 *older_keys;
};
-union package_PrimaryKerberosNewerCtr {
- struct package_PrimaryKerberosNewerCtr4 ctr4;/* [case(4)] */
+union package_PrimaryKerberosCtr {
+ struct package_PrimaryKerberosCtr3 ctr3;/* [case(3)] */
+ struct package_PrimaryKerberosCtr4 ctr4;/* [case(4)] */
}/* [nodiscriminant] */;
-struct package_PrimaryKerberosNewerBlob {
- uint32_t version;/* [value(4)] */
- union package_PrimaryKerberosNewerCtr ctr;/* [switch_is(version)] */
+struct package_PrimaryKerberosBlob {
+ uint16_t version;
+ uint16_t flags;/* [value(0)] */
+ union package_PrimaryKerberosCtr ctr;/* [switch_is(version)] */
}/* [public] */;
struct package_PrimaryCLEARTEXTBlob {
@@ -398,14 +393,6 @@ struct decode_PrimaryKerberos {
};
-struct decode_PrimaryKerberosNewer {
- struct {
- struct package_PrimaryKerberosNewerBlob blob;
- } in;
-
-};
-
-
struct decode_PrimaryCLEARTEXT {
struct {
struct package_PrimaryCLEARTEXTBlob blob;
diff --git a/source/librpc/gen_ndr/ndr_drsblobs.c b/source/librpc/gen_ndr/ndr_drsblobs.c
index 7292298..41a448c 100644
--- a/source/librpc/gen_ndr/ndr_drsblobs.c
+++ b/source/librpc/gen_ndr/ndr_drsblobs.c
@@ -1525,7 +1525,7 @@ _PUBLIC_ void ndr_print_package_PrimaryKerberosString(struct ndr_print *ndr, con
ndr->depth--;
}
-static enum ndr_err_code ndr_push_package_PrimaryKerberosKey(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosKey *r)
+static enum ndr_err_code ndr_push_package_PrimaryKerberosKey3(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosKey3 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
@@ -1560,7 +1560,7 @@ static enum ndr_err_code ndr_push_package_PrimaryKerberosKey(struct ndr_push *nd
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_package_PrimaryKerberosKey(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosKey *r)
+static enum ndr_err_code ndr_pull_package_PrimaryKerberosKey3(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosKey3 *r)
{
uint32_t _ptr_value;
TALLOC_CTX *_mem_save_value_0;
@@ -1609,9 +1609,9 @@ static enum ndr_err_code ndr_pull_package_PrimaryKerberosKey(struct ndr_pull *nd
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_package_PrimaryKerberosKey(struct ndr_print *ndr, const char *name, const struct package_PrimaryKerberosKey *r)
+_PUBLIC_ void ndr_print_package_PrimaryKerberosKey3(struct ndr_print *ndr, const char *name, const struct package_PrimaryKerberosKey3 *r)
{
- ndr_print_struct(ndr, name, "package_PrimaryKerberosKey");
+ ndr_print_struct(ndr, name, "package_PrimaryKerberosKey3");
ndr->depth++;
ndr_print_uint16(ndr, "reserved1", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved1);
ndr_print_uint16(ndr, "reserved2", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved2);
@@ -1637,10 +1637,10 @@ static enum ndr_err_code ndr_push_package_PrimaryKerberosCtr3(struct ndr_push *n
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_old_keys));
NDR_CHECK(ndr_push_package_PrimaryKerberosString(ndr, NDR_SCALARS, &r->salt));
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosKey(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey3(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
}
for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosKey(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey3(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
}
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
@@ -1651,10 +1651,10 @@ static enum ndr_err_code ndr_push_package_PrimaryKerberosCtr3(struct ndr_push *n
if (ndr_flags & NDR_BUFFERS) {
NDR_CHECK(ndr_push_package_PrimaryKerberosString(ndr, NDR_BUFFERS, &r->salt));
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosKey(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey3(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
}
for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosKey(ndr, NDR_BUFFERS, &r->old_keys[cntr_old_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey3(ndr, NDR_BUFFERS, &r->old_keys[cntr_old_keys_0]));
}
}
return NDR_ERR_SUCCESS;
@@ -1675,14 +1675,14 @@ static enum ndr_err_code ndr_pull_package_PrimaryKerberosCtr3(struct ndr_pull *n
_mem_save_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->keys, 0);
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosKey(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey3(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_keys_0, 0);
NDR_PULL_ALLOC_N(ndr, r->old_keys, r->num_old_keys);
_mem_save_old_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->old_keys, 0);
for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosKey(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey3(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_keys_0, 0);
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->padding1));
@@ -1696,13 +1696,13 @@ static enum ndr_err_code ndr_pull_package_PrimaryKerberosCtr3(struct ndr_pull *n
_mem_save_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->keys, 0);
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosKey(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey3(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_keys_0, 0);
_mem_save_old_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->old_keys, 0);
for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosKey(ndr, NDR_BUFFERS, &r->old_keys[cntr_old_keys_0]));
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey3(ndr, NDR_BUFFERS, &r->old_keys[cntr_old_keys_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_keys_0, 0);
}
@@ -1723,7 +1723,7 @@ _PUBLIC_ void ndr_print_package_PrimaryKerberosCtr3(struct ndr_print *ndr, const
for (cntr_keys_0=0;cntr_keys_0<r->num_keys;cntr_keys_0++) {
char *idx_0=NULL;
if (asprintf(&idx_0, "[%d]", cntr_keys_0) != -1) {
- ndr_print_package_PrimaryKerberosKey(ndr, "keys", &r->keys[cntr_keys_0]);
+ ndr_print_package_PrimaryKerberosKey3(ndr, "keys", &r->keys[cntr_keys_0]);
free(idx_0);
}
}
@@ -1733,7 +1733,7 @@ _PUBLIC_ void ndr_print_package_PrimaryKerberosCtr3(struct ndr_print *ndr, const
for (cntr_old_keys_0=0;cntr_old_keys_0<r->num_old_keys;cntr_old_keys_0++) {
char *idx_0=NULL;
if (asprintf(&idx_0, "[%d]", cntr_old_keys_0) != -1) {
- ndr_print_package_PrimaryKerberosKey(ndr, "old_keys", &r->old_keys[cntr_old_keys_0]);
+ ndr_print_package_PrimaryKerberosKey3(ndr, "old_keys", &r->old_keys[cntr_old_keys_0]);
free(idx_0);
}
}
@@ -1746,120 +1746,14 @@ _PUBLIC_ void ndr_print_package_PrimaryKerberosCtr3(struct ndr_print *ndr, const
ndr->depth--;
}
-static enum ndr_err_code ndr_push_package_PrimaryKerberosCtr(struct ndr_push *ndr, int ndr_flags, const union package_PrimaryKerberosCtr *r)
-{
- if (ndr_flags & NDR_SCALARS) {
- int level = ndr_push_get_switch_value(ndr, r);
- switch (level) {
- case 3: {
- NDR_CHECK(ndr_push_package_PrimaryKerberosCtr3(ndr, NDR_SCALARS, &r->ctr3));
- break; }
-
- default:
- return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
- }
- }
- if (ndr_flags & NDR_BUFFERS) {
- int level = ndr_push_get_switch_value(ndr, r);
- switch (level) {
- case 3:
- NDR_CHECK(ndr_push_package_PrimaryKerberosCtr3(ndr, NDR_BUFFERS, &r->ctr3));
- break;
-
- default:
- return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
- }
- }
- return NDR_ERR_SUCCESS;
-}
-
-static enum ndr_err_code ndr_pull_package_PrimaryKerberosCtr(struct ndr_pull *ndr, int ndr_flags, union package_PrimaryKerberosCtr *r)
-{
- int level;
- level = ndr_pull_get_switch_value(ndr, r);
- if (ndr_flags & NDR_SCALARS) {
- switch (level) {
- case 3: {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosCtr3(ndr, NDR_SCALARS, &r->ctr3));
- break; }
-
- default:
- return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
- }
- }
- if (ndr_flags & NDR_BUFFERS) {
- switch (level) {
- case 3:
- NDR_CHECK(ndr_pull_package_PrimaryKerberosCtr3(ndr, NDR_BUFFERS, &r->ctr3));
- break;
-
- default:
- return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
- }
- }
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ void ndr_print_package_PrimaryKerberosCtr(struct ndr_print *ndr, const char *name, const union package_PrimaryKerberosCtr *r)
-{
- int level;
- level = ndr_print_get_switch_value(ndr, r);
- ndr_print_union(ndr, name, level, "package_PrimaryKerberosCtr");
- switch (level) {
- case 3:
- ndr_print_package_PrimaryKerberosCtr3(ndr, "ctr3", &r->ctr3);
- break;
-
- default:
- ndr_print_bad_level(ndr, name, level);
- }
-}
-
-_PUBLIC_ enum ndr_err_code ndr_push_package_PrimaryKerberosBlob(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosBlob *r)
-{
- if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 3));
- NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, 3));
- NDR_CHECK(ndr_push_package_PrimaryKerberosCtr(ndr, NDR_SCALARS, &r->ctr));
- }
- if (ndr_flags & NDR_BUFFERS) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosCtr(ndr, NDR_BUFFERS, &r->ctr));
- }
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ enum ndr_err_code ndr_pull_package_PrimaryKerberosBlob(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosBlob *r)
-{
- if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
- NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->version));
- NDR_CHECK(ndr_pull_package_PrimaryKerberosCtr(ndr, NDR_SCALARS, &r->ctr));
- }
- if (ndr_flags & NDR_BUFFERS) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosCtr(ndr, NDR_BUFFERS, &r->ctr));
- }
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ void ndr_print_package_PrimaryKerberosBlob(struct ndr_print *ndr, const char *name, const struct package_PrimaryKerberosBlob *r)
-{
- ndr_print_struct(ndr, name, "package_PrimaryKerberosBlob");
- ndr->depth++;
- ndr_print_uint32(ndr, "version", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?3:r->version);
- ndr_print_set_switch_value(ndr, &r->ctr, r->version);
- ndr_print_package_PrimaryKerberosCtr(ndr, "ctr", &r->ctr);
- ndr->depth--;
-}
-
-static enum ndr_err_code ndr_push_package_PrimaryKerberosNewerKey(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosNewerKey *r)
+static enum ndr_err_code ndr_push_package_PrimaryKerberosKey4(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosKey4 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 0));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x00001000));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->iteration_count));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->keytype));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, (r->value?r->value->length:0)));
{
@@ -1888,15 +1782,16 @@ static enum ndr_err_code ndr_push_package_PrimaryKerberosNewerKey(struct ndr_pus
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_package_PrimaryKerberosNewerKey(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosNewerKey *r)
+static enum ndr_err_code ndr_pull_package_PrimaryKerberosKey4(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosKey4 *r)
{
uint32_t _ptr_value;
TALLOC_CTX *_mem_save_value_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown3));
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->reserved1));
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->reserved2));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->reserved3));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->iteration_count));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->keytype));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->value_len));
{
@@ -1937,13 +1832,14 @@ static enum ndr_err_code ndr_pull_package_PrimaryKerberosNewerKey(struct ndr_pul
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_package_PrimaryKerberosNewerKey(struct ndr_print *ndr, const char *name, const struct package_PrimaryKerberosNewerKey *r)
+_PUBLIC_ void ndr_print_package_PrimaryKerberosKey4(struct ndr_print *ndr, const char *name, const struct package_PrimaryKerberosKey4 *r)
{
- ndr_print_struct(ndr, name, "package_PrimaryKerberosNewerKey");
+ ndr_print_struct(ndr, name, "package_PrimaryKerberosKey4");
ndr->depth++;
- ndr_print_uint32(ndr, "unknown1", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->unknown1);
- ndr_print_uint32(ndr, "unknown2", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->unknown2);
- ndr_print_uint32(ndr, "unknown3", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0x00001000:r->unknown3);
+ ndr_print_uint16(ndr, "reserved1", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved1);
+ ndr_print_uint16(ndr, "reserved2", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved2);
+ ndr_print_uint32(ndr, "reserved3", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->reserved3);
+ ndr_print_uint32(ndr, "iteration_count", r->iteration_count);
ndr_print_uint32(ndr, "keytype", r->keytype);
ndr_print_uint32(ndr, "value_len", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?(r->value?r->value->length:0):r->value_len);
ndr_print_ptr(ndr, "value", r->value);
@@ -1955,145 +1851,178 @@ _PUBLIC_ void ndr_print_package_PrimaryKerberosNewerKey(struct ndr_print *ndr, c
ndr->depth--;
}
-static enum ndr_err_code ndr_push_package_PrimaryKerberosNewerCtr4(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosNewerCtr4 *r)
+static enum ndr_err_code ndr_push_package_PrimaryKerberosCtr4(struct ndr_push *ndr, int ndr_flags, const struct package_PrimaryKerberosCtr4 *r)
{
uint32_t cntr_keys_0;
- uint32_t cntr_old_keys1_0;
- uint32_t cntr_old_keys2_0;
+ uint32_t cntr_service_keys_0;
+ uint32_t cntr_old_keys_0;
+ uint32_t cntr_older_keys_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_keys));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_old_keys1));
- NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_old_keys2));
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_old_keys));
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_older_keys));
NDR_CHECK(ndr_push_package_PrimaryKerberosString(ndr, NDR_SCALARS, &r->salt));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x00001000));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->default_iteration_count));
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
}
- for (cntr_old_keys1_0 = 0; cntr_old_keys1_0 < r->num_old_keys1; cntr_old_keys1_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_SCALARS, &r->old_keys1[cntr_old_keys1_0]));
+ for (cntr_service_keys_0 = 0; cntr_service_keys_0 < 0; cntr_service_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->service_keys[cntr_service_keys_0]));
+ }
+ for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
}
- for (cntr_old_keys2_0 = 0; cntr_old_keys2_0 < r->num_old_keys2; cntr_old_keys2_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_SCALARS, &r->old_keys2[cntr_old_keys2_0]));
+ for (cntr_older_keys_0 = 0; cntr_older_keys_0 < r->num_older_keys; cntr_older_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->older_keys[cntr_older_keys_0]));
}
}
if (ndr_flags & NDR_BUFFERS) {
NDR_CHECK(ndr_push_package_PrimaryKerberosString(ndr, NDR_BUFFERS, &r->salt));
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_BUFFERS, &r->keys[cntr_keys_0]));
}
- for (cntr_old_keys1_0 = 0; cntr_old_keys1_0 < r->num_old_keys1; cntr_old_keys1_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_BUFFERS, &r->old_keys1[cntr_old_keys1_0]));
+ for (cntr_service_keys_0 = 0; cntr_service_keys_0 < 0; cntr_service_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_BUFFERS, &r->service_keys[cntr_service_keys_0]));
}
- for (cntr_old_keys2_0 = 0; cntr_old_keys2_0 < r->num_old_keys2; cntr_old_keys2_0++) {
- NDR_CHECK(ndr_push_package_PrimaryKerberosNewerKey(ndr, NDR_BUFFERS, &r->old_keys2[cntr_old_keys2_0]));
+ for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_BUFFERS, &r->old_keys[cntr_old_keys_0]));
+ }
+ for (cntr_older_keys_0 = 0; cntr_older_keys_0 < r->num_older_keys; cntr_older_keys_0++) {
+ NDR_CHECK(ndr_push_package_PrimaryKerberosKey4(ndr, NDR_BUFFERS, &r->older_keys[cntr_older_keys_0]));
}
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_package_PrimaryKerberosNewerCtr4(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosNewerCtr4 *r)
+static enum ndr_err_code ndr_pull_package_PrimaryKerberosCtr4(struct ndr_pull *ndr, int ndr_flags, struct package_PrimaryKerberosCtr4 *r)
{
uint32_t cntr_keys_0;
TALLOC_CTX *_mem_save_keys_0;
- uint32_t cntr_old_keys1_0;
- TALLOC_CTX *_mem_save_old_keys1_0;
- uint32_t cntr_old_keys2_0;
- TALLOC_CTX *_mem_save_old_keys2_0;
+ uint32_t cntr_service_keys_0;
+ TALLOC_CTX *_mem_save_service_keys_0;
+ uint32_t cntr_old_keys_0;
+ TALLOC_CTX *_mem_save_old_keys_0;
+ uint32_t cntr_older_keys_0;
+ TALLOC_CTX *_mem_save_older_keys_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_keys));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown1));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_old_keys1));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_old_keys2));
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_service_keys));
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_old_keys));
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_older_keys));
NDR_CHECK(ndr_pull_package_PrimaryKerberosString(ndr, NDR_SCALARS, &r->salt));
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->default_iteration_count));
NDR_PULL_ALLOC_N(ndr, r->keys, r->num_keys);
_mem_save_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->keys, 0);
for (cntr_keys_0 = 0; cntr_keys_0 < r->num_keys; cntr_keys_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosNewerKey(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->keys[cntr_keys_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_keys_0, 0);
- NDR_PULL_ALLOC_N(ndr, r->old_keys1, r->num_old_keys1);
- _mem_save_old_keys1_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->old_keys1, 0);
- for (cntr_old_keys1_0 = 0; cntr_old_keys1_0 < r->num_old_keys1; cntr_old_keys1_0++) {
- NDR_CHECK(ndr_pull_package_PrimaryKerberosNewerKey(ndr, NDR_SCALARS, &r->old_keys1[cntr_old_keys1_0]));
+ NDR_PULL_ALLOC_N(ndr, r->service_keys, r->num_service_keys);
+ _mem_save_service_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->service_keys, 0);
+ for (cntr_service_keys_0 = 0; cntr_service_keys_0 < r->num_service_keys; cntr_service_keys_0++) {
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->service_keys[cntr_service_keys_0]));
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_service_keys_0, 0);
+ NDR_PULL_ALLOC_N(ndr, r->old_keys, r->num_old_keys);
+ _mem_save_old_keys_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->old_keys, 0);
+ for (cntr_old_keys_0 = 0; cntr_old_keys_0 < r->num_old_keys; cntr_old_keys_0++) {
+ NDR_CHECK(ndr_pull_package_PrimaryKerberosKey4(ndr, NDR_SCALARS, &r->old_keys[cntr_old_keys_0]));
}
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_keys1_0, 0);
--
Samba Shared Repository
More information about the samba-cvs
mailing list