diff options
-rw-r--r-- | source4/torture/rap/rap.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/source4/torture/rap/rap.c b/source4/torture/rap/rap.c index d39a5c9b29..5feea7da50 100644 --- a/source4/torture/rap/rap.c +++ b/source4/torture/rap/rap.c @@ -552,6 +552,21 @@ static NTSTATUS rap_pull_rap_JobInfo1(TALLOC_CTX *mem_ctx, struct ndr_pull *ndr, return NT_STATUS_OK; } +static NTSTATUS rap_pull_rap_JobInfo2(TALLOC_CTX *mem_ctx, struct ndr_pull *ndr, uint16_t convert, struct rap_PrintJobInfo2 *r) +{ + NDR_RETURN(ndr_pull_uint16(ndr, NDR_SCALARS, &r->JobID)); + NDR_RETURN(ndr_pull_uint16(ndr, NDR_SCALARS, &r->Priority)); + RAP_RETURN(rap_pull_string(mem_ctx, ndr, convert, &r->UserName)); + NDR_RETURN(ndr_pull_uint16(ndr, NDR_SCALARS, &r->JobPosition)); + NDR_RETURN(ndr_pull_rap_PrintJStatusCode(ndr, NDR_SCALARS, &r->JobStatus)); + NDR_RETURN(ndr_pull_time_t(ndr, NDR_SCALARS, &r->TimeSubmitted)); + NDR_RETURN(ndr_pull_uint32(ndr, NDR_SCALARS, &r->JobSize)); + RAP_RETURN(rap_pull_string(mem_ctx, ndr, convert, &r->JobCommentString)); + RAP_RETURN(rap_pull_string(mem_ctx, ndr, convert, &r->DocumentName)); + + return NT_STATUS_OK; +} + static NTSTATUS rap_pull_rap_PrintQueue0(TALLOC_CTX *mem_ctx, struct ndr_pull *ndr, uint16_t convert, struct rap_PrintQueue0 *r) { NDR_RETURN(ndr_pull_charset(ndr, NDR_SCALARS, &r->PrintQName, 13, sizeof(uint8_t), CH_DOS)); @@ -605,6 +620,14 @@ static NTSTATUS rap_pull_rap_PrintQueue3(TALLOC_CTX *mem_ctx, struct ndr_pull *n return NT_STATUS_OK; } +static NTSTATUS rap_pull_rap_PrintQueue4(TALLOC_CTX *mem_ctx, struct ndr_pull *ndr, uint16_t convert, struct rap_PrintQueue4 *r) +{ + RAP_RETURN(rap_pull_rap_PrintQueue3(mem_ctx, ndr, convert, &r->queue)); + RAP_RETURN(rap_pull_rap_JobInfo2(mem_ctx, ndr, convert, &r->job)); + + return NT_STATUS_OK; +} + static NTSTATUS rap_pull_rap_PrintQueue5(TALLOC_CTX *mem_ctx, struct ndr_pull *ndr, uint16_t convert, struct rap_PrintQueue5 *r) { RAP_RETURN(rap_pull_string(mem_ctx, ndr, convert, &r->PrintQueueName)); @@ -690,6 +713,9 @@ NTSTATUS smbcli_rap_netprintqenum(struct smbcli_tree *tree, case 3: result = rap_pull_rap_PrintQueue3(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info[i].info3); break; + case 4: + result = rap_pull_rap_PrintQueue4(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info[i].info4); + break; case 5: result = rap_pull_rap_PrintQueue5(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info[i].info5); break; @@ -780,6 +806,9 @@ NTSTATUS smbcli_rap_netprintqgetinfo(struct smbcli_tree *tree, case 3: result = rap_pull_rap_PrintQueue3(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info.info3); break; + case 4: + result = rap_pull_rap_PrintQueue4(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info.info4); + break; case 5: result = rap_pull_rap_PrintQueue5(mem_ctx, call->ndr_pull_data, r->out.convert, &r->out.info.info5); break; |