NDR_PULL_SET_MEM_CTX(ndr, r->printername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->servername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->servername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->devicename, 32, sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->devicename, MAXDEVICENAME, sizeof(uint16_t), CH_UTF16));
NDR_CHECK(ndr_push_spoolss_DeviceModeSpecVersion(ndr, NDR_SCALARS, r->specversion));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->driverversion));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->size));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->yresolution));
NDR_CHECK(ndr_push_spoolss_DeviceModeTTOption(ndr, NDR_SCALARS, r->ttoption));
NDR_CHECK(ndr_push_spoolss_DeviceModeCollate(ndr, NDR_SCALARS, r->collate));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->formname, 32, sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->formname, MAXDEVICENAME, sizeof(uint16_t), CH_UTF16));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->logpixels));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bitsperpel));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pelswidth));
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->devicename, 32, sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->devicename, MAXDEVICENAME, sizeof(uint16_t), CH_UTF16));
NDR_CHECK(ndr_pull_spoolss_DeviceModeSpecVersion(ndr, NDR_SCALARS, &r->specversion));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->driverversion));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->yresolution));
NDR_CHECK(ndr_pull_spoolss_DeviceModeTTOption(ndr, NDR_SCALARS, &r->ttoption));
NDR_CHECK(ndr_pull_spoolss_DeviceModeCollate(ndr, NDR_SCALARS, &r->collate));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->formname, 32, sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->formname, MAXDEVICENAME, sizeof(uint16_t), CH_UTF16));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->logpixels));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bitsperpel));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pelswidth));
NDR_PULL_SET_MEM_CTX(ndr, r->description, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->description));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_description_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->comment));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->servername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->servername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->printername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->sharename, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->sharename));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sharename_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->portname, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->portname));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_portname_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->drivername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->drivername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_drivername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->comment));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->location, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->location));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_location_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_devmode, 0, -1));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_devmode_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
{
NDR_PULL_SET_MEM_CTX(ndr, r->sepfile, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->sepfile));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sepfile_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->printprocessor, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printprocessor));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printprocessor_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->datatype, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->datatype));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_datatype_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->parameters, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->parameters));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parameters_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_secdesc, 0, -1));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_secdesc_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_secdesc, 0, -1));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_secdesc_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
NDR_PULL_SET_MEM_CTX(ndr, r->printername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->servername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->servername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->printername, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printername));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printername_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->portname, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->portname));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_portname_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->guid, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->guid));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_guid_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_devmode, 0, -1));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_devmode_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
NDR_PULL_SET_MEM_CTX(ndr, r->printer_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printer_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printer_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->server_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->document_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->document_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_document_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_type, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_type));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_type_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->text_status, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->text_status));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_text_status_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->printer_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printer_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printer_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->server_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->document_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->document_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_document_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->notify_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->notify_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_notify_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_type, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_type));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_type_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->print_processor, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->print_processor));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_print_processor_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->parameters, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->parameters));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parameters_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->devmode, 0);
NDR_CHECK(ndr_pull_spoolss_DeviceMode(ndr, NDR_SCALARS, r->devmode));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_devmode_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
{
NDR_PULL_SET_MEM_CTX(ndr, r->text_status, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->text_status));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_text_status_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->secdesc, 0);
NDR_CHECK(ndr_pull_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->secdesc));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_secdesc_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
NDR_PULL_SET_MEM_CTX(ndr, r->printer_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->printer_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_printer_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->server_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->document_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->document_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_document_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->notify_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->notify_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_notify_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_type, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_type));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_type_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->print_processor, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->print_processor));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_print_processor_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->parameters, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->parameters));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parameters_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->devmode, 0);
NDR_CHECK(ndr_pull_spoolss_DeviceMode(ndr, NDR_SCALARS, r->devmode));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_devmode_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
{
NDR_PULL_SET_MEM_CTX(ndr, r->text_status, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->text_status));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_text_status_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->secdesc, 0);
NDR_CHECK(ndr_pull_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->secdesc));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_secdesc_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
ndr->depth--;
}
+_PUBLIC_ void ndr_print_spoolss_StringArray2(struct ndr_print *ndr, const char *name, const struct spoolss_StringArray2 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_StringArray2");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "_ndr_size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?(ndr_size_spoolss_StringArray2(r, ndr->iconv_convenience, ndr->flags) - 4) / 2:r->_ndr_size);
+ ndr_print_string_array(ndr, "string", r->string);
+ ndr->depth--;
+}
+
static enum ndr_err_code ndr_push_spoolss_AddDriverInfo1(struct ndr_push *ndr, int ndr_flags, const struct spoolss_AddDriverInfo1 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->help_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->help_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_help_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->dependent_files, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->dependent_files));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dependent_files_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->default_datatype, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->default_datatype));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_default_datatype_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->help_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->help_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_help_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->dependent_files, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->dependent_files));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dependent_files_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->default_datatype, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->default_datatype));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_default_datatype_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->previous_names, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->previous_names));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_previous_names_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->help_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->help_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_help_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->dependent_files, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->dependent_files));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dependent_files_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->default_datatype, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->default_datatype));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_default_datatype_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->previous_names, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->previous_names));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_previous_names_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->manufacturer_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->manufacturer_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_manufacturer_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->manufacturer_url, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->manufacturer_url));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_manufacturer_url_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->hardware_id, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->hardware_id));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hardware_id_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->provider, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->provider));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_provider_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->architecture, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->architecture));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_architecture_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->driver_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->driver_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_driver_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->data_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->data_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->config_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->config_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_config_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->help_file, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->help_file));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_help_file_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->default_datatype, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->default_datatype));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_default_datatype_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->dependent_files, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->dependent_files));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dependent_files_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->previous_names, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->previous_names));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_previous_names_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->manufacturer_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->manufacturer_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_manufacturer_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->manufacturer_url, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->manufacturer_url));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_manufacturer_url_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->hardware_id, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->hardware_id));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hardware_id_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->provider, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->provider));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_provider_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->print_processor, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->print_processor));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_print_processor_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->vendor_setup, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->vendor_setup));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_vendor_setup_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->color_profiles, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->color_profiles));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_color_profiles_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->inf_path, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->inf_path));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_inf_path_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->core_driver_dependencies, 0);
NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->core_driver_dependencies));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_core_driver_dependencies_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string_array;
NDR_PULL_SET_MEM_CTX(ndr, r->file_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->file_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_file_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->print_processor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->print_processor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_print_processor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->form_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->form_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_form_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->form_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->form_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_form_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->keyword, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->keyword));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_keyword_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->mui_dll, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->mui_dll));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_mui_dll_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->display_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->display_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_display_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->port_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->port_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_port_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->port_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->port_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_port_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->description, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->description));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_description_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->status_string, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->status_string));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_status_string_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->port_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->port_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_port_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->monitor_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->monitor_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_monitor_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->environment, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->environment));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_environment_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->dll_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->dll_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dll_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->name_array, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->name_array));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_array_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_PULL_SET_MEM_CTX(ndr, r->value_name, 0);
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->value_name));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_value_name_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
ndr->flags = _flags_save_string;
NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_data, 0, r->data_length));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
+ if (ndr->offset > ndr->relative_highest_offset) {
+ ndr->relative_highest_offset = ndr->offset;
+ }
ndr->offset = _relative_save_offset;
}
}
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.offered));
}
if (flags & NDR_OUT) {
- {
- uint32_t _flags_save_string_array = ndr->flags;
- ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
- if (r->out.key_buffer == NULL) {
- return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
- }
- NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.key_buffer));
- if (*r->out.key_buffer) {
- {
- struct ndr_push *_ndr_key_buffer;
- NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_key_buffer, 0, r->in.offered));
- NDR_CHECK(ndr_push_string_array(_ndr_key_buffer, NDR_SCALARS, *r->out.key_buffer));
- NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_key_buffer, 0, r->in.offered));
- }
- }
- ndr->flags = _flags_save_string_array;
+ if (r->out.key_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
+ NDR_CHECK(ndr_push_spoolss_StringArray2(ndr, NDR_SCALARS, r->out.key_buffer));
if (r->out.needed == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
_PUBLIC_ enum ndr_err_code ndr_pull_spoolss_EnumPrinterKey(struct ndr_pull *ndr, int flags, struct spoolss_EnumPrinterKey *r)
{
- uint32_t _ptr_key_buffer;
TALLOC_CTX *_mem_save_handle_0;
TALLOC_CTX *_mem_save_key_buffer_0;
- TALLOC_CTX *_mem_save_key_buffer_1;
TALLOC_CTX *_mem_save_needed_0;
if (flags & NDR_IN) {
ZERO_STRUCT(r->out);
ZERO_STRUCTP(r->out.needed);
}
if (flags & NDR_OUT) {
- {
- uint32_t _flags_save_string_array = ndr->flags;
- ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.key_buffer);
- }
- _mem_save_key_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.key_buffer, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_key_buffer));
- if (_ptr_key_buffer) {
- NDR_PULL_ALLOC(ndr, *r->out.key_buffer);
- } else {
- *r->out.key_buffer = NULL;
- }
- if (*r->out.key_buffer) {
- _mem_save_key_buffer_1 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, *r->out.key_buffer, 0);
- {
- struct ndr_pull *_ndr_key_buffer;
- NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_key_buffer, 0, r->in.offered));
- NDR_CHECK(ndr_pull_string_array(_ndr_key_buffer, NDR_SCALARS, r->out.key_buffer));
- NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_key_buffer, 0, r->in.offered));
- }
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_key_buffer_1, 0);
- }
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_key_buffer_0, LIBNDR_FLAG_REF_ALLOC);
- ndr->flags = _flags_save_string_array;
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.key_buffer);
}
+ _mem_save_key_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.key_buffer, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_spoolss_StringArray2(ndr, NDR_SCALARS, r->out.key_buffer));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_key_buffer_0, LIBNDR_FLAG_REF_ALLOC);
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
NDR_PULL_ALLOC(ndr, r->out.needed);
}
ndr->depth++;
ndr_print_ptr(ndr, "key_buffer", r->out.key_buffer);
ndr->depth++;
- ndr_print_ptr(ndr, "key_buffer", *r->out.key_buffer);
- ndr->depth++;
- if (*r->out.key_buffer) {
- ndr_print_string_array(ndr, "key_buffer", *r->out.key_buffer);
- }
- ndr->depth--;
+ ndr_print_spoolss_StringArray2(ndr, "key_buffer", r->out.key_buffer);
ndr->depth--;
ndr_print_ptr(ndr, "needed", r->out.needed);
ndr->depth++;