Line data Source code
1 : /* parser auto-generated by pidl */
2 :
3 : #include "includes.h"
4 : #include "bin/default/source3/librpc/gen_ndr/ndr_rpc_host.h"
5 :
6 : #include "librpc/gen_ndr/ndr_named_pipe_auth.h"
7 : #include "librpc/gen_ndr/ndr_dcerpc.h"
8 789 : _PUBLIC_ enum ndr_err_code ndr_push_rpc_host_client(struct ndr_push *ndr, int ndr_flags, const struct rpc_host_client *r)
9 : {
10 789 : NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
11 789 : if (ndr_flags & NDR_SCALARS) {
12 789 : NDR_CHECK(ndr_push_align(ndr, 5));
13 789 : NDR_CHECK(ndr_push_unique_ptr(ndr, r->binding));
14 789 : NDR_CHECK(ndr_push_unique_ptr(ndr, r->npa_info7));
15 789 : NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->bind_packet));
16 789 : NDR_CHECK(ndr_push_trailer_align(ndr, 5));
17 : }
18 789 : if (ndr_flags & NDR_BUFFERS) {
19 789 : if (r->binding) {
20 789 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->binding, CH_UTF8)));
21 789 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
22 789 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->binding, CH_UTF8)));
23 789 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->binding, ndr_charset_length(r->binding, CH_UTF8), sizeof(uint8_t), CH_UTF8));
24 : }
25 789 : if (r->npa_info7) {
26 789 : NDR_CHECK(ndr_push_named_pipe_auth_req_info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->npa_info7));
27 : }
28 : }
29 789 : return NDR_ERR_SUCCESS;
30 : }
31 :
32 758 : _PUBLIC_ enum ndr_err_code ndr_pull_rpc_host_client(struct ndr_pull *ndr, int ndr_flags, struct rpc_host_client *r)
33 : {
34 : uint32_t _ptr_binding;
35 758 : uint32_t size_binding_1 = 0;
36 758 : uint32_t length_binding_1 = 0;
37 758 : TALLOC_CTX *_mem_save_binding_0 = NULL;
38 : uint32_t _ptr_npa_info7;
39 758 : TALLOC_CTX *_mem_save_npa_info7_0 = NULL;
40 758 : NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
41 758 : if (ndr_flags & NDR_SCALARS) {
42 758 : NDR_CHECK(ndr_pull_align(ndr, 5));
43 758 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_binding));
44 758 : if (_ptr_binding) {
45 758 : NDR_PULL_ALLOC(ndr, r->binding);
46 : } else {
47 0 : r->binding = NULL;
48 : }
49 758 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_npa_info7));
50 758 : if (_ptr_npa_info7) {
51 758 : NDR_PULL_ALLOC(ndr, r->npa_info7);
52 : } else {
53 0 : r->npa_info7 = NULL;
54 : }
55 758 : NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->bind_packet));
56 758 : NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
57 : }
58 758 : if (ndr_flags & NDR_BUFFERS) {
59 758 : if (r->binding) {
60 758 : _mem_save_binding_0 = NDR_PULL_GET_MEM_CTX(ndr);
61 758 : NDR_PULL_SET_MEM_CTX(ndr, r->binding, 0);
62 758 : NDR_CHECK(ndr_pull_array_size(ndr, &r->binding));
63 758 : NDR_CHECK(ndr_pull_array_length(ndr, &r->binding));
64 758 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->binding, &size_binding_1));
65 758 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->binding, &length_binding_1));
66 758 : if (length_binding_1 > size_binding_1) {
67 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_binding_1, length_binding_1);
68 : }
69 758 : NDR_CHECK(ndr_check_string_terminator(ndr, length_binding_1, sizeof(uint8_t)));
70 758 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->binding, length_binding_1, sizeof(uint8_t), CH_UTF8));
71 758 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_binding_0, 0);
72 : }
73 758 : if (r->npa_info7) {
74 758 : _mem_save_npa_info7_0 = NDR_PULL_GET_MEM_CTX(ndr);
75 758 : NDR_PULL_SET_MEM_CTX(ndr, r->npa_info7, 0);
76 758 : NDR_CHECK(ndr_pull_named_pipe_auth_req_info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->npa_info7));
77 758 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_npa_info7_0, 0);
78 : }
79 : }
80 758 : return NDR_ERR_SUCCESS;
81 : }
82 :
83 0 : static void ndr_print_flags_rpc_host_client(struct ndr_print *ndr, const char *name, int unused, const struct rpc_host_client *r)
84 : {
85 0 : ndr_print_rpc_host_client(ndr, name, r);
86 0 : }
87 :
88 0 : _PUBLIC_ void ndr_print_rpc_host_client(struct ndr_print *ndr, const char *name, const struct rpc_host_client *r)
89 : {
90 0 : ndr_print_struct(ndr, name, "rpc_host_client");
91 0 : if (r == NULL) { ndr_print_null(ndr); return; }
92 0 : ndr->depth++;
93 0 : ndr_print_ptr(ndr, "binding", r->binding);
94 0 : ndr->depth++;
95 0 : if (r->binding) {
96 0 : ndr_print_string(ndr, "binding", r->binding);
97 : }
98 0 : ndr->depth--;
99 0 : ndr_print_ptr(ndr, "npa_info7", r->npa_info7);
100 0 : ndr->depth++;
101 0 : if (r->npa_info7) {
102 0 : ndr_print_named_pipe_auth_req_info7(ndr, "npa_info7", r->npa_info7);
103 : }
104 0 : ndr->depth--;
105 0 : ndr_print_DATA_BLOB(ndr, "bind_packet", r->bind_packet);
106 0 : ndr->depth--;
107 : }
108 :
109 881 : _PUBLIC_ enum ndr_err_code ndr_push_rpc_worker_status(struct ndr_push *ndr, int ndr_flags, const struct rpc_worker_status *r)
110 : {
111 : {
112 881 : uint32_t _flags_save_STRUCT = ndr->flags;
113 881 : ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
114 881 : NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
115 881 : if (ndr_flags & NDR_SCALARS) {
116 881 : NDR_CHECK(ndr_push_align(ndr, 4));
117 881 : NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->server_index));
118 881 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->worker_index));
119 881 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_clients));
120 881 : NDR_CHECK(ndr_push_trailer_align(ndr, 4));
121 : }
122 881 : if (ndr_flags & NDR_BUFFERS) {
123 : }
124 881 : ndr->flags = _flags_save_STRUCT;
125 : }
126 881 : return NDR_ERR_SUCCESS;
127 : }
128 :
129 926 : _PUBLIC_ enum ndr_err_code ndr_pull_rpc_worker_status(struct ndr_pull *ndr, int ndr_flags, struct rpc_worker_status *r)
130 : {
131 : {
132 926 : uint32_t _flags_save_STRUCT = ndr->flags;
133 926 : ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
134 926 : NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
135 926 : if (ndr_flags & NDR_SCALARS) {
136 926 : NDR_CHECK(ndr_pull_align(ndr, 4));
137 926 : NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->server_index));
138 926 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->worker_index));
139 926 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_clients));
140 926 : NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
141 : }
142 926 : if (ndr_flags & NDR_BUFFERS) {
143 : }
144 926 : ndr->flags = _flags_save_STRUCT;
145 : }
146 926 : return NDR_ERR_SUCCESS;
147 : }
148 :
149 0 : static void ndr_print_flags_rpc_worker_status(struct ndr_print *ndr, const char *name, int unused, const struct rpc_worker_status *r)
150 : {
151 0 : ndr_print_rpc_worker_status(ndr, name, r);
152 0 : }
153 :
154 0 : _PUBLIC_ void ndr_print_rpc_worker_status(struct ndr_print *ndr, const char *name, const struct rpc_worker_status *r)
155 : {
156 0 : ndr_print_struct(ndr, name, "rpc_worker_status");
157 0 : if (r == NULL) { ndr_print_null(ndr); return; }
158 : {
159 0 : uint32_t _flags_save_STRUCT = ndr->flags;
160 0 : ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
161 0 : ndr->depth++;
162 0 : ndr_print_uint8(ndr, "server_index", r->server_index);
163 0 : ndr_print_uint32(ndr, "worker_index", r->worker_index);
164 0 : ndr_print_uint32(ndr, "num_clients", r->num_clients);
165 0 : ndr->depth--;
166 0 : ndr->flags = _flags_save_STRUCT;
167 : }
168 : }
169 :
170 : #ifndef SKIP_NDR_TABLE_rpc_host_msg
171 : static const struct ndr_interface_public_struct rpc_host_msg_public_structs[] = {
172 : {
173 : .name = "rpc_host_client",
174 : .struct_size = sizeof(struct rpc_host_client ),
175 : .ndr_push = (ndr_push_flags_fn_t) ndr_push_rpc_host_client,
176 : .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_rpc_host_client,
177 : .ndr_print = (ndr_print_function_t) ndr_print_flags_rpc_host_client,
178 : },
179 : {
180 : .name = "rpc_worker_status",
181 : .struct_size = sizeof(struct rpc_worker_status ),
182 : .ndr_push = (ndr_push_flags_fn_t) ndr_push_rpc_worker_status,
183 : .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_rpc_worker_status,
184 : .ndr_print = (ndr_print_function_t) ndr_print_flags_rpc_worker_status,
185 : },
186 : { .name = NULL }
187 : };
188 :
189 : static const struct ndr_interface_call rpc_host_msg_calls[] = {
190 : { .name = NULL }
191 : };
192 :
193 : static const char * const rpc_host_msg_endpoint_strings[] = {
194 : "ncacn_np:[\\pipe\\rpc_host_msg]",
195 : };
196 :
197 : static const struct ndr_interface_string_array rpc_host_msg_endpoints = {
198 : .count = 1,
199 : .names = rpc_host_msg_endpoint_strings
200 : };
201 :
202 : static const char * const rpc_host_msg_authservice_strings[] = {
203 : "host",
204 : };
205 :
206 : static const struct ndr_interface_string_array rpc_host_msg_authservices = {
207 : .count = 1,
208 : .names = rpc_host_msg_authservice_strings
209 : };
210 :
211 :
212 : const struct ndr_interface_table ndr_table_rpc_host_msg = {
213 : .name = "rpc_host_msg",
214 : .num_calls = 0,
215 : .calls = rpc_host_msg_calls,
216 : .num_public_structs = 2,
217 : .public_structs = rpc_host_msg_public_structs,
218 : .endpoints = &rpc_host_msg_endpoints,
219 : .authservices = &rpc_host_msg_authservices
220 : };
221 :
222 : #endif /* SKIP_NDR_TABLE_rpc_host_msg */
|