[GLUE] Rsync SAMBA_3_0 SVN r25598 in order to create the v3-0-test branch.
[Samba.git] / source / librpc / gen_ndr / ndr_notify.c
blobc3873550bb04fe32bc1fcc3f95e3f169abc62f62
1 /* parser auto-generated by pidl */
3 #include "includes.h"
4 #include "librpc/gen_ndr/ndr_notify.h"
6 _PUBLIC_ NTSTATUS ndr_push_notify_entry(struct ndr_push *ndr, int ndr_flags, const struct notify_entry *r)
8 if (ndr_flags & NDR_SCALARS) {
9 NDR_CHECK(ndr_push_align(ndr, 8));
10 NDR_CHECK(ndr_push_server_id(ndr, NDR_SCALARS, &r->server));
11 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->filter));
12 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->subdir_filter));
14 uint32_t _flags_save_string = ndr->flags;
15 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM);
16 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
17 ndr->flags = _flags_save_string;
19 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->path_len));
20 NDR_CHECK(ndr_push_pointer(ndr, NDR_SCALARS, r->private_data));
22 if (ndr_flags & NDR_BUFFERS) {
23 NDR_CHECK(ndr_push_server_id(ndr, NDR_BUFFERS, &r->server));
25 return NT_STATUS_OK;
28 _PUBLIC_ NTSTATUS ndr_pull_notify_entry(struct ndr_pull *ndr, int ndr_flags, struct notify_entry *r)
30 if (ndr_flags & NDR_SCALARS) {
31 NDR_CHECK(ndr_pull_align(ndr, 8));
32 NDR_CHECK(ndr_pull_server_id(ndr, NDR_SCALARS, &r->server));
33 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->filter));
34 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->subdir_filter));
36 uint32_t _flags_save_string = ndr->flags;
37 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM);
38 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
39 ndr->flags = _flags_save_string;
41 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->path_len));
42 NDR_CHECK(ndr_pull_pointer(ndr, NDR_SCALARS, &r->private_data));
44 if (ndr_flags & NDR_BUFFERS) {
45 NDR_CHECK(ndr_pull_server_id(ndr, NDR_BUFFERS, &r->server));
47 return NT_STATUS_OK;
50 _PUBLIC_ void ndr_print_notify_entry(struct ndr_print *ndr, const char *name, const struct notify_entry *r)
52 ndr_print_struct(ndr, name, "notify_entry");
53 ndr->depth++;
54 ndr_print_server_id(ndr, "server", &r->server);
55 ndr_print_uint32(ndr, "filter", r->filter);
56 ndr_print_uint32(ndr, "subdir_filter", r->subdir_filter);
57 ndr_print_string(ndr, "path", r->path);
58 ndr_print_uint32(ndr, "path_len", r->path_len);
59 ndr_print_pointer(ndr, "private_data", r->private_data);
60 ndr->depth--;
63 NTSTATUS ndr_push_notify_depth(struct ndr_push *ndr, int ndr_flags, const struct notify_depth *r)
65 uint32_t cntr_entries_0;
66 if (ndr_flags & NDR_SCALARS) {
67 NDR_CHECK(ndr_push_align(ndr, 8));
68 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_mask));
69 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_mask_subdir));
70 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_entries));
71 for (cntr_entries_0 = 0; cntr_entries_0 < r->num_entries; cntr_entries_0++) {
72 NDR_CHECK(ndr_push_notify_entry(ndr, NDR_SCALARS, &r->entries[cntr_entries_0]));
75 if (ndr_flags & NDR_BUFFERS) {
76 for (cntr_entries_0 = 0; cntr_entries_0 < r->num_entries; cntr_entries_0++) {
77 NDR_CHECK(ndr_push_notify_entry(ndr, NDR_BUFFERS, &r->entries[cntr_entries_0]));
80 return NT_STATUS_OK;
83 NTSTATUS ndr_pull_notify_depth(struct ndr_pull *ndr, int ndr_flags, struct notify_depth *r)
85 uint32_t cntr_entries_0;
86 TALLOC_CTX *_mem_save_entries_0;
87 if (ndr_flags & NDR_SCALARS) {
88 NDR_CHECK(ndr_pull_align(ndr, 8));
89 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_mask));
90 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_mask_subdir));
91 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_entries));
92 NDR_PULL_ALLOC_N(ndr, r->entries, r->num_entries);
93 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
94 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
95 for (cntr_entries_0 = 0; cntr_entries_0 < r->num_entries; cntr_entries_0++) {
96 NDR_CHECK(ndr_pull_notify_entry(ndr, NDR_SCALARS, &r->entries[cntr_entries_0]));
98 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
100 if (ndr_flags & NDR_BUFFERS) {
101 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
102 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
103 for (cntr_entries_0 = 0; cntr_entries_0 < r->num_entries; cntr_entries_0++) {
104 NDR_CHECK(ndr_pull_notify_entry(ndr, NDR_BUFFERS, &r->entries[cntr_entries_0]));
106 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
108 return NT_STATUS_OK;
111 _PUBLIC_ void ndr_print_notify_depth(struct ndr_print *ndr, const char *name, const struct notify_depth *r)
113 uint32_t cntr_entries_0;
114 ndr_print_struct(ndr, name, "notify_depth");
115 ndr->depth++;
116 ndr_print_uint32(ndr, "max_mask", r->max_mask);
117 ndr_print_uint32(ndr, "max_mask_subdir", r->max_mask_subdir);
118 ndr_print_uint32(ndr, "num_entries", r->num_entries);
119 ndr->print(ndr, "%s: ARRAY(%d)", "entries", r->num_entries);
120 ndr->depth++;
121 for (cntr_entries_0=0;cntr_entries_0<r->num_entries;cntr_entries_0++) {
122 char *idx_0=NULL;
123 asprintf(&idx_0, "[%d]", cntr_entries_0);
124 if (idx_0) {
125 ndr_print_notify_entry(ndr, "entries", &r->entries[cntr_entries_0]);
126 free(idx_0);
129 ndr->depth--;
130 ndr->depth--;
133 _PUBLIC_ NTSTATUS ndr_push_notify_array(struct ndr_push *ndr, int ndr_flags, const struct notify_array *r)
135 uint32_t cntr_depth_0;
136 if (ndr_flags & NDR_SCALARS) {
137 NDR_CHECK(ndr_push_align(ndr, 8));
138 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_depths));
139 for (cntr_depth_0 = 0; cntr_depth_0 < r->num_depths; cntr_depth_0++) {
140 NDR_CHECK(ndr_push_notify_depth(ndr, NDR_SCALARS, &r->depth[cntr_depth_0]));
143 if (ndr_flags & NDR_BUFFERS) {
144 for (cntr_depth_0 = 0; cntr_depth_0 < r->num_depths; cntr_depth_0++) {
145 NDR_CHECK(ndr_push_notify_depth(ndr, NDR_BUFFERS, &r->depth[cntr_depth_0]));
148 return NT_STATUS_OK;
151 _PUBLIC_ NTSTATUS ndr_pull_notify_array(struct ndr_pull *ndr, int ndr_flags, struct notify_array *r)
153 uint32_t cntr_depth_0;
154 TALLOC_CTX *_mem_save_depth_0;
155 if (ndr_flags & NDR_SCALARS) {
156 NDR_CHECK(ndr_pull_align(ndr, 8));
157 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_depths));
158 NDR_PULL_ALLOC_N(ndr, r->depth, r->num_depths);
159 _mem_save_depth_0 = NDR_PULL_GET_MEM_CTX(ndr);
160 NDR_PULL_SET_MEM_CTX(ndr, r->depth, 0);
161 for (cntr_depth_0 = 0; cntr_depth_0 < r->num_depths; cntr_depth_0++) {
162 NDR_CHECK(ndr_pull_notify_depth(ndr, NDR_SCALARS, &r->depth[cntr_depth_0]));
164 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_depth_0, 0);
166 if (ndr_flags & NDR_BUFFERS) {
167 _mem_save_depth_0 = NDR_PULL_GET_MEM_CTX(ndr);
168 NDR_PULL_SET_MEM_CTX(ndr, r->depth, 0);
169 for (cntr_depth_0 = 0; cntr_depth_0 < r->num_depths; cntr_depth_0++) {
170 NDR_CHECK(ndr_pull_notify_depth(ndr, NDR_BUFFERS, &r->depth[cntr_depth_0]));
172 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_depth_0, 0);
174 return NT_STATUS_OK;
177 _PUBLIC_ void ndr_print_notify_array(struct ndr_print *ndr, const char *name, const struct notify_array *r)
179 uint32_t cntr_depth_0;
180 ndr_print_struct(ndr, name, "notify_array");
181 ndr->depth++;
182 ndr_print_uint32(ndr, "num_depths", r->num_depths);
183 ndr->print(ndr, "%s: ARRAY(%d)", "depth", r->num_depths);
184 ndr->depth++;
185 for (cntr_depth_0=0;cntr_depth_0<r->num_depths;cntr_depth_0++) {
186 char *idx_0=NULL;
187 asprintf(&idx_0, "[%d]", cntr_depth_0);
188 if (idx_0) {
189 ndr_print_notify_depth(ndr, "depth", &r->depth[cntr_depth_0]);
190 free(idx_0);
193 ndr->depth--;
194 ndr->depth--;
197 _PUBLIC_ NTSTATUS ndr_push_notify_event(struct ndr_push *ndr, int ndr_flags, const struct notify_event *r)
199 if (ndr_flags & NDR_SCALARS) {
200 NDR_CHECK(ndr_push_align(ndr, 8));
201 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->action));
203 uint32_t _flags_save_string = ndr->flags;
204 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM);
205 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
206 ndr->flags = _flags_save_string;
208 NDR_CHECK(ndr_push_pointer(ndr, NDR_SCALARS, r->private_data));
210 if (ndr_flags & NDR_BUFFERS) {
212 return NT_STATUS_OK;
215 _PUBLIC_ NTSTATUS ndr_pull_notify_event(struct ndr_pull *ndr, int ndr_flags, struct notify_event *r)
217 if (ndr_flags & NDR_SCALARS) {
218 NDR_CHECK(ndr_pull_align(ndr, 8));
219 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->action));
221 uint32_t _flags_save_string = ndr->flags;
222 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM);
223 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
224 ndr->flags = _flags_save_string;
226 NDR_CHECK(ndr_pull_pointer(ndr, NDR_SCALARS, &r->private_data));
228 if (ndr_flags & NDR_BUFFERS) {
230 return NT_STATUS_OK;
233 _PUBLIC_ void ndr_print_notify_event(struct ndr_print *ndr, const char *name, const struct notify_event *r)
235 ndr_print_struct(ndr, name, "notify_event");
236 ndr->depth++;
237 ndr_print_uint32(ndr, "action", r->action);
238 ndr_print_string(ndr, "path", r->path);
239 ndr_print_pointer(ndr, "private_data", r->private_data);
240 ndr->depth--;