zmq_draft.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MPL-2.0 */
2 
3 #ifndef __ZMQ_DRAFT_H_INCLUDED__
4 #define __ZMQ_DRAFT_H_INCLUDED__
5 
6 /******************************************************************************/
7 /* These functions are DRAFT and disabled in stable releases, and subject to */
8 /* change at ANY time until declared stable. */
9 /******************************************************************************/
10 
11 #ifndef ZMQ_BUILD_DRAFT_API
12 
13 /* DRAFT Socket types. */
14 #define ZMQ_SERVER 12
15 #define ZMQ_CLIENT 13
16 #define ZMQ_RADIO 14
17 #define ZMQ_DISH 15
18 #define ZMQ_GATHER 16
19 #define ZMQ_SCATTER 17
20 #define ZMQ_DGRAM 18
21 #define ZMQ_PEER 19
22 #define ZMQ_CHANNEL 20
23 
24 /* DRAFT Socket options. */
25 #define ZMQ_ZAP_ENFORCE_DOMAIN 93
26 #define ZMQ_LOOPBACK_FASTPATH 94
27 #define ZMQ_METADATA 95
28 #define ZMQ_MULTICAST_LOOP 96
29 #define ZMQ_ROUTER_NOTIFY 97
30 #define ZMQ_XPUB_MANUAL_LAST_VALUE 98
31 #define ZMQ_SOCKS_USERNAME 99
32 #define ZMQ_SOCKS_PASSWORD 100
33 #define ZMQ_IN_BATCH_SIZE 101
34 #define ZMQ_OUT_BATCH_SIZE 102
35 #define ZMQ_WSS_KEY_PEM 103
36 #define ZMQ_WSS_CERT_PEM 104
37 #define ZMQ_WSS_TRUST_PEM 105
38 #define ZMQ_WSS_HOSTNAME 106
39 #define ZMQ_WSS_TRUST_SYSTEM 107
40 #define ZMQ_ONLY_FIRST_SUBSCRIBE 108
41 #define ZMQ_RECONNECT_STOP 109
42 #define ZMQ_HELLO_MSG 110
43 #define ZMQ_DISCONNECT_MSG 111
44 #define ZMQ_PRIORITY 112
45 #define ZMQ_BUSY_POLL 113
46 #define ZMQ_HICCUP_MSG 114
47 #define ZMQ_XSUB_VERBOSE_UNSUBSCRIBE 115
48 #define ZMQ_TOPICS_COUNT 116
49 #define ZMQ_NORM_MODE 117
50 #define ZMQ_NORM_UNICAST_NACK 118
51 #define ZMQ_NORM_BUFFER_SIZE 119
52 #define ZMQ_NORM_SEGMENT_SIZE 120
53 #define ZMQ_NORM_BLOCK_SIZE 121
54 #define ZMQ_NORM_NUM_PARITY 122
55 #define ZMQ_NORM_NUM_AUTOPARITY 123
56 #define ZMQ_NORM_PUSH 124
57 
58 /* DRAFT ZMQ_NORM_MODE options */
59 #define ZMQ_NORM_FIXED 0
60 #define ZMQ_NORM_CC 1
61 #define ZMQ_NORM_CCL 2
62 #define ZMQ_NORM_CCE 3
63 #define ZMQ_NORM_CCE_ECNONLY 4
64 
65 /* DRAFT ZMQ_RECONNECT_STOP options */
66 #define ZMQ_RECONNECT_STOP_CONN_REFUSED 0x1
67 #define ZMQ_RECONNECT_STOP_HANDSHAKE_FAILED 0x2
68 #define ZMQ_RECONNECT_STOP_AFTER_DISCONNECT 0x4
69 
70 /* DRAFT Context options */
71 #define ZMQ_ZERO_COPY_RECV 10
72 
73 /* DRAFT Context methods. */
74 int zmq_ctx_set_ext (void *context_,
75  int option_,
76  const void *optval_,
77  size_t optvallen_);
78 int zmq_ctx_get_ext (void *context_,
79  int option_,
80  void *optval_,
81  size_t *optvallen_);
82 
83 /* DRAFT Socket methods. */
84 int zmq_join (void *s_, const char *group_);
85 int zmq_leave (void *s_, const char *group_);
86 
87 /* DRAFT Msg methods. */
88 int zmq_msg_set_routing_id (zmq_msg_t *msg_, uint32_t routing_id_);
89 uint32_t zmq_msg_routing_id (zmq_msg_t *msg_);
90 int zmq_msg_set_group (zmq_msg_t *msg_, const char *group_);
91 const char *zmq_msg_group (zmq_msg_t *msg_);
92 int zmq_msg_init_buffer (zmq_msg_t *msg_, const void *buf_, size_t size_);
93 
94 /* DRAFT Msg property names. */
95 #define ZMQ_MSG_PROPERTY_ROUTING_ID "Routing-Id"
96 #define ZMQ_MSG_PROPERTY_SOCKET_TYPE "Socket-Type"
97 #define ZMQ_MSG_PROPERTY_USER_ID "User-Id"
98 #define ZMQ_MSG_PROPERTY_PEER_ADDRESS "Peer-Address"
99 
100 /* Router notify options */
101 #define ZMQ_NOTIFY_CONNECT 1
102 #define ZMQ_NOTIFY_DISCONNECT 2
103 
104 /******************************************************************************/
105 /* Poller polling on sockets,fd and thread-safe sockets */
106 /******************************************************************************/
107 
108 #if defined _WIN32
109 typedef SOCKET zmq_fd_t;
110 #else
111 typedef int zmq_fd_t;
112 #endif
113 
114 typedef struct zmq_poller_event_t
115 {
116  void *socket;
118  void *user_data;
119  short events;
121 
122 void *zmq_poller_new (void);
123 int zmq_poller_destroy (void **poller_p_);
124 int zmq_poller_size (void *poller_);
125 int zmq_poller_add (void *poller_,
126  void *socket_,
127  void *user_data_,
128  short events_);
129 int zmq_poller_modify (void *poller_, void *socket_, short events_);
130 int zmq_poller_remove (void *poller_, void *socket_);
131 int zmq_poller_wait (void *poller_, zmq_poller_event_t *event_, long timeout_);
132 int zmq_poller_wait_all (void *poller_,
133  zmq_poller_event_t *events_,
134  int n_events_,
135  long timeout_);
136 zmq_fd_t zmq_poller_fd (void *poller_);
137 
138 int zmq_poller_add_fd (void *poller_,
139  zmq_fd_t fd_,
140  void *user_data_,
141  short events_);
142 int zmq_poller_modify_fd (void *poller_, zmq_fd_t fd_, short events_);
143 int zmq_poller_remove_fd (void *poller_, zmq_fd_t fd_);
144 
145 int zmq_socket_get_peer_state (void *socket_,
146  const void *routing_id_,
147  size_t routing_id_size_);
148 
149 /* DRAFT Socket monitoring events */
150 #define ZMQ_EVENT_PIPES_STATS 0x10000
151 
152 #define ZMQ_CURRENT_EVENT_VERSION 1
153 #define ZMQ_CURRENT_EVENT_VERSION_DRAFT 2
154 
155 #define ZMQ_EVENT_ALL_V1 ZMQ_EVENT_ALL
156 #define ZMQ_EVENT_ALL_V2 ZMQ_EVENT_ALL_V1 | ZMQ_EVENT_PIPES_STATS
157 
159  void *s_, const char *addr_, uint64_t events_, int event_version_, int type_);
161 
162 #if !defined _WIN32
163 int zmq_ppoll (zmq_pollitem_t *items_,
164  int nitems_,
165  long timeout_,
166  const sigset_t *sigmask_);
167 #else
168 // Windows has no sigset_t
169 int zmq_ppoll (zmq_pollitem_t *items_,
170  int nitems_,
171  long timeout_,
172  const void *sigmask_);
173 #endif
174 
175 #endif // ZMQ_BUILD_DRAFT_API
176 
177 #endif //ifndef __ZMQ_DRAFT_H_INCLUDED__
zmq_leave
int zmq_leave(void *s_, const char *group_)
Definition: zmq.cpp:291
context_
MockGeneratorContext context_
Definition: csharp_bootstrap_unittest.cc:125
zmq_poller_add
int zmq_poller_add(void *poller_, void *socket_, void *user_data_, short events_)
Definition: zmq.cpp:1509
zmq_join
int zmq_join(void *s_, const char *group_)
Definition: zmq.cpp:283
zmq_poller_destroy
int zmq_poller_destroy(void **poller_p_)
Definition: zmq.cpp:1438
zmq_poller_event_t
struct zmq_poller_event_t zmq_poller_event_t
zmq_poller_wait_all
int zmq_poller_wait_all(void *poller_, zmq_poller_event_t *events_, int n_events_, long timeout_)
Definition: zmq.cpp:1590
zmq_pollitem_t
Definition: zmq.h:487
zmq_poller_add_fd
int zmq_poller_add_fd(void *poller_, zmq_fd_t fd_, void *user_data_, short events_)
Definition: zmq.cpp:1521
zmq_poller_event_t::events
short events
Definition: zmq_draft.h:119
zmq_msg_group
const char * zmq_msg_group(zmq_msg_t *msg_)
Definition: zmq.cpp:704
zmq_ppoll
int zmq_ppoll(zmq_pollitem_t *items_, int nitems_, long timeout_, const sigset_t *sigmask_)
Definition: zmq.cpp:1355
zmq_poller_event_t::socket
void * socket
Definition: zmq_draft.h:116
zmq_poller_event_t
Definition: zmq_draft.h:114
zmq_poller_new
void * zmq_poller_new(void)
Definition: zmq.cpp:1429
zmq_msg_t
Definition: zmq.h:218
s_
std::string s_
Definition: gmock-matchers_test.cc:4128
zmq_poller_remove_fd
int zmq_poller_remove_fd(void *poller_, zmq_fd_t fd_)
Definition: zmq.cpp:1568
zmq_fd_t
int zmq_fd_t
Definition: zmq.h:475
zmq_socket_get_peer_state
int zmq_socket_get_peer_state(void *socket_, const void *routing_id_, size_t routing_id_size_)
Definition: zmq.cpp:1627
zmq_ctx_get_ext
int zmq_ctx_get_ext(void *context_, int option_, void *optval_, size_t *optvallen_)
Definition: zmq.cpp:183
zmq_msg_init_buffer
int zmq_msg_init_buffer(zmq_msg_t *msg_, const void *buf_, size_t size_)
Definition: zmq.cpp:597
zmq_poller_wait
int zmq_poller_wait(void *poller_, zmq_poller_event_t *event_, long timeout_)
Definition: zmq.cpp:1576
zmq_poller_size
int zmq_poller_size(void *poller_)
Definition: zmq.cpp:1501
zmq_poller_modify
int zmq_poller_modify(void *poller_, void *socket_, short events_)
Definition: zmq.cpp:1535
zmq_msg_routing_id
uint32_t zmq_msg_routing_id(zmq_msg_t *msg_)
Definition: zmq.cpp:694
zmq_socket_monitor_versioned
int zmq_socket_monitor_versioned(void *s_, const char *addr_, uint64_t events_, int event_version_, int type_)
Definition: zmq.cpp:269
zmq_ctx_set_ext
int zmq_ctx_set_ext(void *context_, int option_, const void *optval_, size_t optvallen_)
Definition: zmq.cpp:161
zmq_socket_monitor_pipes_stats
int zmq_socket_monitor_pipes_stats(void *s_)
Definition: zmq.cpp:1809
zmq_poller_fd
zmq_fd_t zmq_poller_fd(void *poller_)
zmq_poller_modify_fd
int zmq_poller_modify_fd(void *poller_, zmq_fd_t fd_, short events_)
Definition: zmq.cpp:1548
zmq_msg_set_group
int zmq_msg_set_group(zmq_msg_t *msg_, const char *group_)
Definition: zmq.cpp:699
zmq_msg_set_routing_id
int zmq_msg_set_routing_id(zmq_msg_t *msg_, uint32_t routing_id_)
Definition: zmq.cpp:688
zmq_poller_event_t::fd
zmq_fd_t fd
Definition: zmq_draft.h:117
zmq_fd_t
int zmq_fd_t
Definition: zmq_draft.h:111
SOCKET
uintptr_t SOCKET
Definition: wepoll.c:71
zmq_poller_event_t::user_data
void * user_data
Definition: zmq_draft.h:118
zmq_poller_remove
int zmq_poller_remove(void *poller_, void *socket_)
Definition: zmq.cpp:1558


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:07:02