summaryrefslogtreecommitdiff
path: root/librpc/gen_ndr/srv_spoolss.c
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-02-06 13:57:13 +0100
committerGünther Deschner <gd@samba.org>2009-02-06 14:59:20 +0100
commitcf15c687d279d3807caa90560d8799d6b00f005b (patch)
treef4d4c4ebc9219ade6c1a2c4272978e646bda48d2 /librpc/gen_ndr/srv_spoolss.c
parent37c89c143009f1c6e0dae819bf08baaeca81df7d (diff)
downloadsamba-cf15c687d279d3807caa90560d8799d6b00f005b.tar.gz
samba-cf15c687d279d3807caa90560d8799d6b00f005b.tar.bz2
samba-cf15c687d279d3807caa90560d8799d6b00f005b.zip
s3: re-run make samba3-idl.
Guenther
Diffstat (limited to 'librpc/gen_ndr/srv_spoolss.c')
-rw-r--r--librpc/gen_ndr/srv_spoolss.c47
1 files changed, 18 insertions, 29 deletions
diff --git a/librpc/gen_ndr/srv_spoolss.c b/librpc/gen_ndr/srv_spoolss.c
index abf49766a4..1f7d29f39f 100644
--- a/librpc/gen_ndr/srv_spoolss.c
+++ b/librpc/gen_ndr/srv_spoolss.c
@@ -1787,7 +1787,7 @@ static bool api_spoolss_ReadPrinter(pipes_struct *p)
}
ZERO_STRUCT(r->out);
- r->out.data = talloc_zero(r, DATA_BLOB);
+ r->out.data = talloc_zero_array(r, uint8_t, r->in.data_size);
if (r->out.data == NULL) {
talloc_free(r);
return false;
@@ -6064,7 +6064,7 @@ static bool api_spoolss_GetPrinterDataEx(pipes_struct *p)
return false;
}
- r->out.buffer = talloc_zero(r, DATA_BLOB);
+ r->out.buffer = talloc_zero_array(r, uint8_t, r->in.offered);
if (r->out.buffer == NULL) {
talloc_free(r);
return false;
@@ -6150,7 +6150,7 @@ static bool api_spoolss_EnumPrinterDataEx(pipes_struct *p)
}
ZERO_STRUCT(r->out);
- r->out.buffer = talloc_zero(r, DATA_BLOB);
+ r->out.buffer = talloc_zero_array(r, uint8_t, r->in.offered);
if (r->out.buffer == NULL) {
talloc_free(r);
return false;
@@ -6242,15 +6242,14 @@ static bool api_spoolss_EnumPrinterKey(pipes_struct *p)
}
ZERO_STRUCT(r->out);
- r->out.needed = r->in.needed;
- r->out.key_buffer_size = talloc_zero(r, uint32_t);
- if (r->out.key_buffer_size == NULL) {
+ r->out.key_buffer = talloc_zero_array(r, uint16_t, r->in.key_buffer_size / 2);
+ if (r->out.key_buffer == NULL) {
talloc_free(r);
return false;
}
- r->out.key_buffer = talloc_zero_array(r, uint16_t, r->out.key_buffer_size);
- if (r->out.key_buffer == NULL) {
+ r->out.needed = talloc_zero(r, uint32_t);
+ if (r->out.needed == NULL) {
talloc_free(r);
return false;
}
@@ -6840,7 +6839,8 @@ static bool api_spoolss_XcvData(pipes_struct *p)
}
ZERO_STRUCT(r->out);
- r->out.out_data = talloc_zero(r, DATA_BLOB);
+ r->out.status_code = r->in.status_code;
+ r->out.out_data = talloc_zero_array(r, uint8_t, r->in.out_data_size);
if (r->out.out_data == NULL) {
talloc_free(r);
return false;
@@ -6852,12 +6852,6 @@ static bool api_spoolss_XcvData(pipes_struct *p)
return false;
}
- r->out.unknown2 = talloc_zero(r, uint32_t);
- if (r->out.unknown2 == NULL) {
- talloc_free(r);
- return false;
- }
-
r->out.result = _spoolss_XcvData(p, r);
if (p->rng_fault_state) {
@@ -7770,7 +7764,7 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
case NDR_SPOOLSS_READPRINTER: {
struct spoolss_ReadPrinter *r = (struct spoolss_ReadPrinter *)_r;
ZERO_STRUCT(r->out);
- r->out.data = talloc_zero(mem_ctx, DATA_BLOB);
+ r->out.data = talloc_zero_array(mem_ctx, uint8_t, r->in.data_size);
if (r->out.data == NULL) {
return NT_STATUS_NO_MEMORY;
}
@@ -8266,7 +8260,7 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
return NT_STATUS_NO_MEMORY;
}
- r->out.buffer = talloc_zero(mem_ctx, DATA_BLOB);
+ r->out.buffer = talloc_zero_array(mem_ctx, uint8_t, r->in.offered);
if (r->out.buffer == NULL) {
return NT_STATUS_NO_MEMORY;
}
@@ -8283,7 +8277,7 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
case NDR_SPOOLSS_ENUMPRINTERDATAEX: {
struct spoolss_EnumPrinterDataEx *r = (struct spoolss_EnumPrinterDataEx *)_r;
ZERO_STRUCT(r->out);
- r->out.buffer = talloc_zero(mem_ctx, DATA_BLOB);
+ r->out.buffer = talloc_zero_array(mem_ctx, uint8_t, r->in.offered);
if (r->out.buffer == NULL) {
return NT_STATUS_NO_MEMORY;
}
@@ -8305,14 +8299,13 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
case NDR_SPOOLSS_ENUMPRINTERKEY: {
struct spoolss_EnumPrinterKey *r = (struct spoolss_EnumPrinterKey *)_r;
ZERO_STRUCT(r->out);
- r->out.needed = r->in.needed;
- r->out.key_buffer_size = talloc_zero(mem_ctx, uint32_t);
- if (r->out.key_buffer_size == NULL) {
+ r->out.key_buffer = talloc_zero_array(mem_ctx, uint16_t, r->in.key_buffer_size / 2);
+ if (r->out.key_buffer == NULL) {
return NT_STATUS_NO_MEMORY;
}
- r->out.key_buffer = talloc_zero_array(mem_ctx, uint16_t, r->out.key_buffer_size);
- if (r->out.key_buffer == NULL) {
+ r->out.needed = talloc_zero(mem_ctx, uint32_t);
+ if (r->out.needed == NULL) {
return NT_STATUS_NO_MEMORY;
}
@@ -8365,7 +8358,8 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
case NDR_SPOOLSS_XCVDATA: {
struct spoolss_XcvData *r = (struct spoolss_XcvData *)_r;
ZERO_STRUCT(r->out);
- r->out.out_data = talloc_zero(mem_ctx, DATA_BLOB);
+ r->out.status_code = r->in.status_code;
+ r->out.out_data = talloc_zero_array(mem_ctx, uint8_t, r->in.out_data_size);
if (r->out.out_data == NULL) {
return NT_STATUS_NO_MEMORY;
}
@@ -8375,11 +8369,6 @@ NTSTATUS rpc_spoolss_dispatch(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
return NT_STATUS_NO_MEMORY;
}
- r->out.unknown2 = talloc_zero(mem_ctx, uint32_t);
- if (r->out.unknown2 == NULL) {
- return NT_STATUS_NO_MEMORY;
- }
-
r->out.result = _spoolss_XcvData(cli->pipes_struct, r);
return NT_STATUS_OK;
}