rabbitmq-c  0.5.0
C AMQP Client library for RabbitMQ
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
amqp_framing.h
1 /* Generated code. Do not edit. Edit and re-run codegen.py instead.
2  *
3  * ***** BEGIN LICENSE BLOCK *****
4  * Version: MIT
5  *
6  * Portions created by Alan Antonuk are Copyright (c) 2012-2013
7  * Alan Antonuk. All Rights Reserved.
8  *
9  * Portions created by VMware are Copyright (c) 2007-2012 VMware, Inc.
10  * All Rights Reserved.
11  *
12  * Portions created by Tony Garnock-Jones are Copyright (c) 2009-2010
13  * VMware, Inc. and Tony Garnock-Jones. All Rights Reserved.
14  *
15  * Permission is hereby granted, free of charge, to any person
16  * obtaining a copy of this software and associated documentation
17  * files (the "Software"), to deal in the Software without
18  * restriction, including without limitation the rights to use, copy,
19  * modify, merge, publish, distribute, sublicense, and/or sell copies
20  * of the Software, and to permit persons to whom the Software is
21  * furnished to do so, subject to the following conditions:
22  *
23  * The above copyright notice and this permission notice shall be
24  * included in all copies or substantial portions of the Software.
25  *
26  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
27  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
28  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
29  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
30  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
31  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
32  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
33  * SOFTWARE.
34  * ***** END LICENSE BLOCK *****
35  */
36 
37 #ifndef AMQP_FRAMING_H
38 #define AMQP_FRAMING_H
39 
40 #include <amqp.h>
41 
42 AMQP_BEGIN_DECLS
43 
44 #define AMQP_PROTOCOL_VERSION_MAJOR 0
45 #define AMQP_PROTOCOL_VERSION_MINOR 9
46 #define AMQP_PROTOCOL_VERSION_REVISION 1
47 #define AMQP_PROTOCOL_PORT 5672
48 #define AMQP_FRAME_METHOD 1
49 #define AMQP_FRAME_HEADER 2
50 #define AMQP_FRAME_BODY 3
51 #define AMQP_FRAME_HEARTBEAT 8
52 #define AMQP_FRAME_MIN_SIZE 4096
53 #define AMQP_FRAME_END 206
54 #define AMQP_REPLY_SUCCESS 200
55 #define AMQP_CONTENT_TOO_LARGE 311
56 #define AMQP_NO_ROUTE 312
57 #define AMQP_NO_CONSUMERS 313
58 #define AMQP_ACCESS_REFUSED 403
59 #define AMQP_NOT_FOUND 404
60 #define AMQP_RESOURCE_LOCKED 405
61 #define AMQP_PRECONDITION_FAILED 406
62 #define AMQP_CONNECTION_FORCED 320
63 #define AMQP_INVALID_PATH 402
64 #define AMQP_FRAME_ERROR 501
65 #define AMQP_SYNTAX_ERROR 502
66 #define AMQP_COMMAND_INVALID 503
67 #define AMQP_CHANNEL_ERROR 504
68 #define AMQP_UNEXPECTED_FRAME 505
69 #define AMQP_RESOURCE_ERROR 506
70 #define AMQP_NOT_ALLOWED 530
71 #define AMQP_NOT_IMPLEMENTED 540
72 #define AMQP_INTERNAL_ERROR 541
73 
74 /* Function prototypes. */
75 
76 AMQP_PUBLIC_FUNCTION
77 char const *
78 AMQP_CALL amqp_constant_name(int constantNumber);
79 
80 AMQP_PUBLIC_FUNCTION
82 AMQP_CALL amqp_constant_is_hard_error(int constantNumber);
83 
84 AMQP_PUBLIC_FUNCTION
85 char const *
86 AMQP_CALL amqp_method_name(amqp_method_number_t methodNumber);
87 
88 AMQP_PUBLIC_FUNCTION
90 AMQP_CALL amqp_method_has_content(amqp_method_number_t methodNumber);
91 
92 AMQP_PUBLIC_FUNCTION
93 int
94 AMQP_CALL amqp_decode_method(amqp_method_number_t methodNumber,
95  amqp_pool_t *pool,
96  amqp_bytes_t encoded,
97  void **decoded);
98 
99 AMQP_PUBLIC_FUNCTION
100 int
101 AMQP_CALL amqp_decode_properties(uint16_t class_id,
102  amqp_pool_t *pool,
103  amqp_bytes_t encoded,
104  void **decoded);
105 
106 AMQP_PUBLIC_FUNCTION
107 int
108 AMQP_CALL amqp_encode_method(amqp_method_number_t methodNumber,
109  void *decoded,
110  amqp_bytes_t encoded);
111 
112 AMQP_PUBLIC_FUNCTION
113 int
114 AMQP_CALL amqp_encode_properties(uint16_t class_id,
115  void *decoded,
116  amqp_bytes_t encoded);
117 
118 /* Method field records. */
119 
120 #define AMQP_CONNECTION_START_METHOD ((amqp_method_number_t) 0x000A000A) /* 10, 10; 655370 */
121 typedef struct amqp_connection_start_t_ {
122  uint8_t version_major;
123  uint8_t version_minor;
124  amqp_table_t server_properties;
125  amqp_bytes_t mechanisms;
126  amqp_bytes_t locales;
128 
129 #define AMQP_CONNECTION_START_OK_METHOD ((amqp_method_number_t) 0x000A000B) /* 10, 11; 655371 */
130 typedef struct amqp_connection_start_ok_t_ {
131  amqp_table_t client_properties;
132  amqp_bytes_t mechanism;
133  amqp_bytes_t response;
134  amqp_bytes_t locale;
136 
137 #define AMQP_CONNECTION_SECURE_METHOD ((amqp_method_number_t) 0x000A0014) /* 10, 20; 655380 */
138 typedef struct amqp_connection_secure_t_ {
139  amqp_bytes_t challenge;
141 
142 #define AMQP_CONNECTION_SECURE_OK_METHOD ((amqp_method_number_t) 0x000A0015) /* 10, 21; 655381 */
143 typedef struct amqp_connection_secure_ok_t_ {
144  amqp_bytes_t response;
146 
147 #define AMQP_CONNECTION_TUNE_METHOD ((amqp_method_number_t) 0x000A001E) /* 10, 30; 655390 */
148 typedef struct amqp_connection_tune_t_ {
149  uint16_t channel_max;
150  uint32_t frame_max;
151  uint16_t heartbeat;
153 
154 #define AMQP_CONNECTION_TUNE_OK_METHOD ((amqp_method_number_t) 0x000A001F) /* 10, 31; 655391 */
155 typedef struct amqp_connection_tune_ok_t_ {
156  uint16_t channel_max;
157  uint32_t frame_max;
158  uint16_t heartbeat;
160 
161 #define AMQP_CONNECTION_OPEN_METHOD ((amqp_method_number_t) 0x000A0028) /* 10, 40; 655400 */
162 typedef struct amqp_connection_open_t_ {
163  amqp_bytes_t virtual_host;
164  amqp_bytes_t capabilities;
165  amqp_boolean_t insist;
167 
168 #define AMQP_CONNECTION_OPEN_OK_METHOD ((amqp_method_number_t) 0x000A0029) /* 10, 41; 655401 */
169 typedef struct amqp_connection_open_ok_t_ {
170  amqp_bytes_t known_hosts;
172 
173 #define AMQP_CONNECTION_CLOSE_METHOD ((amqp_method_number_t) 0x000A0032) /* 10, 50; 655410 */
174 typedef struct amqp_connection_close_t_ {
175  uint16_t reply_code;
176  amqp_bytes_t reply_text;
177  uint16_t class_id;
178  uint16_t method_id;
180 
181 #define AMQP_CONNECTION_CLOSE_OK_METHOD ((amqp_method_number_t) 0x000A0033) /* 10, 51; 655411 */
182 typedef struct amqp_connection_close_ok_t_ {
183  char dummy; /* Dummy field to avoid empty struct */
185 
186 #define AMQP_CONNECTION_BLOCKED_METHOD ((amqp_method_number_t) 0x000A003C) /* 10, 60; 655420 */
187 typedef struct amqp_connection_blocked_t_ {
188  amqp_bytes_t reason;
190 
191 #define AMQP_CONNECTION_UNBLOCKED_METHOD ((amqp_method_number_t) 0x000A003D) /* 10, 61; 655421 */
192 typedef struct amqp_connection_unblocked_t_ {
193  char dummy; /* Dummy field to avoid empty struct */
195 
196 #define AMQP_CHANNEL_OPEN_METHOD ((amqp_method_number_t) 0x0014000A) /* 20, 10; 1310730 */
197 typedef struct amqp_channel_open_t_ {
198  amqp_bytes_t out_of_band;
200 
201 #define AMQP_CHANNEL_OPEN_OK_METHOD ((amqp_method_number_t) 0x0014000B) /* 20, 11; 1310731 */
202 typedef struct amqp_channel_open_ok_t_ {
203  amqp_bytes_t channel_id;
205 
206 #define AMQP_CHANNEL_FLOW_METHOD ((amqp_method_number_t) 0x00140014) /* 20, 20; 1310740 */
207 typedef struct amqp_channel_flow_t_ {
208  amqp_boolean_t active;
210 
211 #define AMQP_CHANNEL_FLOW_OK_METHOD ((amqp_method_number_t) 0x00140015) /* 20, 21; 1310741 */
212 typedef struct amqp_channel_flow_ok_t_ {
213  amqp_boolean_t active;
215 
216 #define AMQP_CHANNEL_CLOSE_METHOD ((amqp_method_number_t) 0x00140028) /* 20, 40; 1310760 */
217 typedef struct amqp_channel_close_t_ {
218  uint16_t reply_code;
219  amqp_bytes_t reply_text;
220  uint16_t class_id;
221  uint16_t method_id;
223 
224 #define AMQP_CHANNEL_CLOSE_OK_METHOD ((amqp_method_number_t) 0x00140029) /* 20, 41; 1310761 */
225 typedef struct amqp_channel_close_ok_t_ {
226  char dummy; /* Dummy field to avoid empty struct */
228 
229 #define AMQP_ACCESS_REQUEST_METHOD ((amqp_method_number_t) 0x001E000A) /* 30, 10; 1966090 */
230 typedef struct amqp_access_request_t_ {
231  amqp_bytes_t realm;
232  amqp_boolean_t exclusive;
233  amqp_boolean_t passive;
234  amqp_boolean_t active;
235  amqp_boolean_t write;
236  amqp_boolean_t read;
238 
239 #define AMQP_ACCESS_REQUEST_OK_METHOD ((amqp_method_number_t) 0x001E000B) /* 30, 11; 1966091 */
240 typedef struct amqp_access_request_ok_t_ {
241  uint16_t ticket;
243 
244 #define AMQP_EXCHANGE_DECLARE_METHOD ((amqp_method_number_t) 0x0028000A) /* 40, 10; 2621450 */
245 typedef struct amqp_exchange_declare_t_ {
246  uint16_t ticket;
247  amqp_bytes_t exchange;
248  amqp_bytes_t type;
249  amqp_boolean_t passive;
250  amqp_boolean_t durable;
251  amqp_boolean_t auto_delete;
252  amqp_boolean_t internal;
253  amqp_boolean_t nowait;
254  amqp_table_t arguments;
256 
257 #define AMQP_EXCHANGE_DECLARE_OK_METHOD ((amqp_method_number_t) 0x0028000B) /* 40, 11; 2621451 */
258 typedef struct amqp_exchange_declare_ok_t_ {
259  char dummy; /* Dummy field to avoid empty struct */
261 
262 #define AMQP_EXCHANGE_DELETE_METHOD ((amqp_method_number_t) 0x00280014) /* 40, 20; 2621460 */
263 typedef struct amqp_exchange_delete_t_ {
264  uint16_t ticket;
265  amqp_bytes_t exchange;
266  amqp_boolean_t if_unused;
267  amqp_boolean_t nowait;
269 
270 #define AMQP_EXCHANGE_DELETE_OK_METHOD ((amqp_method_number_t) 0x00280015) /* 40, 21; 2621461 */
271 typedef struct amqp_exchange_delete_ok_t_ {
272  char dummy; /* Dummy field to avoid empty struct */
274 
275 #define AMQP_EXCHANGE_BIND_METHOD ((amqp_method_number_t) 0x0028001E) /* 40, 30; 2621470 */
276 typedef struct amqp_exchange_bind_t_ {
277  uint16_t ticket;
278  amqp_bytes_t destination;
279  amqp_bytes_t source;
280  amqp_bytes_t routing_key;
281  amqp_boolean_t nowait;
282  amqp_table_t arguments;
284 
285 #define AMQP_EXCHANGE_BIND_OK_METHOD ((amqp_method_number_t) 0x0028001F) /* 40, 31; 2621471 */
286 typedef struct amqp_exchange_bind_ok_t_ {
287  char dummy; /* Dummy field to avoid empty struct */
289 
290 #define AMQP_EXCHANGE_UNBIND_METHOD ((amqp_method_number_t) 0x00280028) /* 40, 40; 2621480 */
291 typedef struct amqp_exchange_unbind_t_ {
292  uint16_t ticket;
293  amqp_bytes_t destination;
294  amqp_bytes_t source;
295  amqp_bytes_t routing_key;
296  amqp_boolean_t nowait;
297  amqp_table_t arguments;
299 
300 #define AMQP_EXCHANGE_UNBIND_OK_METHOD ((amqp_method_number_t) 0x00280033) /* 40, 51; 2621491 */
301 typedef struct amqp_exchange_unbind_ok_t_ {
302  char dummy; /* Dummy field to avoid empty struct */
304 
305 #define AMQP_QUEUE_DECLARE_METHOD ((amqp_method_number_t) 0x0032000A) /* 50, 10; 3276810 */
306 typedef struct amqp_queue_declare_t_ {
307  uint16_t ticket;
308  amqp_bytes_t queue;
309  amqp_boolean_t passive;
310  amqp_boolean_t durable;
311  amqp_boolean_t exclusive;
312  amqp_boolean_t auto_delete;
313  amqp_boolean_t nowait;
314  amqp_table_t arguments;
316 
317 #define AMQP_QUEUE_DECLARE_OK_METHOD ((amqp_method_number_t) 0x0032000B) /* 50, 11; 3276811 */
318 typedef struct amqp_queue_declare_ok_t_ {
319  amqp_bytes_t queue;
320  uint32_t message_count;
321  uint32_t consumer_count;
323 
324 #define AMQP_QUEUE_BIND_METHOD ((amqp_method_number_t) 0x00320014) /* 50, 20; 3276820 */
325 typedef struct amqp_queue_bind_t_ {
326  uint16_t ticket;
327  amqp_bytes_t queue;
328  amqp_bytes_t exchange;
329  amqp_bytes_t routing_key;
330  amqp_boolean_t nowait;
331  amqp_table_t arguments;
333 
334 #define AMQP_QUEUE_BIND_OK_METHOD ((amqp_method_number_t) 0x00320015) /* 50, 21; 3276821 */
335 typedef struct amqp_queue_bind_ok_t_ {
336  char dummy; /* Dummy field to avoid empty struct */
338 
339 #define AMQP_QUEUE_PURGE_METHOD ((amqp_method_number_t) 0x0032001E) /* 50, 30; 3276830 */
340 typedef struct amqp_queue_purge_t_ {
341  uint16_t ticket;
342  amqp_bytes_t queue;
343  amqp_boolean_t nowait;
345 
346 #define AMQP_QUEUE_PURGE_OK_METHOD ((amqp_method_number_t) 0x0032001F) /* 50, 31; 3276831 */
347 typedef struct amqp_queue_purge_ok_t_ {
348  uint32_t message_count;
350 
351 #define AMQP_QUEUE_DELETE_METHOD ((amqp_method_number_t) 0x00320028) /* 50, 40; 3276840 */
352 typedef struct amqp_queue_delete_t_ {
353  uint16_t ticket;
354  amqp_bytes_t queue;
355  amqp_boolean_t if_unused;
356  amqp_boolean_t if_empty;
357  amqp_boolean_t nowait;
359 
360 #define AMQP_QUEUE_DELETE_OK_METHOD ((amqp_method_number_t) 0x00320029) /* 50, 41; 3276841 */
361 typedef struct amqp_queue_delete_ok_t_ {
362  uint32_t message_count;
364 
365 #define AMQP_QUEUE_UNBIND_METHOD ((amqp_method_number_t) 0x00320032) /* 50, 50; 3276850 */
366 typedef struct amqp_queue_unbind_t_ {
367  uint16_t ticket;
368  amqp_bytes_t queue;
369  amqp_bytes_t exchange;
370  amqp_bytes_t routing_key;
371  amqp_table_t arguments;
373 
374 #define AMQP_QUEUE_UNBIND_OK_METHOD ((amqp_method_number_t) 0x00320033) /* 50, 51; 3276851 */
375 typedef struct amqp_queue_unbind_ok_t_ {
376  char dummy; /* Dummy field to avoid empty struct */
378 
379 #define AMQP_BASIC_QOS_METHOD ((amqp_method_number_t) 0x003C000A) /* 60, 10; 3932170 */
380 typedef struct amqp_basic_qos_t_ {
381  uint32_t prefetch_size;
382  uint16_t prefetch_count;
383  amqp_boolean_t global;
385 
386 #define AMQP_BASIC_QOS_OK_METHOD ((amqp_method_number_t) 0x003C000B) /* 60, 11; 3932171 */
387 typedef struct amqp_basic_qos_ok_t_ {
388  char dummy; /* Dummy field to avoid empty struct */
390 
391 #define AMQP_BASIC_CONSUME_METHOD ((amqp_method_number_t) 0x003C0014) /* 60, 20; 3932180 */
392 typedef struct amqp_basic_consume_t_ {
393  uint16_t ticket;
394  amqp_bytes_t queue;
395  amqp_bytes_t consumer_tag;
396  amqp_boolean_t no_local;
397  amqp_boolean_t no_ack;
398  amqp_boolean_t exclusive;
399  amqp_boolean_t nowait;
400  amqp_table_t arguments;
402 
403 #define AMQP_BASIC_CONSUME_OK_METHOD ((amqp_method_number_t) 0x003C0015) /* 60, 21; 3932181 */
404 typedef struct amqp_basic_consume_ok_t_ {
405  amqp_bytes_t consumer_tag;
407 
408 #define AMQP_BASIC_CANCEL_METHOD ((amqp_method_number_t) 0x003C001E) /* 60, 30; 3932190 */
409 typedef struct amqp_basic_cancel_t_ {
410  amqp_bytes_t consumer_tag;
411  amqp_boolean_t nowait;
413 
414 #define AMQP_BASIC_CANCEL_OK_METHOD ((amqp_method_number_t) 0x003C001F) /* 60, 31; 3932191 */
415 typedef struct amqp_basic_cancel_ok_t_ {
416  amqp_bytes_t consumer_tag;
418 
419 #define AMQP_BASIC_PUBLISH_METHOD ((amqp_method_number_t) 0x003C0028) /* 60, 40; 3932200 */
420 typedef struct amqp_basic_publish_t_ {
421  uint16_t ticket;
422  amqp_bytes_t exchange;
423  amqp_bytes_t routing_key;
424  amqp_boolean_t mandatory;
425  amqp_boolean_t immediate;
427 
428 #define AMQP_BASIC_RETURN_METHOD ((amqp_method_number_t) 0x003C0032) /* 60, 50; 3932210 */
429 typedef struct amqp_basic_return_t_ {
430  uint16_t reply_code;
431  amqp_bytes_t reply_text;
432  amqp_bytes_t exchange;
433  amqp_bytes_t routing_key;
435 
436 #define AMQP_BASIC_DELIVER_METHOD ((amqp_method_number_t) 0x003C003C) /* 60, 60; 3932220 */
437 typedef struct amqp_basic_deliver_t_ {
438  amqp_bytes_t consumer_tag;
439  uint64_t delivery_tag;
440  amqp_boolean_t redelivered;
441  amqp_bytes_t exchange;
442  amqp_bytes_t routing_key;
444 
445 #define AMQP_BASIC_GET_METHOD ((amqp_method_number_t) 0x003C0046) /* 60, 70; 3932230 */
446 typedef struct amqp_basic_get_t_ {
447  uint16_t ticket;
448  amqp_bytes_t queue;
449  amqp_boolean_t no_ack;
451 
452 #define AMQP_BASIC_GET_OK_METHOD ((amqp_method_number_t) 0x003C0047) /* 60, 71; 3932231 */
453 typedef struct amqp_basic_get_ok_t_ {
454  uint64_t delivery_tag;
455  amqp_boolean_t redelivered;
456  amqp_bytes_t exchange;
457  amqp_bytes_t routing_key;
458  uint32_t message_count;
460 
461 #define AMQP_BASIC_GET_EMPTY_METHOD ((amqp_method_number_t) 0x003C0048) /* 60, 72; 3932232 */
462 typedef struct amqp_basic_get_empty_t_ {
463  amqp_bytes_t cluster_id;
465 
466 #define AMQP_BASIC_ACK_METHOD ((amqp_method_number_t) 0x003C0050) /* 60, 80; 3932240 */
467 typedef struct amqp_basic_ack_t_ {
468  uint64_t delivery_tag;
469  amqp_boolean_t multiple;
471 
472 #define AMQP_BASIC_REJECT_METHOD ((amqp_method_number_t) 0x003C005A) /* 60, 90; 3932250 */
473 typedef struct amqp_basic_reject_t_ {
474  uint64_t delivery_tag;
475  amqp_boolean_t requeue;
477 
478 #define AMQP_BASIC_RECOVER_ASYNC_METHOD ((amqp_method_number_t) 0x003C0064) /* 60, 100; 3932260 */
479 typedef struct amqp_basic_recover_async_t_ {
480  amqp_boolean_t requeue;
482 
483 #define AMQP_BASIC_RECOVER_METHOD ((amqp_method_number_t) 0x003C006E) /* 60, 110; 3932270 */
484 typedef struct amqp_basic_recover_t_ {
485  amqp_boolean_t requeue;
487 
488 #define AMQP_BASIC_RECOVER_OK_METHOD ((amqp_method_number_t) 0x003C006F) /* 60, 111; 3932271 */
489 typedef struct amqp_basic_recover_ok_t_ {
490  char dummy; /* Dummy field to avoid empty struct */
492 
493 #define AMQP_BASIC_NACK_METHOD ((amqp_method_number_t) 0x003C0078) /* 60, 120; 3932280 */
494 typedef struct amqp_basic_nack_t_ {
495  uint64_t delivery_tag;
496  amqp_boolean_t multiple;
497  amqp_boolean_t requeue;
499 
500 #define AMQP_TX_SELECT_METHOD ((amqp_method_number_t) 0x005A000A) /* 90, 10; 5898250 */
501 typedef struct amqp_tx_select_t_ {
502  char dummy; /* Dummy field to avoid empty struct */
504 
505 #define AMQP_TX_SELECT_OK_METHOD ((amqp_method_number_t) 0x005A000B) /* 90, 11; 5898251 */
506 typedef struct amqp_tx_select_ok_t_ {
507  char dummy; /* Dummy field to avoid empty struct */
509 
510 #define AMQP_TX_COMMIT_METHOD ((amqp_method_number_t) 0x005A0014) /* 90, 20; 5898260 */
511 typedef struct amqp_tx_commit_t_ {
512  char dummy; /* Dummy field to avoid empty struct */
514 
515 #define AMQP_TX_COMMIT_OK_METHOD ((amqp_method_number_t) 0x005A0015) /* 90, 21; 5898261 */
516 typedef struct amqp_tx_commit_ok_t_ {
517  char dummy; /* Dummy field to avoid empty struct */
519 
520 #define AMQP_TX_ROLLBACK_METHOD ((amqp_method_number_t) 0x005A001E) /* 90, 30; 5898270 */
521 typedef struct amqp_tx_rollback_t_ {
522  char dummy; /* Dummy field to avoid empty struct */
524 
525 #define AMQP_TX_ROLLBACK_OK_METHOD ((amqp_method_number_t) 0x005A001F) /* 90, 31; 5898271 */
526 typedef struct amqp_tx_rollback_ok_t_ {
527  char dummy; /* Dummy field to avoid empty struct */
529 
530 #define AMQP_CONFIRM_SELECT_METHOD ((amqp_method_number_t) 0x0055000A) /* 85, 10; 5570570 */
531 typedef struct amqp_confirm_select_t_ {
532  amqp_boolean_t nowait;
534 
535 #define AMQP_CONFIRM_SELECT_OK_METHOD ((amqp_method_number_t) 0x0055000B) /* 85, 11; 5570571 */
536 typedef struct amqp_confirm_select_ok_t_ {
537  char dummy; /* Dummy field to avoid empty struct */
539 
540 /* Class property records. */
541 #define AMQP_CONNECTION_CLASS (0x000A) /* 10 */
542 typedef struct amqp_connection_properties_t_ {
543  amqp_flags_t _flags;
544  char dummy; /* Dummy field to avoid empty struct */
546 
547 #define AMQP_CHANNEL_CLASS (0x0014) /* 20 */
548 typedef struct amqp_channel_properties_t_ {
549  amqp_flags_t _flags;
550  char dummy; /* Dummy field to avoid empty struct */
552 
553 #define AMQP_ACCESS_CLASS (0x001E) /* 30 */
554 typedef struct amqp_access_properties_t_ {
555  amqp_flags_t _flags;
556  char dummy; /* Dummy field to avoid empty struct */
558 
559 #define AMQP_EXCHANGE_CLASS (0x0028) /* 40 */
560 typedef struct amqp_exchange_properties_t_ {
561  amqp_flags_t _flags;
562  char dummy; /* Dummy field to avoid empty struct */
564 
565 #define AMQP_QUEUE_CLASS (0x0032) /* 50 */
566 typedef struct amqp_queue_properties_t_ {
567  amqp_flags_t _flags;
568  char dummy; /* Dummy field to avoid empty struct */
570 
571 #define AMQP_BASIC_CLASS (0x003C) /* 60 */
572 #define AMQP_BASIC_CONTENT_TYPE_FLAG (1 << 15)
573 #define AMQP_BASIC_CONTENT_ENCODING_FLAG (1 << 14)
574 #define AMQP_BASIC_HEADERS_FLAG (1 << 13)
575 #define AMQP_BASIC_DELIVERY_MODE_FLAG (1 << 12)
576 #define AMQP_BASIC_PRIORITY_FLAG (1 << 11)
577 #define AMQP_BASIC_CORRELATION_ID_FLAG (1 << 10)
578 #define AMQP_BASIC_REPLY_TO_FLAG (1 << 9)
579 #define AMQP_BASIC_EXPIRATION_FLAG (1 << 8)
580 #define AMQP_BASIC_MESSAGE_ID_FLAG (1 << 7)
581 #define AMQP_BASIC_TIMESTAMP_FLAG (1 << 6)
582 #define AMQP_BASIC_TYPE_FLAG (1 << 5)
583 #define AMQP_BASIC_USER_ID_FLAG (1 << 4)
584 #define AMQP_BASIC_APP_ID_FLAG (1 << 3)
585 #define AMQP_BASIC_CLUSTER_ID_FLAG (1 << 2)
586 typedef struct amqp_basic_properties_t_ {
587  amqp_flags_t _flags;
588  amqp_bytes_t content_type;
589  amqp_bytes_t content_encoding;
590  amqp_table_t headers;
591  uint8_t delivery_mode;
592  uint8_t priority;
593  amqp_bytes_t correlation_id;
594  amqp_bytes_t reply_to;
595  amqp_bytes_t expiration;
596  amqp_bytes_t message_id;
597  uint64_t timestamp;
598  amqp_bytes_t type;
599  amqp_bytes_t user_id;
600  amqp_bytes_t app_id;
601  amqp_bytes_t cluster_id;
603 
604 #define AMQP_TX_CLASS (0x005A) /* 90 */
605 typedef struct amqp_tx_properties_t_ {
606  amqp_flags_t _flags;
607  char dummy; /* Dummy field to avoid empty struct */
609 
610 #define AMQP_CONFIRM_CLASS (0x0055) /* 85 */
611 typedef struct amqp_confirm_properties_t_ {
612  amqp_flags_t _flags;
613  char dummy; /* Dummy field to avoid empty struct */
615 
616 /* API functions for methods */
617 
618 AMQP_PUBLIC_FUNCTION amqp_channel_open_ok_t * AMQP_CALL amqp_channel_open(amqp_connection_state_t state, amqp_channel_t channel);
619 AMQP_PUBLIC_FUNCTION amqp_channel_flow_ok_t * AMQP_CALL amqp_channel_flow(amqp_connection_state_t state, amqp_channel_t channel, amqp_boolean_t active);
620 AMQP_PUBLIC_FUNCTION amqp_exchange_declare_ok_t * AMQP_CALL amqp_exchange_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t exchange, amqp_bytes_t type, amqp_boolean_t passive, amqp_boolean_t durable, amqp_table_t arguments);
621 AMQP_PUBLIC_FUNCTION amqp_exchange_delete_ok_t * AMQP_CALL amqp_exchange_delete(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t exchange, amqp_boolean_t if_unused);
622 AMQP_PUBLIC_FUNCTION amqp_exchange_bind_ok_t * AMQP_CALL amqp_exchange_bind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t destination, amqp_bytes_t source, amqp_bytes_t routing_key, amqp_table_t arguments);
623 AMQP_PUBLIC_FUNCTION amqp_exchange_unbind_ok_t * AMQP_CALL amqp_exchange_unbind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t destination, amqp_bytes_t source, amqp_bytes_t routing_key, amqp_table_t arguments);
624 AMQP_PUBLIC_FUNCTION amqp_queue_declare_ok_t * AMQP_CALL amqp_queue_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t passive, amqp_boolean_t durable, amqp_boolean_t exclusive, amqp_boolean_t auto_delete, amqp_table_t arguments);
625 AMQP_PUBLIC_FUNCTION amqp_queue_bind_ok_t * AMQP_CALL amqp_queue_bind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_table_t arguments);
626 AMQP_PUBLIC_FUNCTION amqp_queue_purge_ok_t * AMQP_CALL amqp_queue_purge(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue);
627 AMQP_PUBLIC_FUNCTION amqp_queue_delete_ok_t * AMQP_CALL amqp_queue_delete(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t if_unused, amqp_boolean_t if_empty);
628 AMQP_PUBLIC_FUNCTION amqp_queue_unbind_ok_t * AMQP_CALL amqp_queue_unbind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_table_t arguments);
629 AMQP_PUBLIC_FUNCTION amqp_basic_qos_ok_t * AMQP_CALL amqp_basic_qos(amqp_connection_state_t state, amqp_channel_t channel, uint32_t prefetch_size, uint16_t prefetch_count, amqp_boolean_t global);
630 AMQP_PUBLIC_FUNCTION amqp_basic_consume_ok_t * AMQP_CALL amqp_basic_consume(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t consumer_tag, amqp_boolean_t no_local, amqp_boolean_t no_ack, amqp_boolean_t exclusive, amqp_table_t arguments);
631 AMQP_PUBLIC_FUNCTION amqp_basic_cancel_ok_t * AMQP_CALL amqp_basic_cancel(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t consumer_tag);
632 AMQP_PUBLIC_FUNCTION amqp_basic_recover_ok_t * AMQP_CALL amqp_basic_recover(amqp_connection_state_t state, amqp_channel_t channel, amqp_boolean_t requeue);
633 AMQP_PUBLIC_FUNCTION amqp_tx_select_ok_t * AMQP_CALL amqp_tx_select(amqp_connection_state_t state, amqp_channel_t channel);
634 AMQP_PUBLIC_FUNCTION amqp_tx_commit_ok_t * AMQP_CALL amqp_tx_commit(amqp_connection_state_t state, amqp_channel_t channel);
635 AMQP_PUBLIC_FUNCTION amqp_tx_rollback_ok_t * AMQP_CALL amqp_tx_rollback(amqp_connection_state_t state, amqp_channel_t channel);
636 AMQP_PUBLIC_FUNCTION amqp_confirm_select_ok_t * AMQP_CALL amqp_confirm_select(amqp_connection_state_t state, amqp_channel_t channel);
637 
638 AMQP_END_DECLS
639 
640 #endif /* AMQP_FRAMING_H */
uint16_t amqp_channel_t
Channel type.
Definition: amqp.h:370
Definition: amqp_framing.h:409
Definition: amqp_framing.h:325
Definition: amqp_framing.h:566
Definition: amqp_framing.h:467
Definition: amqp_framing.h:479
AMQP field table.
Definition: amqp.h:404
Definition: amqp_framing.h:245
Definition: amqp_framing.h:429
Definition: amqp_framing.h:230
Definition: amqp_framing.h:366
Definition: amqp_framing.h:187
uint32_t amqp_flags_t
Bitmask for flags.
Definition: amqp.h:363
Definition: amqp_framing.h:130
Definition: amqp_framing.h:155
Definition: amqp_framing.h:225
Definition: amqp_framing.h:542
Definition: amqp_framing.h:174
Definition: amqp_framing.h:489
Definition: amqp_framing.h:501
Definition: amqp_framing.h:271
Definition: amqp_framing.h:121
Definition: amqp_framing.h:521
Definition: amqp_framing.h:611
Definition: amqp_framing.h:182
Definition: amqp_framing.h:494
Definition: amqp_framing.h:554
Definition: amqp_framing.h:484
Definition: amqp_framing.h:212
Definition: amqp_framing.h:162
Definition: amqp_framing.h:286
Definition: amqp_framing.h:453
uint32_t amqp_method_number_t
Method number.
Definition: amqp.h:356
Definition: amqp_framing.h:258
Definition: amqp_framing.h:446
Definition: amqp_framing.h:169
Definition: amqp_framing.h:197
int amqp_boolean_t
boolean type 0 = false, true otherwise
Definition: amqp.h:349
Definition: amqp_framing.h:531
Definition: amqp_framing.h:506
Definition: amqp_framing.h:404
Definition: amqp_framing.h:192
Definition: amqp_framing.h:605
Definition: amqp_framing.h:473
Definition: amqp_framing.h:437
Definition: amqp_framing.h:420
Definition: amqp_framing.h:217
Definition: amqp_framing.h:380
Definition: amqp_framing.h:526
Definition: amqp_framing.h:291
Definition: amqp_framing.h:392
Definition: amqp_framing.h:143
Definition: amqp_framing.h:415
Definition: amqp_framing.h:387
Definition: amqp_framing.h:335
Definition: amqp_framing.h:276
Definition: amqp_framing.h:202
Definition: amqp_framing.h:347
Definition: amqp_framing.h:306
Definition: amqp_framing.h:263
Definition: amqp_framing.h:586
Definition: amqp_framing.h:536
Definition: amqp_framing.h:340
Buffer descriptor.
Definition: amqp.h:377
A memory pool.
Definition: amqp.h:540
Definition: amqp_framing.h:352
Definition: amqp_framing.h:548
Definition: amqp_framing.h:301
Definition: amqp_framing.h:375
Definition: amqp_framing.h:148
Definition: amqp_framing.h:516
Definition: amqp_framing.h:361
Definition: amqp_framing.h:462
Definition: amqp_framing.h:240
Definition: amqp_framing.h:560
Definition: amqp_framing.h:511
Definition: amqp_framing.h:318
struct amqp_connection_state_t_ * amqp_connection_state_t
connection state object
Definition: amqp.h:644
Definition: amqp_framing.h:207
Definition: amqp_framing.h:138