The branch, master has been updated
via 6a13c02... rap: let the rap print function be autogenerated again.
via 16e2185... s3: re-run make samba3-idl.
via 62ef9ad... rap: use astring in IDL.
from 6156a4b... s4-smbtorture: test all levels in test_netprintqgetinfo
and test_netprintqenum.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 6a13c028a94772b66788f2a213e8c09707ee6596
Author: Günther Deschner <[email protected]>
Date: Fri Apr 30 01:11:44 2010 +0200
rap: let the rap print function be autogenerated again.
Guenther
commit 16e2185731afe482b3f12427253101efd3ad36c5
Author: Günther Deschner <[email protected]>
Date: Fri Apr 30 01:21:13 2010 +0200
s3: re-run make samba3-idl.
Guenther
commit 62ef9ad581df87012858d88dcc30192ad29f46dc
Author: Günther Deschner <[email protected]>
Date: Thu Apr 29 23:27:27 2010 +0200
rap: use astring in IDL.
Guenther
-----------------------------------------------------------------------
Summary of changes:
librpc/gen_ndr/ndr_rap.c | 1749 +++++++++++++++++++++++++++-------------------
librpc/gen_ndr/ndr_rap.h | 4 +
librpc/gen_ndr/rap.h | 96 ++--
librpc/idl/rap.idl | 98 ++--
librpc/ndr/ndr_rap.c | 40 --
librpc/ndr/ndr_rap.h | 1 -
6 files changed, 1133 insertions(+), 855 deletions(-)
Changeset truncated at 500 lines:
diff --git a/librpc/gen_ndr/ndr_rap.c b/librpc/gen_ndr/ndr_rap.c
index c1a3889..6d97518 100644
--- a/librpc/gen_ndr/ndr_rap.c
+++ b/librpc/gen_ndr/ndr_rap.c
@@ -42,15 +42,22 @@ static enum ndr_err_code ndr_push_rap_share_info_1(struct
ndr_push *ndr, int ndr
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->share_name,
13));
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->reserved1));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->share_type));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->comment, ndr_charset_length(r->comment, CH_DOS), sizeof(uint8_t), CH_DOS));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->comment));
+ }
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -65,26 +72,30 @@ static enum ndr_err_code ndr_pull_rap_share_info_1(struct
ndr_pull *ndr, int ndr
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->share_name,
13));
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->reserved1));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->share_type));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
- if (_ptr_comment) {
- NDR_PULL_ALLOC(ndr, r->comment);
- } else {
- r->comment = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
+ if (_ptr_comment) {
+ NDR_PULL_ALLOC(ndr, r->comment);
+ } else {
+ r->comment = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
- if (ndr_get_array_length(ndr, &r->comment) >
ndr_get_array_size(ndr, &r->comment)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->comment), ndr_get_array_length(ndr, &r->comment));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS,
&r->comment));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0,
0);
}
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -113,27 +124,41 @@ static enum ndr_err_code ndr_push_rap_share_info_2(struct
ndr_push *ndr, int ndr
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->share_name,
13));
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->reserved1));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->share_type));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->perms));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->maximum_users));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->active_users));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->password,
9));
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->reserved2));
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->comment, ndr_charset_length(r->comment, CH_DOS), sizeof(uint8_t), CH_DOS));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->comment));
+ }
+ ndr->flags = _flags_save_string;
}
- if (r->path) {
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->path, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->path, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path,
ndr_charset_length(r->path, CH_DOS), sizeof(uint8_t), CH_DOS));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->path) {
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->path));
+ }
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -150,49 +175,57 @@ static enum ndr_err_code ndr_pull_rap_share_info_2(struct
ndr_pull *ndr, int ndr
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->share_name,
13));
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->reserved1));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->share_type));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
- if (_ptr_comment) {
- NDR_PULL_ALLOC(ndr, r->comment);
- } else {
- r->comment = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
+ if (_ptr_comment) {
+ NDR_PULL_ALLOC(ndr, r->comment);
+ } else {
+ r->comment = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->perms));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->maximum_users));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->active_users));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
- if (_ptr_path) {
- NDR_PULL_ALLOC(ndr, r->path);
- } else {
- r->path = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
+ if (_ptr_path) {
+ NDR_PULL_ALLOC(ndr, r->path);
+ } else {
+ r->path = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->password,
9));
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->reserved2));
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
- if (ndr_get_array_length(ndr, &r->comment) >
ndr_get_array_size(ndr, &r->comment)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->comment), ndr_get_array_length(ndr, &r->comment));
- }
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
- }
- if (r->path) {
- _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
- if (ndr_get_array_length(ndr, &r->path) >
ndr_get_array_size(ndr, &r->path)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->path), ndr_get_array_length(ndr, &r->path));
- }
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->path), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path,
ndr_get_array_length(ndr, &r->path), sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS,
&r->comment));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0,
0);
+ }
+ ndr->flags = _flags_save_string;
+ }
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->path) {
+ _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS,
&r->path));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
+ }
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -374,15 +407,22 @@ static enum ndr_err_code
ndr_push_rap_server_info_1(struct ndr_push *ndr, int nd
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->version_major));
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->version_minor));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->servertype));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->comment, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->comment, ndr_charset_length(r->comment, CH_DOS), sizeof(uint8_t), CH_DOS));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->comment));
+ }
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -398,26 +438,30 @@ static enum ndr_err_code
ndr_pull_rap_server_info_1(struct ndr_pull *ndr, int nd
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->version_major));
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->version_minor));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->servertype));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
- if (_ptr_comment) {
- NDR_PULL_ALLOC(ndr, r->comment);
- } else {
- r->comment = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
+ if (_ptr_comment) {
+ NDR_PULL_ALLOC(ndr, r->comment);
+ } else {
+ r->comment = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->comment) {
- _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
- if (ndr_get_array_length(ndr, &r->comment) >
ndr_get_array_size(ndr, &r->comment)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->comment), ndr_get_array_length(ndr, &r->comment));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->comment) {
+ _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS,
&r->comment));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0,
0);
}
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -566,39 +610,60 @@ static enum ndr_err_code
ndr_push_rap_PrintJobInfo1(struct ndr_push *ndr, int nd
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->Pad));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->NotifyName, 16,
sizeof(uint8_t), CH_DOS));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->DataType, 10,
sizeof(uint8_t), CH_DOS));
- NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->PrintParameterString));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->PrintParameterString));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS,
r->PrintParameterStringHigh));
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->JobPosition));
NDR_CHECK(ndr_push_rap_PrintJStatusCode(ndr, NDR_SCALARS,
r->JobStatus));
- NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->JobStatusString));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->JobStatusString));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS,
r->JobStatusStringHigh));
NDR_CHECK(ndr_push_time_t(ndr, NDR_SCALARS, r->TimeSubmitted));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->JobSize));
- NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->JobCommentString));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_push_short_relative_ptr1(ndr,
r->JobCommentString));
+ ndr->flags = _flags_save_string;
+ }
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS,
r->JobCommentStringHigh));
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->PrintParameterString) {
- NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->PrintParameterString));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->PrintParameterString, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->PrintParameterString, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->PrintParameterString, ndr_charset_length(r->PrintParameterString, CH_DOS),
sizeof(uint8_t), CH_DOS));
- }
- if (r->JobStatusString) {
- NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->JobStatusString));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->JobStatusString, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->JobStatusString, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->JobStatusString, ndr_charset_length(r->JobStatusString, CH_DOS),
sizeof(uint8_t), CH_DOS));
- }
- if (r->JobCommentString) {
- NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->JobCommentString));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->JobCommentString, CH_DOS)));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS,
ndr_charset_length(r->JobCommentString, CH_DOS)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS,
r->JobCommentString, ndr_charset_length(r->JobCommentString, CH_DOS),
sizeof(uint8_t), CH_DOS));
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->PrintParameterString) {
+ NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->PrintParameterString));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->PrintParameterString));
+ }
+ ndr->flags = _flags_save_string;
+ }
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->JobStatusString) {
+ NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->JobStatusString));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->JobStatusString));
+ }
+ ndr->flags = _flags_save_string;
+ }
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->JobCommentString) {
+ NDR_CHECK(ndr_push_short_relative_ptr2(ndr,
r->JobCommentString));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS,
r->JobCommentString));
+ }
+ ndr->flags = _flags_save_string;
}
}
return NDR_ERR_SUCCESS;
@@ -619,81 +684,93 @@ static enum ndr_err_code
ndr_pull_rap_PrintJobInfo1(struct ndr_pull *ndr, int nd
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->Pad));
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->NotifyName,
16, sizeof(uint8_t), CH_DOS));
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->DataType, 10,
sizeof(uint8_t), CH_DOS));
- NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_PrintParameterString));
- if (_ptr_PrintParameterString) {
- NDR_PULL_ALLOC(ndr, r->PrintParameterString);
- NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->PrintParameterString, _ptr_PrintParameterString));
- } else {
- r->PrintParameterString = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_PrintParameterString));
+ if (_ptr_PrintParameterString) {
+ NDR_PULL_ALLOC(ndr, r->PrintParameterString);
+ NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->PrintParameterString, _ptr_PrintParameterString));
+ } else {
+ r->PrintParameterString = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS,
&r->PrintParameterStringHigh));
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->JobPosition));
NDR_CHECK(ndr_pull_rap_PrintJStatusCode(ndr, NDR_SCALARS,
&r->JobStatus));
- NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_JobStatusString));
- if (_ptr_JobStatusString) {
- NDR_PULL_ALLOC(ndr, r->JobStatusString);
- NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->JobStatusString, _ptr_JobStatusString));
- } else {
- r->JobStatusString = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_JobStatusString));
+ if (_ptr_JobStatusString) {
+ NDR_PULL_ALLOC(ndr, r->JobStatusString);
+ NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->JobStatusString, _ptr_JobStatusString));
+ } else {
+ r->JobStatusString = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS,
&r->JobStatusStringHigh));
NDR_CHECK(ndr_pull_time_t(ndr, NDR_SCALARS, &r->TimeSubmitted));
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->JobSize));
- NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_JobCommentString));
- if (_ptr_JobCommentString) {
- NDR_PULL_ALLOC(ndr, r->JobCommentString);
- NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->JobCommentString, _ptr_JobCommentString));
- } else {
- r->JobCommentString = NULL;
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ NDR_CHECK(ndr_pull_relative_ptr_short(ndr,
&_ptr_JobCommentString));
+ if (_ptr_JobCommentString) {
+ NDR_PULL_ALLOC(ndr, r->JobCommentString);
+ NDR_CHECK(ndr_pull_relative_ptr1(ndr,
r->JobCommentString, _ptr_JobCommentString));
+ } else {
+ r->JobCommentString = NULL;
+ }
+ ndr->flags = _flags_save_string;
}
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS,
&r->JobCommentStringHigh));
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->PrintParameterString) {
- uint32_t _relative_save_offset;
- _relative_save_offset = ndr->offset;
- NDR_CHECK(ndr_pull_relative_ptr2(ndr,
r->PrintParameterString));
- _mem_save_PrintParameterString_0 =
NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->PrintParameterString, 0);
- NDR_CHECK(ndr_pull_array_size(ndr,
&r->PrintParameterString));
- NDR_CHECK(ndr_pull_array_length(ndr,
&r->PrintParameterString));
- if (ndr_get_array_length(ndr, &r->PrintParameterString)
> ndr_get_array_size(ndr, &r->PrintParameterString)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->PrintParameterString), ndr_get_array_length(ndr, &r->PrintParameterString));
- }
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->PrintParameterString), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->PrintParameterString, ndr_get_array_length(ndr, &r->PrintParameterString),
sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr,
_mem_save_PrintParameterString_0, 0);
- }
- if (r->JobStatusString) {
- uint32_t _relative_save_offset;
- _relative_save_offset = ndr->offset;
- NDR_CHECK(ndr_pull_relative_ptr2(ndr,
r->JobStatusString));
- _mem_save_JobStatusString_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->JobStatusString, 0);
- NDR_CHECK(ndr_pull_array_size(ndr,
&r->JobStatusString));
- NDR_CHECK(ndr_pull_array_length(ndr,
&r->JobStatusString));
- if (ndr_get_array_length(ndr, &r->JobStatusString) >
ndr_get_array_size(ndr, &r->JobStatusString)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->JobStatusString), ndr_get_array_length(ndr, &r->JobStatusString));
- }
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->JobStatusString), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->JobStatusString, ndr_get_array_length(ndr, &r->JobStatusString),
sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_JobStatusString_0,
0);
- }
- if (r->JobCommentString) {
- uint32_t _relative_save_offset;
- _relative_save_offset = ndr->offset;
- NDR_CHECK(ndr_pull_relative_ptr2(ndr,
r->JobCommentString));
- _mem_save_JobCommentString_0 =
NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->JobCommentString, 0);
- NDR_CHECK(ndr_pull_array_size(ndr,
&r->JobCommentString));
- NDR_CHECK(ndr_pull_array_length(ndr,
&r->JobCommentString));
- if (ndr_get_array_length(ndr, &r->JobCommentString) >
ndr_get_array_size(ndr, &r->JobCommentString)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE,
"Bad array size %u should exceed array length %u", ndr_get_array_size(ndr,
&r->JobCommentString), ndr_get_array_length(ndr, &r->JobCommentString));
- }
- NDR_CHECK(ndr_check_string_terminator(ndr,
ndr_get_array_length(ndr, &r->JobCommentString), sizeof(uint8_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS,
&r->JobCommentString, ndr_get_array_length(ndr, &r->JobCommentString),
sizeof(uint8_t), CH_DOS));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_JobCommentString_0,
0);
+ {
+ uint32_t _flags_save_string = ndr->flags;
+ ndr_set_flags(&ndr->flags,
LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
+ if (r->PrintParameterString) {
+ uint32_t _relative_save_offset;
--
Samba Shared Repository