NDR_PRINT_IN_DEBUG(spoolss_CreatePrinterIC, r);
}
+ ZERO_STRUCT(r->out);
+ r->out.gdi_handle = talloc_zero(r, struct policy_handle);
+ if (r->out.gdi_handle == NULL) {
+ talloc_free(r);
+ return false;
+ }
+
r->out.result = _spoolss_CreatePrinterIC(p, r);
if (p->rng_fault_state) {
NDR_PRINT_IN_DEBUG(spoolss_DeletePrinterIC, r);
}
+ ZERO_STRUCT(r->out);
+ r->out.gdi_handle = r->in.gdi_handle;
r->out.result = _spoolss_DeletePrinterIC(p, r);
if (p->rng_fault_state) {
case NDR_SPOOLSS_CREATEPRINTERIC: {
struct spoolss_CreatePrinterIC *r = (struct spoolss_CreatePrinterIC *)_r;
+ ZERO_STRUCT(r->out);
+ r->out.gdi_handle = talloc_zero(mem_ctx, struct policy_handle);
+ if (r->out.gdi_handle == NULL) {
+ return NT_STATUS_NO_MEMORY;
+ }
+
r->out.result = _spoolss_CreatePrinterIC(cli->pipes_struct, r);
return NT_STATUS_OK;
}
case NDR_SPOOLSS_DELETEPRINTERIC: {
struct spoolss_DeletePrinterIC *r = (struct spoolss_DeletePrinterIC *)_r;
+ ZERO_STRUCT(r->out);
+ r->out.gdi_handle = r->in.gdi_handle;
r->out.result = _spoolss_DeletePrinterIC(cli->pipes_struct, r);
return NT_STATUS_OK;
}