diff options
Diffstat (limited to 'librpc/gen_ndr/cli_spoolss.c')
-rw-r--r-- | librpc/gen_ndr/cli_spoolss.c | 58 |
1 files changed, 30 insertions, 28 deletions
diff --git a/librpc/gen_ndr/cli_spoolss.c b/librpc/gen_ndr/cli_spoolss.c index 2aa42b93bf..2e0582e088 100644 --- a/librpc/gen_ndr/cli_spoolss.c +++ b/librpc/gen_ndr/cli_spoolss.c @@ -14,7 +14,7 @@ NTSTATUS rpccli_spoolss_EnumPrinters(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_PrinterInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_PrinterInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -52,9 +52,7 @@ NTSTATUS rpccli_spoolss_EnumPrinters(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -231,7 +229,7 @@ NTSTATUS rpccli_spoolss_EnumJobs(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_JobInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_JobInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -270,9 +268,7 @@ NTSTATUS rpccli_spoolss_EnumJobs(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -526,7 +522,7 @@ NTSTATUS rpccli_spoolss_EnumPrinterDrivers(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_DriverInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_DriverInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -564,9 +560,7 @@ NTSTATUS rpccli_spoolss_EnumPrinterDrivers(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -779,7 +773,7 @@ NTSTATUS rpccli_spoolss_EnumPrintProcessors(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_PrintProcessorInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_PrintProcessorInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -817,9 +811,7 @@ NTSTATUS rpccli_spoolss_EnumPrintProcessors(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -1699,7 +1691,7 @@ NTSTATUS rpccli_spoolss_EnumForms(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_FormInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_FormInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -1736,9 +1728,7 @@ NTSTATUS rpccli_spoolss_EnumForms(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -1756,7 +1746,7 @@ NTSTATUS rpccli_spoolss_EnumPorts(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_PortInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_PortInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -1793,9 +1783,7 @@ NTSTATUS rpccli_spoolss_EnumPorts(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -1813,7 +1801,7 @@ NTSTATUS rpccli_spoolss_EnumMonitors(struct rpc_pipe_client *cli, DATA_BLOB *buffer /* [in] [unique] */, uint32_t offered /* [in] */, uint32_t *count /* [out] [ref] */, - union spoolss_MonitorInfo *info /* [out] [unique,switch_is(level),size_is(*count)] */, + union spoolss_MonitorInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, uint32_t *needed /* [out] [ref] */, WERROR *werror) { @@ -1850,9 +1838,7 @@ NTSTATUS rpccli_spoolss_EnumMonitors(struct rpc_pipe_client *cli, /* Return variables */ *count = *r.out.count; - if (info && r.out.info) { - memcpy(info, r.out.info, *count * sizeof(*info)); - } + *info = *r.out.info; *needed = *r.out.needed; /* Return result */ @@ -2445,12 +2431,25 @@ NTSTATUS rpccli_spoolss_DeletePrintProvidor(struct rpc_pipe_client *cli, NTSTATUS rpccli_spoolss_EnumPrintProcDataTypes(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, + const char *servername /* [in] [unique,charset(UTF16)] */, + const char *print_processor_name /* [in] [unique,charset(UTF16)] */, + uint32_t level /* [in] */, + DATA_BLOB *buffer /* [in] [unique] */, + uint32_t offered /* [in] */, + uint32_t *count /* [out] [ref] */, + union spoolss_PrintProcDataTypesInfo **info /* [out] [ref,switch_is(level),size_is(,*count)] */, + uint32_t *needed /* [out] [ref] */, WERROR *werror) { struct spoolss_EnumPrintProcDataTypes r; NTSTATUS status; /* In parameters */ + r.in.servername = servername; + r.in.print_processor_name = print_processor_name; + r.in.level = level; + r.in.buffer = buffer; + r.in.offered = offered; if (DEBUGLEVEL >= 10) { NDR_PRINT_IN_DEBUG(spoolss_EnumPrintProcDataTypes, &r); @@ -2475,6 +2474,9 @@ NTSTATUS rpccli_spoolss_EnumPrintProcDataTypes(struct rpc_pipe_client *cli, } /* Return variables */ + *count = *r.out.count; + *info = *r.out.info; + *needed = *r.out.needed; /* Return result */ if (werror) { |