1
/* parser auto-generated by pidl */
4
#include "librpc/gen_ndr/ndr_preg.h"
6
#include "librpc/gen_ndr/ndr_misc.h"
7
_PUBLIC_ enum ndr_err_code ndr_push_preg_entry(struct ndr_push *ndr, int ndr_flags, const struct preg_entry *r)
9
if (ndr_flags & NDR_SCALARS) {
10
NDR_CHECK(ndr_push_align(ndr, 4));
11
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, "[", 2, sizeof(uint8_t), CH_DOS));
13
uint32_t _flags_save_string = ndr->flags;
14
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
15
NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->keyname));
16
ndr->flags = _flags_save_string;
18
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, ";", 2, sizeof(uint8_t), CH_DOS));
20
uint32_t _flags_save_string = ndr->flags;
21
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
22
NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->valuename));
23
ndr->flags = _flags_save_string;
25
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, ";", 2, sizeof(uint8_t), CH_DOS));
26
NDR_CHECK(ndr_push_winreg_Type(ndr, NDR_SCALARS, r->type));
27
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, ";", 2, sizeof(uint8_t), CH_DOS));
28
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
29
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, ";", 2, sizeof(uint8_t), CH_DOS));
30
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->size));
31
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, "]", 2, sizeof(uint8_t), CH_DOS));
32
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
34
if (ndr_flags & NDR_BUFFERS) {
36
return NDR_ERR_SUCCESS;
39
_PUBLIC_ enum ndr_err_code ndr_pull_preg_entry(struct ndr_pull *ndr, int ndr_flags, struct preg_entry *r)
41
if (ndr_flags & NDR_SCALARS) {
42
NDR_CHECK(ndr_pull_align(ndr, 4));
43
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_opening_bracket, 2, sizeof(uint8_t), CH_DOS));
45
uint32_t _flags_save_string = ndr->flags;
46
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
47
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->keyname));
48
ndr->flags = _flags_save_string;
50
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_sep1, 2, sizeof(uint8_t), CH_DOS));
52
uint32_t _flags_save_string = ndr->flags;
53
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
54
NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->valuename));
55
ndr->flags = _flags_save_string;
57
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_sep2, 2, sizeof(uint8_t), CH_DOS));
58
NDR_CHECK(ndr_pull_winreg_Type(ndr, NDR_SCALARS, &r->type));
59
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_sep3, 2, sizeof(uint8_t), CH_DOS));
60
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
61
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_sep4, 2, sizeof(uint8_t), CH_DOS));
62
NDR_PULL_ALLOC_N(ndr, r->data, r->size);
63
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, r->size));
64
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->_closing_bracket, 2, sizeof(uint8_t), CH_DOS));
65
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
67
if (ndr_flags & NDR_BUFFERS) {
69
return NDR_ERR_SUCCESS;
72
_PUBLIC_ void ndr_print_preg_entry(struct ndr_print *ndr, const char *name, const struct preg_entry *r)
74
ndr_print_struct(ndr, name, "preg_entry");
75
if (r == NULL) { ndr_print_null(ndr); return; }
77
ndr_print_string(ndr, "keyname", r->keyname);
78
ndr_print_string(ndr, "valuename", r->valuename);
79
ndr_print_winreg_Type(ndr, "type", r->type);
80
ndr_print_uint32(ndr, "size", r->size);
81
ndr_print_array_uint8(ndr, "data", r->data, r->size);
85
_PUBLIC_ enum ndr_err_code ndr_push_preg_header(struct ndr_push *ndr, int ndr_flags, const struct preg_header *r)
87
if (ndr_flags & NDR_SCALARS) {
88
NDR_CHECK(ndr_push_align(ndr, 4));
89
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, "PReg", 4, sizeof(uint8_t), CH_DOS));
90
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 1));
91
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
93
if (ndr_flags & NDR_BUFFERS) {
95
return NDR_ERR_SUCCESS;
98
_PUBLIC_ enum ndr_err_code ndr_pull_preg_header(struct ndr_pull *ndr, int ndr_flags, struct preg_header *r)
100
if (ndr_flags & NDR_SCALARS) {
101
NDR_CHECK(ndr_pull_align(ndr, 4));
102
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->signature, 4, sizeof(uint8_t), CH_DOS));
103
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
104
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
106
if (ndr_flags & NDR_BUFFERS) {
108
return NDR_ERR_SUCCESS;
111
_PUBLIC_ void ndr_print_preg_header(struct ndr_print *ndr, const char *name, const struct preg_header *r)
113
ndr_print_struct(ndr, name, "preg_header");
114
if (r == NULL) { ndr_print_null(ndr); return; }
116
ndr_print_string(ndr, "signature", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?"PReg":r->signature);
117
ndr_print_uint32(ndr, "version", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?1:r->version);
121
_PUBLIC_ void ndr_print_preg_file(struct ndr_print *ndr, const char *name, const struct preg_file *r)
123
uint32_t cntr_entries_0;
124
ndr_print_struct(ndr, name, "preg_file");
125
if (r == NULL) { ndr_print_null(ndr); return; }
127
uint32_t _flags_save_STRUCT = ndr->flags;
128
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
130
ndr_print_preg_header(ndr, "header", &r->header);
131
ndr_print_uint32(ndr, "num_entries", r->num_entries);
132
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->num_entries);
134
for (cntr_entries_0=0;cntr_entries_0<r->num_entries;cntr_entries_0++) {
135
ndr_print_preg_entry(ndr, "entries", &r->entries[cntr_entries_0]);
139
ndr->flags = _flags_save_STRUCT;
143
static enum ndr_err_code ndr_push_decode_preg_file(struct ndr_push *ndr, int flags, const struct decode_preg_file *r)
145
if (flags & NDR_IN) {
146
NDR_CHECK(ndr_push_preg_file(ndr, NDR_SCALARS, &r->in.file));
148
if (flags & NDR_OUT) {
150
return NDR_ERR_SUCCESS;
153
static enum ndr_err_code ndr_pull_decode_preg_file(struct ndr_pull *ndr, int flags, struct decode_preg_file *r)
155
if (flags & NDR_IN) {
156
NDR_CHECK(ndr_pull_preg_file(ndr, NDR_SCALARS, &r->in.file));
158
if (flags & NDR_OUT) {
160
return NDR_ERR_SUCCESS;
163
_PUBLIC_ void ndr_print_decode_preg_file(struct ndr_print *ndr, const char *name, int flags, const struct decode_preg_file *r)
165
ndr_print_struct(ndr, name, "decode_preg_file");
166
if (r == NULL) { ndr_print_null(ndr); return; }
168
if (flags & NDR_SET_VALUES) {
169
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
171
if (flags & NDR_IN) {
172
ndr_print_struct(ndr, "in", "decode_preg_file");
174
ndr_print_preg_file(ndr, "file", &r->in.file);
177
if (flags & NDR_OUT) {
178
ndr_print_struct(ndr, "out", "decode_preg_file");
185
static const struct ndr_interface_call preg_calls[] = {
188
sizeof(struct decode_preg_file),
189
(ndr_push_flags_fn_t) ndr_push_decode_preg_file,
190
(ndr_pull_flags_fn_t) ndr_pull_decode_preg_file,
191
(ndr_print_function_t) ndr_print_decode_preg_file,
195
{ NULL, 0, NULL, NULL, NULL }
198
static const char * const preg_endpoint_strings[] = {
199
"ncacn_np:[\\pipe\\preg]",
202
static const struct ndr_interface_string_array preg_endpoints = {
204
.names = preg_endpoint_strings
207
static const char * const preg_authservice_strings[] = {
211
static const struct ndr_interface_string_array preg_authservices = {
213
.names = preg_authservice_strings
217
const struct ndr_interface_table ndr_table_preg = {
220
{0x67655250,0x0000,0x0000,{0x00,0x00},{0x00,0x00,0x00,0x00}},
223
.helpstring = NDR_PREG_HELPSTRING,
226
.endpoints = &preg_endpoints,
227
.authservices = &preg_authservices