diff options
-rw-r--r-- | librpc/gen_ndr/cli_spoolss.c | 2 | ||||
-rw-r--r-- | librpc/gen_ndr/cli_spoolss.h | 2 | ||||
-rw-r--r-- | librpc/gen_ndr/ndr_spoolss.c | 8 | ||||
-rw-r--r-- | librpc/gen_ndr/spoolss.h | 2 | ||||
-rw-r--r-- | librpc/idl/spoolss.idl | 2 |
5 files changed, 4 insertions, 12 deletions
diff --git a/librpc/gen_ndr/cli_spoolss.c b/librpc/gen_ndr/cli_spoolss.c index 18086843ca..3a6b53f6af 100644 --- a/librpc/gen_ndr/cli_spoolss.c +++ b/librpc/gen_ndr/cli_spoolss.c @@ -3370,7 +3370,7 @@ NTSTATUS rpccli_spoolss_EnumPrinterData(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, struct policy_handle *handle /* [in] [ref] */, uint32_t enum_index /* [in] */, - const char *value_name /* [out] [ref,charset(UTF16),size_is(value_offered/2)] */, + const char *value_name /* [out] [charset(UTF16),size_is(value_offered/2)] */, uint32_t value_offered /* [in] */, uint32_t *value_needed /* [out] [ref] */, uint32_t *printerdata_type /* [out] [ref] */, diff --git a/librpc/gen_ndr/cli_spoolss.h b/librpc/gen_ndr/cli_spoolss.h index 516c2c069d..2447f18025 100644 --- a/librpc/gen_ndr/cli_spoolss.h +++ b/librpc/gen_ndr/cli_spoolss.h @@ -412,7 +412,7 @@ NTSTATUS rpccli_spoolss_EnumPrinterData(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, struct policy_handle *handle /* [in] [ref] */, uint32_t enum_index /* [in] */, - const char *value_name /* [out] [ref,charset(UTF16),size_is(value_offered/2)] */, + const char *value_name /* [out] [charset(UTF16),size_is(value_offered/2)] */, uint32_t value_offered /* [in] */, uint32_t *value_needed /* [out] [ref] */, uint32_t *printerdata_type /* [out] [ref] */, diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c index 806f8ce83f..8c23069be6 100644 --- a/librpc/gen_ndr/ndr_spoolss.c +++ b/librpc/gen_ndr/ndr_spoolss.c @@ -15247,9 +15247,6 @@ static enum ndr_err_code ndr_push_spoolss_EnumPrinterData(struct ndr_push *ndr, NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.data_offered)); } if (flags & NDR_OUT) { - if (r->out.value_name == NULL) { - return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); - } NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.value_offered / 2)); NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->out.value_name, r->in.value_offered / 2, sizeof(uint16_t), CH_UTF16)); if (r->out.value_needed == NULL) { @@ -15293,8 +15290,6 @@ static enum ndr_err_code ndr_pull_spoolss_EnumPrinterData(struct ndr_pull *ndr, NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.enum_index)); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.value_offered)); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.data_offered)); - NDR_PULL_ALLOC_N(ndr, r->out.value_name, r->in.value_offered / 2); - memset(r->out.value_name, 0, (r->in.value_offered / 2) * sizeof(*r->out.value_name)); NDR_PULL_ALLOC(ndr, r->out.value_needed); ZERO_STRUCTP(r->out.value_needed); NDR_PULL_ALLOC(ndr, r->out.printerdata_type); @@ -15365,10 +15360,7 @@ _PUBLIC_ void ndr_print_spoolss_EnumPrinterData(struct ndr_print *ndr, const cha if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "spoolss_EnumPrinterData"); ndr->depth++; - ndr_print_ptr(ndr, "value_name", r->out.value_name); - ndr->depth++; ndr_print_string(ndr, "value_name", r->out.value_name); - ndr->depth--; ndr_print_ptr(ndr, "value_needed", r->out.value_needed); ndr->depth++; ndr_print_uint32(ndr, "value_needed", *r->out.value_needed); diff --git a/librpc/gen_ndr/spoolss.h b/librpc/gen_ndr/spoolss.h index 36950b0f64..33f6042bd8 100644 --- a/librpc/gen_ndr/spoolss.h +++ b/librpc/gen_ndr/spoolss.h @@ -1961,7 +1961,7 @@ struct spoolss_EnumPrinterData { } in; struct { - const char *value_name;/* [ref,charset(UTF16),size_is(value_offered/2)] */ + const char *value_name;/* [charset(UTF16),size_is(value_offered/2)] */ uint32_t *value_needed;/* [ref] */ uint32_t *printerdata_type;/* [ref] */ DATA_BLOB *buffer;/* [ref] */ diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl index 09646c9d67..bb2bb3d50a 100644 --- a/librpc/idl/spoolss.idl +++ b/librpc/idl/spoolss.idl @@ -1478,7 +1478,7 @@ import "misc.idl", "security.idl", "winreg.idl"; WERROR spoolss_EnumPrinterData( [in,ref] policy_handle *handle, [in] uint32 enum_index, - [out,ref,size_is(value_offered/2),charset(UTF16)] uint16 *value_name, + [out,size_is(value_offered/2),charset(UTF16)] uint16 value_name[], [in] uint32 value_offered, [out,ref] uint32 *value_needed, [out,ref] uint32 *printerdata_type, |