1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_messaging.h"
6 _PUBLIC_
enum ndr_err_code
ndr_push_messaging_type(struct ndr_push
*ndr
, int ndr_flags
, enum messaging_type r
)
8 NDR_CHECK(ndr_push_enum_uint32(ndr
, NDR_SCALARS
, r
));
9 return NDR_ERR_SUCCESS
;
12 _PUBLIC_
enum ndr_err_code
ndr_pull_messaging_type(struct ndr_pull
*ndr
, int ndr_flags
, enum messaging_type
*r
)
15 NDR_CHECK(ndr_pull_enum_uint32(ndr
, NDR_SCALARS
, &v
));
17 return NDR_ERR_SUCCESS
;
20 _PUBLIC_
void ndr_print_messaging_type(struct ndr_print
*ndr
, const char *name
, enum messaging_type r
)
22 const char *val
= NULL
;
25 case MSG_DEBUG
: val
= "MSG_DEBUG"; break;
26 case MSG_PING
: val
= "MSG_PING"; break;
27 case MSG_PONG
: val
= "MSG_PONG"; break;
28 case MSG_PROFILE
: val
= "MSG_PROFILE"; break;
29 case MSG_REQ_DEBUGLEVEL
: val
= "MSG_REQ_DEBUGLEVEL"; break;
30 case MSG_DEBUGLEVEL
: val
= "MSG_DEBUGLEVEL"; break;
31 case MSG_REQ_PROFILELEVEL
: val
= "MSG_REQ_PROFILELEVEL"; break;
32 case MSG_PROFILELEVEL
: val
= "MSG_PROFILELEVEL"; break;
33 case MSG_REQ_POOL_USAGE
: val
= "MSG_REQ_POOL_USAGE"; break;
34 case MSG_POOL_USAGE
: val
= "MSG_POOL_USAGE"; break;
35 case MSG_REQ_DMALLOC_MARK
: val
= "MSG_REQ_DMALLOC_MARK"; break;
36 case MSG_REQ_DMALLOC_LOG_CHANGED
: val
= "MSG_REQ_DMALLOC_LOG_CHANGED"; break;
37 case MSG_SHUTDOWN
: val
= "MSG_SHUTDOWN"; break;
38 case MSG_FORCE_ELECTION
: val
= "MSG_FORCE_ELECTION"; break;
39 case MSG_WINS_NEW_ENTRY
: val
= "MSG_WINS_NEW_ENTRY"; break;
40 case MSG_SEND_PACKET
: val
= "MSG_SEND_PACKET"; break;
41 case MSG_PRINTER_NOTIFY
: val
= "MSG_PRINTER_NOTIFY"; break;
42 case MSG_PRINTER_NOTIFY2
: val
= "MSG_PRINTER_NOTIFY2"; break;
43 case MSG_PRINTER_DRVUPGRADE
: val
= "MSG_PRINTER_DRVUPGRADE"; break;
44 case MSG_PRINTERDATA_INIT_RESET
: val
= "MSG_PRINTERDATA_INIT_RESET"; break;
45 case MSG_PRINTER_UPDATE
: val
= "MSG_PRINTER_UPDATE"; break;
46 case MSG_PRINTER_MOD
: val
= "MSG_PRINTER_MOD"; break;
47 case MSG_SMB_CONF_UPDATED
: val
= "MSG_SMB_CONF_UPDATED"; break;
48 case MSG_SMB_FORCE_TDIS
: val
= "MSG_SMB_FORCE_TDIS"; break;
49 case MSG_SMB_SAM_SYNC
: val
= "MSG_SMB_SAM_SYNC"; break;
50 case MSG_SMB_SAM_REPL
: val
= "MSG_SMB_SAM_REPL"; break;
51 case MSG_SMB_UNLOCK
: val
= "MSG_SMB_UNLOCK"; break;
52 case MSG_SMB_BREAK_REQUEST
: val
= "MSG_SMB_BREAK_REQUEST"; break;
53 case MSG_SMB_BREAK_RESPONSE
: val
= "MSG_SMB_BREAK_RESPONSE"; break;
54 case MSG_SMB_ASYNC_LEVEL2_BREAK
: val
= "MSG_SMB_ASYNC_LEVEL2_BREAK"; break;
55 case MSG_SMB_OPEN_RETRY
: val
= "MSG_SMB_OPEN_RETRY"; break;
56 case MSG_SMB_KERNEL_BREAK
: val
= "MSG_SMB_KERNEL_BREAK"; break;
57 case MSG_SMB_FILE_RENAME
: val
= "MSG_SMB_FILE_RENAME"; break;
58 case MSG_SMB_INJECT_FAULT
: val
= "MSG_SMB_INJECT_FAULT"; break;
59 case MSG_SMB_BLOCKING_LOCK_CANCEL
: val
= "MSG_SMB_BLOCKING_LOCK_CANCEL"; break;
60 case MSG_SMB_NOTIFY
: val
= "MSG_SMB_NOTIFY"; break;
61 case MSG_SMB_STAT_CACHE_DELETE
: val
= "MSG_SMB_STAT_CACHE_DELETE"; break;
62 case MSG_PVFS_NOTIFY
: val
= "MSG_PVFS_NOTIFY"; break;
63 case MSG_SMB_BRL_VALIDATE
: val
= "MSG_SMB_BRL_VALIDATE"; break;
64 case MSG_SMB_RELEASE_IP
: val
= "MSG_SMB_RELEASE_IP"; break;
65 case MSG_SMB_CLOSE_FILE
: val
= "MSG_SMB_CLOSE_FILE"; break;
66 case MSG_WINBIND_FINISHED
: val
= "MSG_WINBIND_FINISHED"; break;
67 case MSG_WINBIND_FORGET_STATE
: val
= "MSG_WINBIND_FORGET_STATE"; break;
68 case MSG_WINBIND_ONLINE
: val
= "MSG_WINBIND_ONLINE"; break;
69 case MSG_WINBIND_OFFLINE
: val
= "MSG_WINBIND_OFFLINE"; break;
70 case MSG_WINBIND_ONLINESTATUS
: val
= "MSG_WINBIND_ONLINESTATUS"; break;
71 case MSG_WINBIND_TRY_TO_GO_ONLINE
: val
= "MSG_WINBIND_TRY_TO_GO_ONLINE"; break;
72 case MSG_WINBIND_FAILED_TO_GO_ONLINE
: val
= "MSG_WINBIND_FAILED_TO_GO_ONLINE"; break;
73 case MSG_WINBIND_VALIDATE_CACHE
: val
= "MSG_WINBIND_VALIDATE_CACHE"; break;
74 case MSG_WINBIND_DUMP_DOMAIN_LIST
: val
= "MSG_WINBIND_DUMP_DOMAIN_LIST"; break;
75 case MSG_DUMP_EVENT_LIST
: val
= "MSG_DUMP_EVENT_LIST"; break;
76 case MSG_DBWRAP_TDB2_CHANGES
: val
= "MSG_DBWRAP_TDB2_CHANGES"; break;
77 case MSG_DBWRAP_G_LOCK_RETRY
: val
= "MSG_DBWRAP_G_LOCK_RETRY"; break;
79 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
82 _PUBLIC_
enum ndr_err_code
ndr_push_messaging_rec(struct ndr_push
*ndr
, int ndr_flags
, const struct messaging_rec
*r
)
84 if (ndr_flags
& NDR_SCALARS
) {
85 NDR_CHECK(ndr_push_align(ndr
, 4));
86 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->msg_version
));
87 NDR_CHECK(ndr_push_messaging_type(ndr
, NDR_SCALARS
, r
->msg_type
));
88 NDR_CHECK(ndr_push_server_id(ndr
, NDR_SCALARS
, &r
->dest
));
89 NDR_CHECK(ndr_push_server_id(ndr
, NDR_SCALARS
, &r
->src
));
90 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->buf
));
91 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
93 if (ndr_flags
& NDR_BUFFERS
) {
94 NDR_CHECK(ndr_push_server_id(ndr
, NDR_BUFFERS
, &r
->dest
));
95 NDR_CHECK(ndr_push_server_id(ndr
, NDR_BUFFERS
, &r
->src
));
97 return NDR_ERR_SUCCESS
;
100 _PUBLIC_
enum ndr_err_code
ndr_pull_messaging_rec(struct ndr_pull
*ndr
, int ndr_flags
, struct messaging_rec
*r
)
102 if (ndr_flags
& NDR_SCALARS
) {
103 NDR_CHECK(ndr_pull_align(ndr
, 4));
104 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->msg_version
));
105 NDR_CHECK(ndr_pull_messaging_type(ndr
, NDR_SCALARS
, &r
->msg_type
));
106 NDR_CHECK(ndr_pull_server_id(ndr
, NDR_SCALARS
, &r
->dest
));
107 NDR_CHECK(ndr_pull_server_id(ndr
, NDR_SCALARS
, &r
->src
));
108 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->buf
));
109 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
111 if (ndr_flags
& NDR_BUFFERS
) {
112 NDR_CHECK(ndr_pull_server_id(ndr
, NDR_BUFFERS
, &r
->dest
));
113 NDR_CHECK(ndr_pull_server_id(ndr
, NDR_BUFFERS
, &r
->src
));
115 return NDR_ERR_SUCCESS
;
118 _PUBLIC_
void ndr_print_messaging_rec(struct ndr_print
*ndr
, const char *name
, const struct messaging_rec
*r
)
120 ndr_print_struct(ndr
, name
, "messaging_rec");
122 ndr_print_uint32(ndr
, "msg_version", r
->msg_version
);
123 ndr_print_messaging_type(ndr
, "msg_type", r
->msg_type
);
124 ndr_print_server_id(ndr
, "dest", &r
->dest
);
125 ndr_print_server_id(ndr
, "src", &r
->src
);
126 ndr_print_DATA_BLOB(ndr
, "buf", r
->buf
);
130 _PUBLIC_
enum ndr_err_code
ndr_push_messaging_array(struct ndr_push
*ndr
, int ndr_flags
, const struct messaging_array
*r
)
132 uint32_t cntr_messages_0
;
133 if (ndr_flags
& NDR_SCALARS
) {
134 NDR_CHECK(ndr_push_align(ndr
, 4));
135 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_messages
));
136 for (cntr_messages_0
= 0; cntr_messages_0
< r
->num_messages
; cntr_messages_0
++) {
137 NDR_CHECK(ndr_push_messaging_rec(ndr
, NDR_SCALARS
, &r
->messages
[cntr_messages_0
]));
139 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
141 if (ndr_flags
& NDR_BUFFERS
) {
142 for (cntr_messages_0
= 0; cntr_messages_0
< r
->num_messages
; cntr_messages_0
++) {
143 NDR_CHECK(ndr_push_messaging_rec(ndr
, NDR_BUFFERS
, &r
->messages
[cntr_messages_0
]));
146 return NDR_ERR_SUCCESS
;
149 _PUBLIC_
enum ndr_err_code
ndr_pull_messaging_array(struct ndr_pull
*ndr
, int ndr_flags
, struct messaging_array
*r
)
151 uint32_t cntr_messages_0
;
152 TALLOC_CTX
*_mem_save_messages_0
;
153 if (ndr_flags
& NDR_SCALARS
) {
154 NDR_CHECK(ndr_pull_align(ndr
, 4));
155 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_messages
));
156 NDR_PULL_ALLOC_N(ndr
, r
->messages
, r
->num_messages
);
157 _mem_save_messages_0
= NDR_PULL_GET_MEM_CTX(ndr
);
158 NDR_PULL_SET_MEM_CTX(ndr
, r
->messages
, 0);
159 for (cntr_messages_0
= 0; cntr_messages_0
< r
->num_messages
; cntr_messages_0
++) {
160 NDR_CHECK(ndr_pull_messaging_rec(ndr
, NDR_SCALARS
, &r
->messages
[cntr_messages_0
]));
162 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_messages_0
, 0);
163 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
165 if (ndr_flags
& NDR_BUFFERS
) {
166 _mem_save_messages_0
= NDR_PULL_GET_MEM_CTX(ndr
);
167 NDR_PULL_SET_MEM_CTX(ndr
, r
->messages
, 0);
168 for (cntr_messages_0
= 0; cntr_messages_0
< r
->num_messages
; cntr_messages_0
++) {
169 NDR_CHECK(ndr_pull_messaging_rec(ndr
, NDR_BUFFERS
, &r
->messages
[cntr_messages_0
]));
171 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_messages_0
, 0);
173 return NDR_ERR_SUCCESS
;
176 _PUBLIC_
void ndr_print_messaging_array(struct ndr_print
*ndr
, const char *name
, const struct messaging_array
*r
)
178 uint32_t cntr_messages_0
;
179 ndr_print_struct(ndr
, name
, "messaging_array");
181 ndr_print_uint32(ndr
, "num_messages", r
->num_messages
);
182 ndr
->print(ndr
, "%s: ARRAY(%d)", "messages", (int)r
->num_messages
);
184 for (cntr_messages_0
=0;cntr_messages_0
<r
->num_messages
;cntr_messages_0
++) {
186 if (asprintf(&idx_0
, "[%d]", cntr_messages_0
) != -1) {
187 ndr_print_messaging_rec(ndr
, "messages", &r
->messages
[cntr_messages_0
]);
195 _PUBLIC_
enum ndr_err_code
ndr_push_dbwrap_tdb2_changes(struct ndr_push
*ndr
, int ndr_flags
, const struct dbwrap_tdb2_changes
*r
)
197 uint32_t cntr_keys_0
;
198 if (ndr_flags
& NDR_SCALARS
) {
199 NDR_CHECK(ndr_push_align(ndr
, 4));
200 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, "TDB2", 4, sizeof(uint8_t), CH_DOS
));
201 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 1));
202 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->name
, CH_UTF8
)));
203 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
204 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->name
, CH_UTF8
)));
205 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->name
, ndr_charset_length(r
->name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
206 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->old_seqnum
));
207 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->new_seqnum
));
208 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_changes
));
209 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_keys
));
210 for (cntr_keys_0
= 0; cntr_keys_0
< r
->num_keys
; cntr_keys_0
++) {
211 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->keys
[cntr_keys_0
]));
213 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
215 if (ndr_flags
& NDR_BUFFERS
) {
217 return NDR_ERR_SUCCESS
;
220 _PUBLIC_
enum ndr_err_code
ndr_pull_dbwrap_tdb2_changes(struct ndr_pull
*ndr
, int ndr_flags
, struct dbwrap_tdb2_changes
*r
)
222 uint32_t cntr_keys_0
;
223 TALLOC_CTX
*_mem_save_keys_0
;
224 if (ndr_flags
& NDR_SCALARS
) {
225 NDR_CHECK(ndr_pull_align(ndr
, 4));
226 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->magic_string
, 4, sizeof(uint8_t), CH_DOS
));
227 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->magic_version
));
228 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->name
));
229 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->name
));
230 if (ndr_get_array_length(ndr
, &r
->name
) > ndr_get_array_size(ndr
, &r
->name
)) {
231 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->name
), ndr_get_array_length(ndr
, &r
->name
));
233 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->name
), sizeof(uint8_t)));
234 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->name
, ndr_get_array_length(ndr
, &r
->name
), sizeof(uint8_t), CH_UTF8
));
235 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->old_seqnum
));
236 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->new_seqnum
));
237 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_changes
));
238 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_keys
));
239 NDR_PULL_ALLOC_N(ndr
, r
->keys
, r
->num_keys
);
240 _mem_save_keys_0
= NDR_PULL_GET_MEM_CTX(ndr
);
241 NDR_PULL_SET_MEM_CTX(ndr
, r
->keys
, 0);
242 for (cntr_keys_0
= 0; cntr_keys_0
< r
->num_keys
; cntr_keys_0
++) {
243 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->keys
[cntr_keys_0
]));
245 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_keys_0
, 0);
246 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
248 if (ndr_flags
& NDR_BUFFERS
) {
250 return NDR_ERR_SUCCESS
;
253 _PUBLIC_
void ndr_print_dbwrap_tdb2_changes(struct ndr_print
*ndr
, const char *name
, const struct dbwrap_tdb2_changes
*r
)
255 uint32_t cntr_keys_0
;
256 ndr_print_struct(ndr
, name
, "dbwrap_tdb2_changes");
258 ndr_print_string(ndr
, "magic_string", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?"TDB2":r
->magic_string
);
259 ndr_print_uint32(ndr
, "magic_version", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?1:r
->magic_version
);
260 ndr_print_string(ndr
, "name", r
->name
);
261 ndr_print_uint32(ndr
, "old_seqnum", r
->old_seqnum
);
262 ndr_print_uint32(ndr
, "new_seqnum", r
->new_seqnum
);
263 ndr_print_uint32(ndr
, "num_changes", r
->num_changes
);
264 ndr_print_uint32(ndr
, "num_keys", r
->num_keys
);
265 ndr
->print(ndr
, "%s: ARRAY(%d)", "keys", (int)r
->num_keys
);
267 for (cntr_keys_0
=0;cntr_keys_0
<r
->num_keys
;cntr_keys_0
++) {
269 if (asprintf(&idx_0
, "[%d]", cntr_keys_0
) != -1) {
270 ndr_print_DATA_BLOB(ndr
, "keys", r
->keys
[cntr_keys_0
]);