#include "librpc/gen_ndr/ndr_lsa.h"
#include "librpc/gen_ndr/ndr_security.h"
+#include "librpc/gen_ndr/ndr_misc.h"
static enum ndr_err_code ndr_push_winreg_AccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
{
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
ndr->depth--;
}
-_PUBLIC_ enum ndr_err_code ndr_push_winreg_Type(struct ndr_push *ndr, int ndr_flags, enum winreg_Type r)
-{
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ enum ndr_err_code ndr_pull_winreg_Type(struct ndr_pull *ndr, int ndr_flags, enum winreg_Type *r)
-{
- uint32_t v;
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
- *r = v;
- return NDR_ERR_SUCCESS;
-}
-
-_PUBLIC_ void ndr_print_winreg_Type(struct ndr_print *ndr, const char *name, enum winreg_Type r)
-{
- const char *val = NULL;
-
- switch (r) {
- case REG_NONE: val = "REG_NONE"; break;
- case REG_SZ: val = "REG_SZ"; break;
- case REG_EXPAND_SZ: val = "REG_EXPAND_SZ"; break;
- case REG_BINARY: val = "REG_BINARY"; break;
- case REG_DWORD: val = "REG_DWORD"; break;
- case REG_DWORD_BIG_ENDIAN: val = "REG_DWORD_BIG_ENDIAN"; break;
- case REG_LINK: val = "REG_LINK"; break;
- case REG_MULTI_SZ: val = "REG_MULTI_SZ"; break;
- case REG_RESOURCE_LIST: val = "REG_RESOURCE_LIST"; break;
- case REG_FULL_RESOURCE_DESCRIPTOR: val = "REG_FULL_RESOURCE_DESCRIPTOR"; break;
- case REG_RESOURCE_REQUIREMENTS_LIST: val = "REG_RESOURCE_REQUIREMENTS_LIST"; break;
- case REG_QWORD: val = "REG_QWORD"; break;
- }
- ndr_print_enum(ndr, name, "ENUM", val, r);
-}
-
_PUBLIC_ enum ndr_err_code ndr_push_winreg_String(struct ndr_push *ndr, int ndr_flags, const struct winreg_String *r)
{
if (ndr_flags & NDR_SCALARS) {
_PUBLIC_ enum ndr_err_code ndr_pull_winreg_String(struct ndr_pull *ndr, int ndr_flags, struct winreg_String *r)
{
uint32_t _ptr_name;
+ uint32_t size_name_1 = 0;
+ uint32_t length_name_1 = 0;
TALLOC_CTX *_mem_save_name_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
- if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->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->name), ndr_get_array_length(ndr, &r->name));
+ size_name_1 = ndr_get_array_size(ndr, &r->name);
+ length_name_1 = ndr_get_array_length(ndr, &r->name);
+ if (length_name_1 > size_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_check_string_terminator(ndr, length_name_1, sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, length_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
}
}
static enum ndr_err_code ndr_pull_KeySecurityData(struct ndr_pull *ndr, int ndr_flags, struct KeySecurityData *r)
{
uint32_t _ptr_data;
+ uint32_t size_data_1 = 0;
+ uint32_t length_data_1 = 0;
TALLOC_CTX *_mem_save_data_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
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) {
static enum ndr_err_code ndr_pull_winreg_StringBuf(struct ndr_pull *ndr, int ndr_flags, struct winreg_StringBuf *r)
{
uint32_t _ptr_name;
+ uint32_t size_name_1 = 0;
+ uint32_t length_name_1 = 0;
TALLOC_CTX *_mem_save_name_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
- if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->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->name), ndr_get_array_length(ndr, &r->name));
+ size_name_1 = ndr_get_array_size(ndr, &r->name);
+ length_name_1 = ndr_get_array_length(ndr, &r->name);
+ if (length_name_1 > size_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, length_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
}
if (r->name) {
static enum ndr_err_code ndr_pull_winreg_ValNameBuf(struct ndr_pull *ndr, int ndr_flags, struct winreg_ValNameBuf *r)
{
uint32_t _ptr_name;
+ uint32_t size_name_1 = 0;
+ uint32_t length_name_1 = 0;
TALLOC_CTX *_mem_save_name_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
- if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->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->name), ndr_get_array_length(ndr, &r->name));
+ size_name_1 = ndr_get_array_size(ndr, &r->name);
+ length_name_1 = ndr_get_array_length(ndr, &r->name);
+ if (length_name_1 > size_name_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
}
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, length_name_1, sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
}
if (r->name) {
{
uint32_t _ptr_type;
uint32_t _ptr_value;
+ uint32_t size_value_1 = 0;
+ uint32_t length_value_1 = 0;
uint32_t _ptr_size;
uint32_t _ptr_length;
TALLOC_CTX *_mem_save_handle_0;
NDR_PULL_SET_MEM_CTX(ndr, r->in.value, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.value));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.value));
- if (ndr_get_array_length(ndr, &r->in.value) > ndr_get_array_size(ndr, &r->in.value)) {
- 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.value), ndr_get_array_length(ndr, &r->in.value));
+ size_value_1 = ndr_get_array_size(ndr, &r->in.value);
+ length_value_1 = ndr_get_array_length(ndr, &r->in.value);
+ if (length_value_1 > size_value_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_value_1, length_value_1);
}
- NDR_PULL_ALLOC_N(ndr, r->in.value, ndr_get_array_size(ndr, &r->in.value));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.value, ndr_get_array_length(ndr, &r->in.value)));
+ NDR_PULL_ALLOC_N(ndr, r->in.value, size_value_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.value, length_value_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_value_0, 0);
}
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_size));
NDR_PULL_SET_MEM_CTX(ndr, r->out.value, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->out.value));
NDR_CHECK(ndr_pull_array_length(ndr, &r->out.value));
- if (ndr_get_array_length(ndr, &r->out.value) > ndr_get_array_size(ndr, &r->out.value)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->out.value), ndr_get_array_length(ndr, &r->out.value));
+ size_value_1 = ndr_get_array_size(ndr, &r->out.value);
+ length_value_1 = ndr_get_array_length(ndr, &r->out.value);
+ if (length_value_1 > size_value_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_value_1, length_value_1);
}
- NDR_PULL_ALLOC_N(ndr, r->out.value, ndr_get_array_size(ndr, &r->out.value));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.value, ndr_get_array_length(ndr, &r->out.value)));
+ NDR_PULL_ALLOC_N(ndr, r->out.value, size_value_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.value, length_value_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_value_0, 0);
}
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_size));
{
uint32_t _ptr_type;
uint32_t _ptr_data;
+ uint32_t size_data_1 = 0;
+ uint32_t length_data_1 = 0;
uint32_t _ptr_data_size;
uint32_t _ptr_data_length;
TALLOC_CTX *_mem_save_handle_0;
NDR_PULL_SET_MEM_CTX(ndr, r->in.data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.data));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.data));
- if (ndr_get_array_length(ndr, &r->in.data) > ndr_get_array_size(ndr, &r->in.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->in.data), ndr_get_array_length(ndr, &r->in.data));
+ size_data_1 = ndr_get_array_size(ndr, &r->in.data);
+ length_data_1 = ndr_get_array_length(ndr, &r->in.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->in.data, ndr_get_array_size(ndr, &r->in.data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.data, ndr_get_array_length(ndr, &r->in.data)));
+ NDR_PULL_ALLOC_N(ndr, r->in.data, size_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.data, length_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
}
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_size));
NDR_PULL_SET_MEM_CTX(ndr, r->out.data, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->out.data));
NDR_CHECK(ndr_pull_array_length(ndr, &r->out.data));
- if (ndr_get_array_length(ndr, &r->out.data) > ndr_get_array_size(ndr, &r->out.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->out.data), ndr_get_array_length(ndr, &r->out.data));
+ size_data_1 = ndr_get_array_size(ndr, &r->out.data);
+ length_data_1 = ndr_get_array_length(ndr, &r->out.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->out.data, ndr_get_array_size(ndr, &r->out.data));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.data, ndr_get_array_length(ndr, &r->out.data)));
+ NDR_PULL_ALLOC_N(ndr, r->out.data, size_data_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.data, length_data_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
}
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_size));
static enum ndr_err_code ndr_pull_winreg_SetValue(struct ndr_pull *ndr, int flags, struct winreg_SetValue *r)
{
+ uint32_t size_data_1 = 0;
TALLOC_CTX *_mem_save_handle_0;
if (flags & NDR_IN) {
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
NDR_CHECK(ndr_pull_winreg_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
NDR_CHECK(ndr_pull_winreg_Type(ndr, NDR_SCALARS, &r->in.type));
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.data));
+ size_data_1 = ndr_get_array_size(ndr, &r->in.data);
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC_N(ndr, r->in.data, ndr_get_array_size(ndr, &r->in.data));
+ NDR_PULL_ALLOC_N(ndr, r->in.data, size_data_1);
}
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.data, ndr_get_array_size(ndr, &r->in.data)));
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.data, size_data_1));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.size));
if (r->in.data) {
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.data, r->in.size));
_PUBLIC_ enum ndr_err_code ndr_pull_winreg_QueryMultipleValues(struct ndr_pull *ndr, int flags, struct winreg_QueryMultipleValues *r)
{
+ uint32_t size_values_1 = 0;
+ uint32_t length_values_1 = 0;
uint32_t cntr_values_1;
uint32_t _ptr_buffer;
+ uint32_t size_buffer_1 = 0;
+ uint32_t length_buffer_1 = 0;
TALLOC_CTX *_mem_save_key_handle_0;
TALLOC_CTX *_mem_save_values_1;
TALLOC_CTX *_mem_save_buffer_0;
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_key_handle_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.values));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.values));
- if (ndr_get_array_length(ndr, &r->in.values) > ndr_get_array_size(ndr, &r->in.values)) {
- 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.values), ndr_get_array_length(ndr, &r->in.values));
+ size_values_1 = ndr_get_array_size(ndr, &r->in.values);
+ length_values_1 = ndr_get_array_length(ndr, &r->in.values);
+ if (length_values_1 > size_values_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_values_1, length_values_1);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC_N(ndr, r->in.values, ndr_get_array_size(ndr, &r->in.values));
+ NDR_PULL_ALLOC_N(ndr, r->in.values, size_values_1);
}
- memcpy(r->out.values, r->in.values, ndr_get_array_size(ndr, &r->in.values) * sizeof(*r->in.values));
+ memcpy(r->out.values, r->in.values, (size_values_1) * sizeof(*r->in.values));
_mem_save_values_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->in.values, 0);
- for (cntr_values_1 = 0; cntr_values_1 < r->in.num_values; cntr_values_1++) {
+ for (cntr_values_1 = 0; cntr_values_1 < length_values_1; cntr_values_1++) {
NDR_CHECK(ndr_pull_QueryMultipleValue(ndr, NDR_SCALARS, &r->in.values[cntr_values_1]));
}
- for (cntr_values_1 = 0; cntr_values_1 < r->in.num_values; cntr_values_1++) {
+ for (cntr_values_1 = 0; cntr_values_1 < length_values_1; cntr_values_1++) {
NDR_CHECK(ndr_pull_QueryMultipleValue(ndr, NDR_BUFFERS, &r->in.values[cntr_values_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_values_1, 0);
NDR_PULL_SET_MEM_CTX(ndr, r->in.buffer, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.buffer));
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.buffer));
- if (ndr_get_array_length(ndr, &r->in.buffer) > ndr_get_array_size(ndr, &r->in.buffer)) {
- 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.buffer), ndr_get_array_length(ndr, &r->in.buffer));
+ size_buffer_1 = ndr_get_array_size(ndr, &r->in.buffer);
+ length_buffer_1 = ndr_get_array_length(ndr, &r->in.buffer);
+ if (length_buffer_1 > size_buffer_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_buffer_1, length_buffer_1);
}
- NDR_PULL_ALLOC_N(ndr, r->in.buffer, ndr_get_array_size(ndr, &r->in.buffer));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.buffer, ndr_get_array_length(ndr, &r->in.buffer)));
+ NDR_PULL_ALLOC_N(ndr, r->in.buffer, size_buffer_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.buffer, length_buffer_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffer_0, 0);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_array_size(ndr, &r->out.values));
NDR_CHECK(ndr_pull_array_length(ndr, &r->out.values));
- if (ndr_get_array_length(ndr, &r->out.values) > ndr_get_array_size(ndr, &r->out.values)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->out.values), ndr_get_array_length(ndr, &r->out.values));
+ size_values_1 = ndr_get_array_size(ndr, &r->out.values);
+ length_values_1 = ndr_get_array_length(ndr, &r->out.values);
+ if (length_values_1 > size_values_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_values_1, length_values_1);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC_N(ndr, r->out.values, ndr_get_array_size(ndr, &r->out.values));
+ NDR_PULL_ALLOC_N(ndr, r->out.values, size_values_1);
}
- memcpy(r->out.values, r->in.values, ndr_get_array_size(ndr, &r->out.values) * sizeof(*r->in.values));
+ memcpy(r->out.values, r->in.values, (size_values_1) * sizeof(*r->in.values));
_mem_save_values_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->out.values, 0);
- for (cntr_values_1 = 0; cntr_values_1 < r->in.num_values; cntr_values_1++) {
+ for (cntr_values_1 = 0; cntr_values_1 < length_values_1; cntr_values_1++) {
NDR_CHECK(ndr_pull_QueryMultipleValue(ndr, NDR_SCALARS, &r->out.values[cntr_values_1]));
}
- for (cntr_values_1 = 0; cntr_values_1 < r->in.num_values; cntr_values_1++) {
+ for (cntr_values_1 = 0; cntr_values_1 < length_values_1; cntr_values_1++) {
NDR_CHECK(ndr_pull_QueryMultipleValue(ndr, NDR_BUFFERS, &r->out.values[cntr_values_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_values_1, 0);
NDR_PULL_SET_MEM_CTX(ndr, r->out.buffer, 0);
NDR_CHECK(ndr_pull_array_size(ndr, &r->out.buffer));
NDR_CHECK(ndr_pull_array_length(ndr, &r->out.buffer));
- if (ndr_get_array_length(ndr, &r->out.buffer) > ndr_get_array_size(ndr, &r->out.buffer)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->out.buffer), ndr_get_array_length(ndr, &r->out.buffer));
+ size_buffer_1 = ndr_get_array_size(ndr, &r->out.buffer);
+ length_buffer_1 = ndr_get_array_length(ndr, &r->out.buffer);
+ if (length_buffer_1 > size_buffer_1) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_buffer_1, length_buffer_1);
}
- NDR_PULL_ALLOC_N(ndr, r->out.buffer, ndr_get_array_size(ndr, &r->out.buffer));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.buffer, ndr_get_array_length(ndr, &r->out.buffer)));
+ NDR_PULL_ALLOC_N(ndr, r->out.buffer, size_buffer_1);
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.buffer, length_buffer_1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffer_0, 0);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {