diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/rpc_server/srv_spoolss_nt.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c index c7f66bc279..a756eb64cc 100644 --- a/source3/rpc_server/srv_spoolss_nt.c +++ b/source3/rpc_server/srv_spoolss_nt.c @@ -7837,7 +7837,7 @@ WERROR _spoolss_SetPrinterData(pipes_struct *p, r2.in.value_name = r->in.value_name; r2.in.type = r->in.type; r2.in.data = r->in.data; - r2.in._offered = r->in._offered; + r2.in.offered = r->in.offered; return _spoolss_SetPrinterDataEx(p, &r2); } @@ -8770,7 +8770,6 @@ WERROR _spoolss_SetPrinterDataEx(pipes_struct *p, WERROR result = WERR_OK; Printer_entry *Printer = find_printer_index_by_hnd(p, r->in.handle); char *oid_string; - DATA_BLOB blob; DEBUG(4,("_spoolss_SetPrinterDataEx\n")); @@ -8820,12 +8819,6 @@ WERROR _spoolss_SetPrinterDataEx(pipes_struct *p, oid_string++; } - result = push_spoolss_PrinterData(p->mem_ctx, &blob, - r->in.type, &r->in.data); - if (!W_ERROR_IS_OK(result)) { - goto done; - } - /* * When client side code sets a magic printer data key, detect it and save * the current printer data and the magic key's data (its the DEVMODE) for @@ -8833,7 +8826,7 @@ WERROR _spoolss_SetPrinterDataEx(pipes_struct *p, */ if ((r->in.type == REG_BINARY) && strequal(r->in.value_name, PHANTOM_DEVMODE_KEY)) { /* Set devmode and printer initialization info */ - result = save_driver_init(printer, 2, blob.data, blob.length); + result = save_driver_init(printer, 2, r->in.data, r->in.offered); srv_spoolss_reset_printerdata(printer->info_2->drivername); @@ -8843,7 +8836,7 @@ WERROR _spoolss_SetPrinterDataEx(pipes_struct *p, /* save the registry data */ result = set_printer_dataex(printer, r->in.key_name, r->in.value_name, - r->in.type, blob.data, blob.length); + r->in.type, r->in.data, r->in.offered); if (W_ERROR_IS_OK(result)) { /* save the OID if one was specified */ |