summaryrefslogtreecommitdiff
path: root/librpc/gen_ndr/ndr_lsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'librpc/gen_ndr/ndr_lsa.c')
-rw-r--r--librpc/gen_ndr/ndr_lsa.c276
1 files changed, 180 insertions, 96 deletions
diff --git a/librpc/gen_ndr/ndr_lsa.c b/librpc/gen_ndr/ndr_lsa.c
index 2aee3f7fde9..6ebc703f99e 100644
--- a/librpc/gen_ndr/ndr_lsa.c
+++ b/librpc/gen_ndr/ndr_lsa.c
@@ -27,6 +27,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_String(struct ndr_push *ndr, int ndr_fla
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_String(struct ndr_pull *ndr, int ndr_flags, struct lsa_String *r)
{
uint32_t _ptr_string;
+ uint32_t size_string_1 = 0;
+ uint32_t length_string_1 = 0;
TALLOC_CTX *_mem_save_string_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -45,10 +47,12 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_String(struct ndr_pull *ndr, int ndr_fla
NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
- if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
+ size_string_1 = ndr_get_array_size(ndr, &r->string);
+ length_string_1 = ndr_get_array_length(ndr, &r->string);
+ if (length_string_1 > size_string_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_string_1, length_string_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, length_string_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
}
if (r->string) {
@@ -98,6 +102,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_StringLarge(struct ndr_push *ndr, int nd
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_StringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_StringLarge *r)
{
uint32_t _ptr_string;
+ uint32_t size_string_1 = 0;
+ uint32_t length_string_1 = 0;
TALLOC_CTX *_mem_save_string_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -116,10 +122,12 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_StringLarge(struct ndr_pull *ndr, int nd
NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
- if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
+ size_string_1 = ndr_get_array_size(ndr, &r->string);
+ length_string_1 = ndr_get_array_length(ndr, &r->string);
+ if (length_string_1 > size_string_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_string_1, length_string_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, length_string_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
}
if (r->string) {
@@ -172,6 +180,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_Strings(struct ndr_push *ndr, int ndr_fl
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_Strings(struct ndr_pull *ndr, int ndr_flags, struct lsa_Strings *r)
{
uint32_t _ptr_names;
+ uint32_t size_names_1 = 0;
uint32_t cntr_names_1;
TALLOC_CTX *_mem_save_names_0;
TALLOC_CTX *_mem_save_names_1;
@@ -190,13 +199,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_Strings(struct ndr_pull *ndr, int ndr_fl
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
- NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
+ size_names_1 = ndr_get_array_size(ndr, &r->names);
+ NDR_PULL_ALLOC_N(ndr, r->names, size_names_1);
_mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
}
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
@@ -255,6 +265,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiString(struct ndr_push *ndr, int nd
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiString(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiString *r)
{
uint32_t _ptr_string;
+ uint32_t size_string_1 = 0;
+ uint32_t length_string_1 = 0;
TALLOC_CTX *_mem_save_string_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -273,10 +285,12 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiString(struct ndr_pull *ndr, int nd
NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
- if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
+ size_string_1 = ndr_get_array_size(ndr, &r->string);
+ length_string_1 = ndr_get_array_length(ndr, &r->string);
+ if (length_string_1 > size_string_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_string_1, length_string_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, length_string_1, sizeof(uint8_t), CH_DOS));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
}
if (r->string) {
@@ -326,6 +340,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiStringLarge(struct ndr_push *ndr, i
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiStringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiStringLarge *r)
{
uint32_t _ptr_string;
+ uint32_t size_string_1 = 0;
+ uint32_t length_string_1 = 0;
TALLOC_CTX *_mem_save_string_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -344,10 +360,12 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiStringLarge(struct ndr_pull *ndr, i
NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
- if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
+ size_string_1 = ndr_get_array_size(ndr, &r->string);
+ length_string_1 = ndr_get_array_length(ndr, &r->string);
+ if (length_string_1 > size_string_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_string_1, length_string_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, length_string_1, sizeof(uint8_t), CH_DOS));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
}
if (r->string) {
@@ -400,6 +418,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_BinaryString(struct ndr_push *ndr, int n
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_BinaryString(struct ndr_pull *ndr, int ndr_flags, struct lsa_BinaryString *r)
{
uint32_t _ptr_array;
+ uint32_t size_array_1 = 0;
+ uint32_t length_array_1 = 0;
uint32_t cntr_array_1;
TALLOC_CTX *_mem_save_array_0;
TALLOC_CTX *_mem_save_array_1;
@@ -420,13 +440,15 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_BinaryString(struct ndr_pull *ndr, int n
NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
NDR_CHECK(ndr_pull_array_length(ndr, &r->array));
- if (ndr_get_array_length(ndr, &r->array) > ndr_get_array_size(ndr, &r->array)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->array), ndr_get_array_length(ndr, &r->array));
+ size_array_1 = ndr_get_array_size(ndr, &r->array);
+ length_array_1 = ndr_get_array_length(ndr, &r->array);
+ if (length_array_1 > size_array_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_array_1, length_array_1);
}
- NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
+ NDR_PULL_ALLOC_N(ndr, r->array, size_array_1);
_mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
- for (cntr_array_1 = 0; cntr_array_1 < r->length / 2; cntr_array_1++) {
+ for (cntr_array_1 = 0; cntr_array_1 < length_array_1; cntr_array_1++) {
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
@@ -560,6 +582,7 @@ static enum ndr_err_code ndr_push_lsa_PrivArray(struct ndr_push *ndr, int ndr_fl
static enum ndr_err_code ndr_pull_lsa_PrivArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivArray *r)
{
uint32_t _ptr_privs;
+ uint32_t size_privs_1 = 0;
uint32_t cntr_privs_1;
TALLOC_CTX *_mem_save_privs_0;
TALLOC_CTX *_mem_save_privs_1;
@@ -578,13 +601,14 @@ static enum ndr_err_code ndr_pull_lsa_PrivArray(struct ndr_pull *ndr, int ndr_fl
_mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->privs));
- NDR_PULL_ALLOC_N(ndr, r->privs, ndr_get_array_size(ndr, &r->privs));
+ size_privs_1 = ndr_get_array_size(ndr, &r->privs);
+ NDR_PULL_ALLOC_N(ndr, r->privs, size_privs_1);
_mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
- for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
+ for (cntr_privs_1 = 0; cntr_privs_1 < size_privs_1; cntr_privs_1++) {
NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
}
- for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
+ for (cntr_privs_1 = 0; cntr_privs_1 < size_privs_1; cntr_privs_1++) {
NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
@@ -696,6 +720,8 @@ static enum ndr_err_code ndr_pull_lsa_ObjectAttribute(struct ndr_pull *ndr, int
uint32_t _ptr_root_dir;
TALLOC_CTX *_mem_save_root_dir_0;
uint32_t _ptr_object_name;
+ uint32_t size_object_name_1 = 0;
+ uint32_t length_object_name_1 = 0;
TALLOC_CTX *_mem_save_object_name_0;
uint32_t _ptr_sec_desc;
TALLOC_CTX *_mem_save_sec_desc_0;
@@ -742,11 +768,13 @@ static enum ndr_err_code ndr_pull_lsa_ObjectAttribute(struct ndr_pull *ndr, int
NDR_PULL_SET_MEM_CTX(ndr, r->object_name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->object_name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->object_name));
- if (ndr_get_array_length(ndr, &r->object_name) > ndr_get_array_size(ndr, &r->object_name)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->object_name), ndr_get_array_length(ndr, &r->object_name));
+ size_object_name_1 = ndr_get_array_size(ndr, &r->object_name);
+ length_object_name_1 = ndr_get_array_length(ndr, &r->object_name);
+ if (length_object_name_1 > size_object_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_object_name_1, length_object_name_1);
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->object_name, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_check_string_terminator(ndr, length_object_name_1, sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->object_name, length_object_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_name_0, 0);
}
if (r->sec_desc) {
@@ -1004,6 +1032,7 @@ static enum ndr_err_code ndr_push_lsa_AuditEventsInfo(struct ndr_push *ndr, int
static enum ndr_err_code ndr_pull_lsa_AuditEventsInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditEventsInfo *r)
{
uint32_t _ptr_settings;
+ uint32_t size_settings_1 = 0;
uint32_t cntr_settings_1;
TALLOC_CTX *_mem_save_settings_0;
TALLOC_CTX *_mem_save_settings_1;
@@ -1023,10 +1052,11 @@ static enum ndr_err_code ndr_pull_lsa_AuditEventsInfo(struct ndr_pull *ndr, int
_mem_save_settings_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->settings));
- NDR_PULL_ALLOC_N(ndr, r->settings, ndr_get_array_size(ndr, &r->settings));
+ size_settings_1 = ndr_get_array_size(ndr, &r->settings);
+ NDR_PULL_ALLOC_N(ndr, r->settings, size_settings_1);
_mem_save_settings_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
- for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
+ for (cntr_settings_1 = 0; cntr_settings_1 < size_settings_1; cntr_settings_1++) {
NDR_CHECK(ndr_pull_lsa_PolicyAuditPolicy(ndr, NDR_SCALARS, &r->settings[cntr_settings_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_1, 0);
@@ -1890,6 +1920,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_SidArray(struct ndr_push *ndr, int ndr_f
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidArray *r)
{
uint32_t _ptr_sids;
+ uint32_t size_sids_1 = 0;
uint32_t cntr_sids_1;
TALLOC_CTX *_mem_save_sids_0;
TALLOC_CTX *_mem_save_sids_1;
@@ -1911,13 +1942,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_f
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
- NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
+ size_sids_1 = ndr_get_array_size(ndr, &r->sids);
+ NDR_PULL_ALLOC_N(ndr, r->sids, size_sids_1);
_mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
- for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
}
- for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
@@ -1979,6 +2011,7 @@ static enum ndr_err_code ndr_push_lsa_DomainList(struct ndr_push *ndr, int ndr_f
static enum ndr_err_code ndr_pull_lsa_DomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainList *r)
{
uint32_t _ptr_domains;
+ uint32_t size_domains_1 = 0;
uint32_t cntr_domains_1;
TALLOC_CTX *_mem_save_domains_0;
TALLOC_CTX *_mem_save_domains_1;
@@ -1997,13 +2030,14 @@ static enum ndr_err_code ndr_pull_lsa_DomainList(struct ndr_pull *ndr, int ndr_f
_mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
- NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
+ size_domains_1 = ndr_get_array_size(ndr, &r->domains);
+ NDR_PULL_ALLOC_N(ndr, r->domains, size_domains_1);
_mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
}
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
@@ -2131,6 +2165,7 @@ static enum ndr_err_code ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int nd
static enum ndr_err_code ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r)
{
uint32_t _ptr_sids;
+ uint32_t size_sids_1 = 0;
uint32_t cntr_sids_1;
TALLOC_CTX *_mem_save_sids_0;
TALLOC_CTX *_mem_save_sids_1;
@@ -2152,10 +2187,11 @@ static enum ndr_err_code ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int nd
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
- NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
+ size_sids_1 = ndr_get_array_size(ndr, &r->sids);
+ NDR_PULL_ALLOC_N(ndr, r->sids, size_sids_1);
_mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
- for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
@@ -2218,6 +2254,7 @@ static enum ndr_err_code ndr_push_lsa_RefDomainList(struct ndr_push *ndr, int nd
static enum ndr_err_code ndr_pull_lsa_RefDomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_RefDomainList *r)
{
uint32_t _ptr_domains;
+ uint32_t size_domains_1 = 0;
uint32_t cntr_domains_1;
TALLOC_CTX *_mem_save_domains_0;
TALLOC_CTX *_mem_save_domains_1;
@@ -2240,13 +2277,14 @@ static enum ndr_err_code ndr_pull_lsa_RefDomainList(struct ndr_pull *ndr, int nd
_mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
- NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
+ size_domains_1 = ndr_get_array_size(ndr, &r->domains);
+ NDR_PULL_ALLOC_N(ndr, r->domains, size_domains_1);
_mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
}
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
@@ -2377,6 +2415,7 @@ static enum ndr_err_code ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int n
static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r)
{
uint32_t _ptr_names;
+ uint32_t size_names_1 = 0;
uint32_t cntr_names_1;
TALLOC_CTX *_mem_save_names_0;
TALLOC_CTX *_mem_save_names_1;
@@ -2398,13 +2437,14 @@ static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int n
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
- NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
+ size_names_1 = ndr_get_array_size(ndr, &r->names);
+ NDR_PULL_ALLOC_N(ndr, r->names, size_names_1);
_mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
}
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
@@ -2493,6 +2533,7 @@ static enum ndr_err_code ndr_push_lsa_PrivilegeSet(struct ndr_push *ndr, int ndr
static enum ndr_err_code ndr_pull_lsa_PrivilegeSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivilegeSet *r)
{
+ uint32_t size_set_0 = 0;
uint32_t cntr_set_0;
TALLOC_CTX *_mem_save_set_0;
if (ndr_flags & NDR_SCALARS) {
@@ -2503,10 +2544,11 @@ static enum ndr_err_code ndr_pull_lsa_PrivilegeSet(struct ndr_pull *ndr, int ndr
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
}
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
- NDR_PULL_ALLOC_N(ndr, r->set, ndr_get_array_size(ndr, &r->set));
+ size_set_0 = ndr_get_array_size(ndr, &r->set);
+ NDR_PULL_ALLOC_N(ndr, r->set, size_set_0);
_mem_save_set_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->set, 0);
- for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
+ for (cntr_set_0 = 0; cntr_set_0 < size_set_0; cntr_set_0++) {
NDR_CHECK(ndr_pull_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_set_0, 0);
@@ -2566,6 +2608,8 @@ static enum ndr_err_code ndr_push_lsa_DATA_BUF(struct ndr_push *ndr, int ndr_fla
static enum ndr_err_code ndr_pull_lsa_DATA_BUF(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF *r)
{
uint32_t _ptr_data;
+ uint32_t size_data_1 = 0;
+ uint32_t length_data_1 = 0;
TALLOC_CTX *_mem_save_data_0;
{
uint32_t _flags_save_STRUCT = ndr->flags;
@@ -2587,11 +2631,13 @@ static enum ndr_err_code ndr_pull_lsa_DATA_BUF(struct ndr_pull *ndr, int ndr_fla
NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
NDR_CHECK(ndr_pull_array_length(ndr, &r->data));
- if (ndr_get_array_length(ndr, &r->data) > ndr_get_array_size(ndr, &r->data)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->data), ndr_get_array_length(ndr, &r->data));
+ size_data_1 = ndr_get_array_size(ndr, &r->data);
+ length_data_1 = ndr_get_array_length(ndr, &r->data);
+ if (length_data_1 > size_data_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_data_1, length_data_1);
}
- NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_length(ndr, &r->data)));
+ NDR_PULL_ALLOC_N(ndr, r->data, size_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, length_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
}
if (r->data) {
@@ -2650,6 +2696,7 @@ static enum ndr_err_code ndr_push_lsa_DATA_BUF2(struct ndr_push *ndr, int ndr_fl
static enum ndr_err_code ndr_pull_lsa_DATA_BUF2(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF2 *r)
{
uint32_t _ptr_data;
+ uint32_t size_data_1 = 0;
TALLOC_CTX *_mem_save_data_0;
{
uint32_t _flags_save_STRUCT = ndr->flags;
@@ -2672,8 +2719,9 @@ static enum ndr_err_code ndr_pull_lsa_DATA_BUF2(struct ndr_pull *ndr, int ndr_fl
_mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
- NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
+ size_data_1 = ndr_get_array_size(ndr, &r->data);
+ NDR_PULL_ALLOC_N(ndr, r->data, size_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, size_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
}
if (r->data) {
@@ -2875,6 +2923,7 @@ static enum ndr_err_code ndr_push_lsa_TrustDomainInfoControllers(struct ndr_push
static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoControllers(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoControllers *r)
{
uint32_t _ptr_netbios_names;
+ uint32_t size_netbios_names_1 = 0;
uint32_t cntr_netbios_names_1;
TALLOC_CTX *_mem_save_netbios_names_0;
TALLOC_CTX *_mem_save_netbios_names_1;
@@ -2893,13 +2942,14 @@ static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoControllers(struct ndr_pull
_mem_save_netbios_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->netbios_names, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->netbios_names));
- NDR_PULL_ALLOC_N(ndr, r->netbios_names, ndr_get_array_size(ndr, &r->netbios_names));
+ size_netbios_names_1 = ndr_get_array_size(ndr, &r->netbios_names);
+ NDR_PULL_ALLOC_N(ndr, r->netbios_names, size_netbios_names_1);
_mem_save_netbios_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->netbios_names, 0);
- for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
+ for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < size_netbios_names_1; cntr_netbios_names_1++) {
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_names[cntr_netbios_names_1]));
}
- for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < r->entries; cntr_netbios_names_1++) {
+ for (cntr_netbios_names_1 = 0; cntr_netbios_names_1 < size_netbios_names_1; cntr_netbios_names_1++) {
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_names[cntr_netbios_names_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_netbios_names_1, 0);
@@ -3494,6 +3544,7 @@ static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_
static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoEx2Internal *r)
{
uint32_t _ptr_forest_trust_data;
+ uint32_t size_forest_trust_data_1 = 0;
TALLOC_CTX *_mem_save_forest_trust_data_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -3512,8 +3563,9 @@ static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx2Internal(struct ndr_
_mem_save_forest_trust_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->forest_trust_data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->forest_trust_data));
- NDR_PULL_ALLOC_N(ndr, r->forest_trust_data, ndr_get_array_size(ndr, &r->forest_trust_data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->forest_trust_data, ndr_get_array_size(ndr, &r->forest_trust_data)));
+ size_forest_trust_data_1 = ndr_get_array_size(ndr, &r->forest_trust_data);
+ NDR_PULL_ALLOC_N(ndr, r->forest_trust_data, size_forest_trust_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->forest_trust_data, size_forest_trust_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_data_0, 0);
}
if (r->forest_trust_data) {
@@ -3995,6 +4047,7 @@ static enum ndr_err_code ndr_push_lsa_RightSet(struct ndr_push *ndr, int ndr_fla
static enum ndr_err_code ndr_pull_lsa_RightSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_RightSet *r)
{
uint32_t _ptr_names;
+ uint32_t size_names_1 = 0;
uint32_t cntr_names_1;
TALLOC_CTX *_mem_save_names_0;
TALLOC_CTX *_mem_save_names_1;
@@ -4016,13 +4069,14 @@ static enum ndr_err_code ndr_pull_lsa_RightSet(struct ndr_pull *ndr, int ndr_fla
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
- NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
+ size_names_1 = ndr_get_array_size(ndr, &r->names);
+ NDR_PULL_ALLOC_N(ndr, r->names, size_names_1);
_mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
}
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
@@ -4084,6 +4138,7 @@ static enum ndr_err_code ndr_push_lsa_DomainListEx(struct ndr_push *ndr, int ndr
static enum ndr_err_code ndr_pull_lsa_DomainListEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainListEx *r)
{
uint32_t _ptr_domains;
+ uint32_t size_domains_1 = 0;
uint32_t cntr_domains_1;
TALLOC_CTX *_mem_save_domains_0;
TALLOC_CTX *_mem_save_domains_1;
@@ -4102,13 +4157,14 @@ static enum ndr_err_code ndr_pull_lsa_DomainListEx(struct ndr_pull *ndr, int ndr
_mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
- NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
+ size_domains_1 = ndr_get_array_size(ndr, &r->domains);
+ NDR_PULL_ALLOC_N(ndr, r->domains, size_domains_1);
_mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
}
- for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
+ for (cntr_domains_1 = 0; cntr_domains_1 < size_domains_1; cntr_domains_1++) {
NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
@@ -4209,6 +4265,7 @@ static enum ndr_err_code ndr_push_lsa_DomainInfoEfs(struct ndr_push *ndr, int nd
static enum ndr_err_code ndr_pull_lsa_DomainInfoEfs(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoEfs *r)
{
uint32_t _ptr_efs_blob;
+ uint32_t size_efs_blob_1 = 0;
TALLOC_CTX *_mem_save_efs_blob_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -4225,8 +4282,9 @@ static enum ndr_err_code ndr_pull_lsa_DomainInfoEfs(struct ndr_pull *ndr, int nd
_mem_save_efs_blob_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->efs_blob, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->efs_blob));
- NDR_PULL_ALLOC_N(ndr, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob)));
+ size_efs_blob_1 = ndr_get_array_size(ndr, &r->efs_blob);
+ NDR_PULL_ALLOC_N(ndr, r->efs_blob, size_efs_blob_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->efs_blob, size_efs_blob_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_efs_blob_0, 0);
}
if (r->efs_blob) {
@@ -4409,6 +4467,7 @@ static enum ndr_err_code ndr_push_lsa_TransNameArray2(struct ndr_push *ndr, int
static enum ndr_err_code ndr_pull_lsa_TransNameArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray2 *r)
{
uint32_t _ptr_names;
+ uint32_t size_names_1 = 0;
uint32_t cntr_names_1;
TALLOC_CTX *_mem_save_names_0;
TALLOC_CTX *_mem_save_names_1;
@@ -4430,13 +4489,14 @@ static enum ndr_err_code ndr_pull_lsa_TransNameArray2(struct ndr_pull *ndr, int
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
- NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
+ size_names_1 = ndr_get_array_size(ndr, &r->names);
+ NDR_PULL_ALLOC_N(ndr, r->names, size_names_1);
_mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
}
- for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
+ for (cntr_names_1 = 0; cntr_names_1 < size_names_1; cntr_names_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
@@ -4534,6 +4594,7 @@ static enum ndr_err_code ndr_push_lsa_TransSidArray2(struct ndr_push *ndr, int n
static enum ndr_err_code ndr_pull_lsa_TransSidArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray2 *r)
{
uint32_t _ptr_sids;
+ uint32_t size_sids_1 = 0;
uint32_t cntr_sids_1;
TALLOC_CTX *_mem_save_sids_0;
TALLOC_CTX *_mem_save_sids_1;
@@ -4555,10 +4616,11 @@ static enum ndr_err_code ndr_pull_lsa_TransSidArray2(struct ndr_pull *ndr, int n
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
- NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
+ size_sids_1 = ndr_get_array_size(ndr, &r->sids);
+ NDR_PULL_ALLOC_N(ndr, r->sids, size_sids_1);
_mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
- for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
@@ -4680,6 +4742,7 @@ static enum ndr_err_code ndr_push_lsa_TransSidArray3(struct ndr_push *ndr, int n
static enum ndr_err_code ndr_pull_lsa_TransSidArray3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray3 *r)
{
uint32_t _ptr_sids;
+ uint32_t size_sids_1 = 0;
uint32_t cntr_sids_1;
TALLOC_CTX *_mem_save_sids_0;
TALLOC_CTX *_mem_save_sids_1;
@@ -4701,13 +4764,14 @@ static enum ndr_err_code ndr_pull_lsa_TransSidArray3(struct ndr_pull *ndr, int n
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
- NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
+ size_sids_1 = ndr_get_array_size(ndr, &r->sids);
+ NDR_PULL_ALLOC_N(ndr, r->sids, size_sids_1);
_mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
- for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
}
- for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
+ for (cntr_sids_1 = 0; cntr_sids_1 < size_sids_1; cntr_sids_1++) {
NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
@@ -4763,6 +4827,7 @@ static enum ndr_err_code ndr_push_lsa_ForestTrustBinaryData(struct ndr_push *ndr
static enum ndr_err_code ndr_pull_lsa_ForestTrustBinaryData(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustBinaryData *r)
{
uint32_t _ptr_data;
+ uint32_t size_data_1 = 0;
TALLOC_CTX *_mem_save_data_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
@@ -4782,8 +4847,9 @@ static enum ndr_err_code ndr_pull_lsa_ForestTrustBinaryData(struct ndr_pull *ndr
_mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
- NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
+ size_data_1 = ndr_get_array_size(ndr, &r->data);
+ NDR_PULL_ALLOC_N(ndr, r->data, size_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, size_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
}
if (r->data) {
@@ -5091,6 +5157,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_ForestTrustInformation(struct ndr_push *
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_ForestTrustInformation(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustInformation *r)
{
uint32_t _ptr_entries;
+ uint32_t size_entries_1 = 0;
uint32_t cntr_entries_1;
TALLOC_CTX *_mem_save_entries_0;
TALLOC_CTX *_mem_save_entries_1;
@@ -5113,10 +5180,11 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_ForestTrustInformation(struct ndr_pull *
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
- NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
+ size_entries_1 = ndr_get_array_size(ndr, &r->entries);
+ NDR_PULL_ALLOC_N(ndr, r->entries, size_entries_1);
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
- for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
+ for (cntr_entries_1 = 0; cntr_entries_1 < size_entries_1; cntr_entries_1++) {
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
if (_ptr_entries) {
NDR_PULL_ALLOC(ndr, r->entries[cntr_entries_1]);
@@ -5124,7 +5192,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_ForestTrustInformation(struct ndr_pull *
r->entries[cntr_entries_1] = NULL;
}
}
- for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
+ for (cntr_entries_1 = 0; cntr_entries_1 < size_entries_1; cntr_entries_1++) {
if (r->entries[cntr_entries_1]) {
_mem_save_entries_2 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->entries[cntr_entries_1], 0);
@@ -6433,6 +6501,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames(struct ndr_push *ndr, int fl
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, int flags, struct lsa_LookupNames *r)
{
+ uint32_t size_names_0 = 0;
uint32_t cntr_names_0;
uint32_t _ptr_domains;
TALLOC_CTX *_mem_save_handle_0;
@@ -6456,13 +6525,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, int fl
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
}
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
- NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
+ size_names_0 = ndr_get_array_size(ndr, &r->in.names);
+ NDR_PULL_ALLOC_N(ndr, r->in.names, size_names_0);
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
}
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
@@ -9333,6 +9403,8 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, int fl
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy2 *r)
{
uint32_t _ptr_system_name;
+ uint32_t size_system_name_1 = 0;
+ uint32_t length_system_name_1 = 0;
TALLOC_CTX *_mem_save_system_name_0;
TALLOC_CTX *_mem_save_attr_0;
TALLOC_CTX *_mem_save_handle_0;
@@ -9350,11 +9422,13 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, int fl
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
- if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.system_name), ndr_get_array_length(ndr, &r->in.system_name));
+ size_system_name_1 = ndr_get_array_size(ndr, &r->in.system_name);
+ length_system_name_1 = ndr_get_array_length(ndr, &r->in.system_name);
+ if (length_system_name_1 > size_system_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_system_name_1, length_system_name_1);
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_check_string_terminator(ndr, length_system_name_1, sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, length_system_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
@@ -9465,6 +9539,8 @@ static enum ndr_err_code ndr_push_lsa_GetUserName(struct ndr_push *ndr, int flag
static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flags, struct lsa_GetUserName *r)
{
uint32_t _ptr_system_name;
+ uint32_t size_system_name_1 = 0;
+ uint32_t length_system_name_1 = 0;
uint32_t _ptr_account_name;
uint32_t _ptr_authority_name;
TALLOC_CTX *_mem_save_system_name_0;
@@ -9486,11 +9562,13 @@ static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flag
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
- if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.system_name), ndr_get_array_length(ndr, &r->in.system_name));
+ size_system_name_1 = ndr_get_array_size(ndr, &r->in.system_name);
+ length_system_name_1 = ndr_get_array_length(ndr, &r->in.system_name);
+ if (length_system_name_1 > size_system_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_system_name_1, length_system_name_1);
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_check_string_terminator(ndr, length_system_name_1, sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, length_system_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
@@ -10900,6 +10978,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames2(struct ndr_push *ndr, int f
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames2(struct ndr_pull *ndr, int flags, struct lsa_LookupNames2 *r)
{
+ uint32_t size_names_0 = 0;
uint32_t cntr_names_0;
uint32_t _ptr_domains;
TALLOC_CTX *_mem_save_handle_0;
@@ -10923,13 +11002,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames2(struct ndr_pull *ndr, int f
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
}
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
- NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
+ size_names_0 = ndr_get_array_size(ndr, &r->in.names);
+ NDR_PULL_ALLOC_N(ndr, r->in.names, size_names_0);
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
}
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
@@ -11554,6 +11634,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames3(struct ndr_push *ndr, int f
_PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames3(struct ndr_pull *ndr, int flags, struct lsa_LookupNames3 *r)
{
+ uint32_t size_names_0 = 0;
uint32_t cntr_names_0;
uint32_t _ptr_domains;
TALLOC_CTX *_mem_save_handle_0;
@@ -11577,13 +11658,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames3(struct ndr_pull *ndr, int f
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
}
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
- NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
+ size_names_0 = ndr_get_array_size(ndr, &r->in.names);
+ NDR_PULL_ALLOC_N(ndr, r->in.names, size_names_0);
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
}
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
@@ -12300,6 +12382,7 @@ static enum ndr_err_code ndr_push_lsa_LookupNames4(struct ndr_push *ndr, int fla
static enum ndr_err_code ndr_pull_lsa_LookupNames4(struct ndr_pull *ndr, int flags, struct lsa_LookupNames4 *r)
{
+ uint32_t size_names_0 = 0;
uint32_t cntr_names_0;
uint32_t _ptr_domains;
TALLOC_CTX *_mem_save_names_0;
@@ -12315,13 +12398,14 @@ static enum ndr_err_code ndr_pull_lsa_LookupNames4(struct ndr_pull *ndr, int fla
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
}
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
- NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
+ size_names_0 = ndr_get_array_size(ndr, &r->in.names);
+ NDR_PULL_ALLOC_N(ndr, r->in.names, size_names_0);
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
}
- for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
+ for (cntr_names_0 = 0; cntr_names_0 < size_names_0; cntr_names_0++) {
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);