1 /* parser auto-generated by pidl */
4 #include "../librpc/gen_ndr/ndr_named_pipe_auth.h"
6 #include "librpc/gen_ndr/ndr_netlogon.h"
7 static enum ndr_err_code ndr_push_named_pipe_auth_req_info(struct ndr_push *ndr, int ndr_flags, const union named_pipe_auth_req_info *r)
9 if (ndr_flags & NDR_SCALARS) {
10 int level = ndr_push_get_switch_value(ndr, r);
11 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
17 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_SCALARS, &r->info1));
21 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
24 if (ndr_flags & NDR_BUFFERS) {
25 int level = ndr_push_get_switch_value(ndr, r);
31 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info1));
35 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
38 return NDR_ERR_SUCCESS;
41 static enum ndr_err_code ndr_pull_named_pipe_auth_req_info(struct ndr_pull *ndr, int ndr_flags, union named_pipe_auth_req_info *r)
45 level = ndr_pull_get_switch_value(ndr, r);
46 if (ndr_flags & NDR_SCALARS) {
47 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
48 if (_level != level) {
49 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
56 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_SCALARS, &r->info1));
60 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
63 if (ndr_flags & NDR_BUFFERS) {
69 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info1));
73 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
76 return NDR_ERR_SUCCESS;
79 _PUBLIC_ void ndr_print_named_pipe_auth_req_info(struct ndr_print *ndr, const char *name, const union named_pipe_auth_req_info *r)
82 level = ndr_print_get_switch_value(ndr, r);
83 ndr_print_union(ndr, name, level, "named_pipe_auth_req_info");
89 ndr_print_netr_SamInfo3(ndr, "info1", &r->info1);
93 ndr_print_bad_level(ndr, name, level);
97 _PUBLIC_ enum ndr_err_code ndr_push_named_pipe_auth_req(struct ndr_push *ndr, int ndr_flags, const struct named_pipe_auth_req *r)
99 if (ndr_flags & NDR_SCALARS) {
100 NDR_CHECK(ndr_push_align(ndr, 4));
102 uint32_t _flags_save_uint32 = ndr->flags;
103 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
104 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_named_pipe_auth_req(r, ndr->iconv_convenience, ndr->flags) - 4));
105 ndr->flags = _flags_save_uint32;
107 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, NAMED_PIPE_AUTH_MAGIC, 4, sizeof(uint8_t), CH_DOS));
108 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
109 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->info, r->level));
110 NDR_CHECK(ndr_push_named_pipe_auth_req_info(ndr, NDR_SCALARS, &r->info));
112 if (ndr_flags & NDR_BUFFERS) {
113 NDR_CHECK(ndr_push_named_pipe_auth_req_info(ndr, NDR_BUFFERS, &r->info));
115 return NDR_ERR_SUCCESS;
118 _PUBLIC_ enum ndr_err_code ndr_pull_named_pipe_auth_req(struct ndr_pull *ndr, int ndr_flags, struct named_pipe_auth_req *r)
120 uint32_t size_magic_0 = 0;
121 if (ndr_flags & NDR_SCALARS) {
122 NDR_CHECK(ndr_pull_align(ndr, 4));
124 uint32_t _flags_save_uint32 = ndr->flags;
125 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
126 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
127 ndr->flags = _flags_save_uint32;
130 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->magic, size_magic_0, sizeof(uint8_t), CH_DOS));
131 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
132 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->info, r->level));
133 NDR_CHECK(ndr_pull_named_pipe_auth_req_info(ndr, NDR_SCALARS, &r->info));
135 if (ndr_flags & NDR_BUFFERS) {
136 NDR_CHECK(ndr_pull_named_pipe_auth_req_info(ndr, NDR_BUFFERS, &r->info));
138 return NDR_ERR_SUCCESS;
141 _PUBLIC_ void ndr_print_named_pipe_auth_req(struct ndr_print *ndr, const char *name, const struct named_pipe_auth_req *r)
143 ndr_print_struct(ndr, name, "named_pipe_auth_req");
145 ndr_print_uint32(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?ndr_size_named_pipe_auth_req(r, ndr->iconv_convenience, ndr->flags) - 4:r->length);
146 ndr_print_string(ndr, "magic", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NAMED_PIPE_AUTH_MAGIC:r->magic);
147 ndr_print_uint32(ndr, "level", r->level);
148 ndr_print_set_switch_value(ndr, &r->info, r->level);
149 ndr_print_named_pipe_auth_req_info(ndr, "info", &r->info);
153 _PUBLIC_ size_t ndr_size_named_pipe_auth_req(const struct named_pipe_auth_req *r, struct smb_iconv_convenience *ic, int flags)
155 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_named_pipe_auth_req, ic);
158 static enum ndr_err_code ndr_push_named_pipe_auth_rep_info(struct ndr_push *ndr, int ndr_flags, const union named_pipe_auth_rep_info *r)
160 if (ndr_flags & NDR_SCALARS) {
161 int level = ndr_push_get_switch_value(ndr, r);
162 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
171 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
174 if (ndr_flags & NDR_BUFFERS) {
175 int level = ndr_push_get_switch_value(ndr, r);
184 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
187 return NDR_ERR_SUCCESS;
190 static enum ndr_err_code ndr_pull_named_pipe_auth_rep_info(struct ndr_pull *ndr, int ndr_flags, union named_pipe_auth_rep_info *r)
194 level = ndr_pull_get_switch_value(ndr, r);
195 if (ndr_flags & NDR_SCALARS) {
196 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
197 if (_level != level) {
198 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
208 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
211 if (ndr_flags & NDR_BUFFERS) {
220 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
223 return NDR_ERR_SUCCESS;
226 _PUBLIC_ void ndr_print_named_pipe_auth_rep_info(struct ndr_print *ndr, const char *name, const union named_pipe_auth_rep_info *r)
229 level = ndr_print_get_switch_value(ndr, r);
230 ndr_print_union(ndr, name, level, "named_pipe_auth_rep_info");
239 ndr_print_bad_level(ndr, name, level);
243 _PUBLIC_ enum ndr_err_code ndr_push_named_pipe_auth_rep(struct ndr_push *ndr, int ndr_flags, const struct named_pipe_auth_rep *r)
245 if (ndr_flags & NDR_SCALARS) {
246 NDR_CHECK(ndr_push_align(ndr, 4));
248 uint32_t _flags_save_uint32 = ndr->flags;
249 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
250 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_named_pipe_auth_rep(r, ndr->iconv_convenience, ndr->flags) - 4));
251 ndr->flags = _flags_save_uint32;
253 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, NAMED_PIPE_AUTH_MAGIC, 4, sizeof(uint8_t), CH_DOS));
254 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
255 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->info, r->level));
256 NDR_CHECK(ndr_push_named_pipe_auth_rep_info(ndr, NDR_SCALARS, &r->info));
257 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->status));
259 if (ndr_flags & NDR_BUFFERS) {
260 NDR_CHECK(ndr_push_named_pipe_auth_rep_info(ndr, NDR_BUFFERS, &r->info));
262 return NDR_ERR_SUCCESS;
265 _PUBLIC_ enum ndr_err_code ndr_pull_named_pipe_auth_rep(struct ndr_pull *ndr, int ndr_flags, struct named_pipe_auth_rep *r)
267 uint32_t size_magic_0 = 0;
268 if (ndr_flags & NDR_SCALARS) {
269 NDR_CHECK(ndr_pull_align(ndr, 4));
271 uint32_t _flags_save_uint32 = ndr->flags;
272 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
273 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
274 ndr->flags = _flags_save_uint32;
277 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->magic, size_magic_0, sizeof(uint8_t), CH_DOS));
278 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
279 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->info, r->level));
280 NDR_CHECK(ndr_pull_named_pipe_auth_rep_info(ndr, NDR_SCALARS, &r->info));
281 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->status));
283 if (ndr_flags & NDR_BUFFERS) {
284 NDR_CHECK(ndr_pull_named_pipe_auth_rep_info(ndr, NDR_BUFFERS, &r->info));
286 return NDR_ERR_SUCCESS;
289 _PUBLIC_ void ndr_print_named_pipe_auth_rep(struct ndr_print *ndr, const char *name, const struct named_pipe_auth_rep *r)
291 ndr_print_struct(ndr, name, "named_pipe_auth_rep");
293 ndr_print_uint32(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?ndr_size_named_pipe_auth_rep(r, ndr->iconv_convenience, ndr->flags) - 4:r->length);
294 ndr_print_string(ndr, "magic", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NAMED_PIPE_AUTH_MAGIC:r->magic);
295 ndr_print_uint32(ndr, "level", r->level);
296 ndr_print_set_switch_value(ndr, &r->info, r->level);
297 ndr_print_named_pipe_auth_rep_info(ndr, "info", &r->info);
298 ndr_print_NTSTATUS(ndr, "status", r->status);
302 _PUBLIC_ size_t ndr_size_named_pipe_auth_rep(const struct named_pipe_auth_rep *r, struct smb_iconv_convenience *ic, int flags)
304 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_named_pipe_auth_rep, ic);