1 //        Copyright DarkRiDDeR (Roman Barinov) 2020.
2 // Distributed under the Boost Software License, Version 1.0.
3 //       (See accompanying file LICENSE or copy at
4 //          http://www.boost.org/LICENSE_1_0.txt)
5 
6 module bindbc.nng.bindstatic;
7 
8 
9 version(BindNNG_Static):
10 
11 import bindbc.nng.types;
12 
13 
14 extern (C) @trusted @nogc nothrow:
15 
16 // nng.h:
17 void nng_fini();
18 int nng_close(nng_socket);
19 int nng_socket_id(nng_socket);
20 void nng_closeall();
21 int nng_setopt(nng_socket, const(char)* , const void *, size_t);
22 int nng_setopt_bool(nng_socket, const(char)* , bool);
23 int nng_setopt_int(nng_socket, const(char)* , int);
24 int nng_setopt_ms(nng_socket, const(char)* , nng_duration);
25 int nng_setopt_size(nng_socket, const(char)* , size_t);
26 int nng_setopt_uint64(nng_socket, const(char)* , uint64_t);
27 int nng_setopt_string(nng_socket, const(char)* , const(char)* );
28 int nng_setopt_ptr(nng_socket, const(char)* , void *);
29 int nng_getopt(nng_socket, const(char)* , void *, size_t *);
30 int nng_getopt_bool(nng_socket, const(char)* , bool *);
31 int nng_getopt_int(nng_socket, const(char)* , int *);
32 int nng_getopt_ms(nng_socket, const(char)* , nng_duration *);
33 int nng_getopt_size(nng_socket, const(char)* , size_t *);
34 int nng_getopt_uint64(nng_socket, const(char)* , uint64_t *);
35 int nng_getopt_ptr(nng_socket, const(char)* , void **);
36 int nng_getopt_string(nng_socket, const(char)* , char **);
37 int nng_socket_set(nng_socket, const(char)* , const void *, size_t);
38 int nng_socket_set_bool(nng_socket, const(char)* , bool);
39 int nng_socket_set_int(nng_socket, const(char)* , int);
40 int nng_socket_set_size(nng_socket, const(char)* , size_t);
41 int nng_socket_set_uint64(nng_socket, const(char)* , uint64_t);
42 int nng_socket_set_string(nng_socket, const(char)* , const(char)* );
43 int nng_socket_set_ptr(nng_socket, const(char)* , void *);
44 int nng_socket_set_ms(nng_socket, const(char)* , nng_duration);
45 int nng_socket_set_addr(nng_socket, const(char)* , const nng_sockaddr *);
46 int nng_socket_get(nng_socket, const(char)* , void *, size_t *);
47 int nng_socket_get_bool(nng_socket, const(char)* , bool *);
48 int nng_socket_get_int(nng_socket, const(char)* , int *);
49 int nng_socket_get_size(nng_socket, const(char)* , size_t *);
50 int nng_socket_get_uint64(nng_socket, const(char)* , uint64_t *);
51 int nng_socket_get_string(nng_socket, const(char)* , char **);
52 int nng_socket_get_ptr(nng_socket, const(char)* , void **);
53 int nng_socket_get_ms(nng_socket, const(char)* , nng_duration *);
54 int nng_socket_get_addr(nng_socket, const(char)* , nng_sockaddr *);
55 int nng_pipe_notify(nng_socket, nng_pipe_ev, nng_pipe_cb, void *);
56 int nng_listen(nng_socket, const(char)* , nng_listener *, int);
57 int nng_dial(nng_socket, const(char)* , nng_dialer *, int);
58 int nng_dialer_create(nng_dialer *, nng_socket, const(char)* );
59 int nng_listener_create(nng_listener *, nng_socket, const(char)* );
60 int nng_dialer_start(nng_dialer, int);
61 int nng_listener_start(nng_listener, int);
62 int nng_dialer_close(nng_dialer);
63 int nng_listener_close(nng_listener);
64 int nng_dialer_id(nng_dialer);
65 int nng_listener_id(nng_listener);
66 int nng_dialer_setopt(nng_dialer, const(char)* , const void *, size_t);
67 int nng_dialer_setopt_bool(nng_dialer, const(char)* , bool);
68 int nng_dialer_setopt_int(nng_dialer, const(char)* , int);
69 int nng_dialer_setopt_ms(nng_dialer, const(char)* , nng_duration);
70 int nng_dialer_setopt_size(nng_dialer, const(char)* , size_t);
71 int nng_dialer_setopt_uint64(nng_dialer, const(char)* , uint64_t);
72 int nng_dialer_setopt_ptr(nng_dialer, const(char)* , void *);
73 int nng_dialer_setopt_string(nng_dialer, const(char)* , const(char)* );
74 int nng_dialer_getopt(nng_dialer, const(char)* , void *, size_t *);
75 int nng_dialer_getopt_bool(nng_dialer, const(char)* , bool *);
76 int nng_dialer_getopt_int(nng_dialer, const(char)* , int *);
77 int nng_dialer_getopt_ms(nng_dialer, const(char)* , nng_duration *);
78 int nng_dialer_getopt_size(nng_dialer, const(char)* , size_t *);
79 int nng_dialer_getopt_sockaddr(nng_dialer, const(char)* , nng_sockaddr *);
80 int nng_dialer_getopt_uint64(nng_dialer, const(char)* , uint64_t *);
81 int nng_dialer_getopt_ptr(nng_dialer, const(char)* , void **);
82 int nng_dialer_getopt_string(nng_dialer, const(char)* , char **);
83 int nng_dialer_set(nng_dialer, const(char)* , const void *, size_t);
84 int nng_dialer_set_bool(nng_dialer, const(char)* , bool);
85 int nng_dialer_set_int(nng_dialer, const(char)* , int);
86 int nng_dialer_set_size(nng_dialer, const(char)* , size_t);
87 int nng_dialer_set_uint64(nng_dialer, const(char)* , uint64_t);
88 int nng_dialer_set_string(nng_dialer, const(char)* , const(char)* );
89 int nng_dialer_set_ptr(nng_dialer, const(char)* , void *);
90 int nng_dialer_set_ms(nng_dialer, const(char)* , nng_duration);
91 int nng_dialer_set_addr(nng_dialer, const(char)* , const nng_sockaddr *);
92 int nng_dialer_get(nng_dialer, const(char)* , void *, size_t *);
93 int nng_dialer_get_bool(nng_dialer, const(char)* , bool *);
94 int nng_dialer_get_int(nng_dialer, const(char)* , int *);
95 int nng_dialer_get_size(nng_dialer, const(char)* , size_t *);
96 int nng_dialer_get_uint64(nng_dialer, const(char)* , uint64_t *);
97 int nng_dialer_get_string(nng_dialer, const(char)* , char **);
98 int nng_dialer_get_ptr(nng_dialer, const(char)* , void **);
99 int nng_dialer_get_ms(nng_dialer, const(char)* , nng_duration *);
100 int nng_dialer_get_addr(nng_dialer, const(char)* , nng_sockaddr *);
101 int nng_listener_setopt(nng_listener, const(char)* , const void *, size_t);
102 int nng_listener_setopt_bool(nng_listener, const(char)* , bool);
103 int nng_listener_setopt_int(nng_listener, const(char)* , int);
104 int nng_listener_setopt_ms(nng_listener, const(char)* , nng_duration);
105 int nng_listener_setopt_size(nng_listener, const(char)* , size_t);
106 int nng_listener_setopt_uint64(nng_listener, const(char)* , uint64_t);
107 int nng_listener_setopt_ptr(nng_listener, const(char)* , void *);
108 int nng_listener_setopt_string(nng_listener, const(char)* , const(char)* );
109 int nng_listener_getopt(nng_listener, const(char)* , void *, size_t *);
110 int nng_listener_getopt_bool(nng_listener, const(char)* , bool *);
111 int nng_listener_getopt_int(nng_listener, const(char)* , int *);
112 int nng_listener_getopt_ms(nng_listener, const(char)* , nng_duration *);
113 int nng_listener_getopt_size(nng_listener, const(char)* , size_t *);
114 int nng_listener_getopt_sockaddr(nng_listener, const(char)* , nng_sockaddr *);
115 int nng_listener_getopt_uint64(nng_listener, const(char)* , uint64_t *);
116 int nng_listener_getopt_ptr(nng_listener, const(char)* , void **);
117 int nng_listener_getopt_string(nng_listener, const(char)* , char **);
118 int nng_listener_set(nng_listener, const(char)* , const void *, size_t);
119 int nng_listener_set_bool(nng_listener, const(char)* , bool);
120 int nng_listener_set_int(nng_listener, const(char)* , int);
121 int nng_listener_set_size(nng_listener, const(char)* , size_t);
122 int nng_listener_set_uint64(nng_listener, const(char)* , uint64_t);
123 int nng_listener_set_string(nng_listener, const(char)* , const(char)* );
124 int nng_listener_set_ptr(nng_listener, const(char)* , void *);
125 int nng_listener_set_ms(nng_listener, const(char)* , nng_duration);
126 int nng_listener_set_addr(nng_listener, const(char)* , const nng_sockaddr *);
127 int nng_listener_get(nng_listener, const(char)* , void *, size_t *);
128 int nng_listener_get_bool(nng_listener, const(char)* , bool *);
129 int nng_listener_get_int(nng_listener, const(char)* , int *);
130 int nng_listener_get_size(nng_listener, const(char)* , size_t *);
131 int nng_listener_get_uint64(nng_listener, const(char)* , uint64_t *);
132 int nng_listener_get_string(nng_listener, const(char)* , char **);
133 int nng_listener_get_ptr(nng_listener, const(char)* , void **);
134 int nng_listener_get_ms(nng_listener, const(char)* , nng_duration *);
135 int nng_listener_get_addr(nng_listener, const(char)* , nng_sockaddr *);
136 const(char)* nng_strerror(int);
137 int nng_send(nng_socket, void *, size_t, int);
138 int nng_recv(nng_socket, void *, size_t *, int);
139 int nng_sendmsg(nng_socket, nng_msg *, int);
140 int nng_recvmsg(nng_socket, nng_msg **, int);
141 void nng_send_aio(nng_socket, nng_aio *);
142 void nng_recv_aio(nng_socket, nng_aio *);
143 int nng_ctx_open(nng_ctx *, nng_socket);
144 int nng_ctx_close(nng_ctx);
145 int nng_ctx_id(nng_ctx);
146 void nng_ctx_recv(nng_ctx, nng_aio *);
147 void nng_ctx_send(nng_ctx, nng_aio *);
148 int nng_ctx_getopt(nng_ctx, const(char)* , void *, size_t *);
149 int nng_ctx_getopt_bool(nng_ctx, const(char)* , bool *);
150 int nng_ctx_getopt_int(nng_ctx, const(char)* , int *);
151 int nng_ctx_getopt_ms(nng_ctx, const(char)* , nng_duration *);
152 int nng_ctx_getopt_size(nng_ctx, const(char)* , size_t *);
153 int nng_ctx_setopt(nng_ctx, const(char)* , const void *, size_t);
154 int nng_ctx_setopt_bool(nng_ctx, const(char)* , bool);
155 int nng_ctx_setopt_int(nng_ctx, const(char)* , int);
156 int nng_ctx_setopt_ms(nng_ctx, const(char)* , nng_duration);
157 int nng_ctx_setopt_size(nng_ctx, const(char)* , size_t);
158 int nng_ctx_get(nng_ctx, const(char)* , void *, size_t *);
159 int nng_ctx_get_bool(nng_ctx, const(char)* , bool *);
160 int nng_ctx_get_int(nng_ctx, const(char)* , int *);
161 int nng_ctx_get_size(nng_ctx, const(char)* , size_t *);
162 int nng_ctx_get_uint64(nng_ctx, const(char)* , uint64_t *);
163 int nng_ctx_get_string(nng_ctx, const(char)* , char **);
164 int nng_ctx_get_ptr(nng_ctx, const(char)* , void **);
165 int nng_ctx_get_ms(nng_ctx, const(char)* , nng_duration *);
166 int nng_ctx_get_addr(nng_ctx, const(char)* , nng_sockaddr *);
167 int nng_ctx_set(nng_ctx, const(char)* , const void *, size_t);
168 int nng_ctx_set_bool(nng_ctx, const(char)* , bool);
169 int nng_ctx_set_int(nng_ctx, const(char)* , int);
170 int nng_ctx_set_size(nng_ctx, const(char)* , size_t);
171 int nng_ctx_set_uint64(nng_ctx, const(char)* , uint64_t);
172 int nng_ctx_set_string(nng_ctx, const(char)* , const(char)* );
173 int nng_ctx_set_ptr(nng_ctx, const(char)* , void *);
174 int nng_ctx_set_ms(nng_ctx, const(char)* , nng_duration);
175 int nng_ctx_set_addr(nng_ctx, const(char)* , const nng_sockaddr *);
176 void *nng_alloc(size_t);
177 void nng_free(void *, size_t);
178 char *nng_strdup(const(char)* );
179 void nng_strfree(char *);
180 int nng_aio_alloc(nng_aio **, void **, void *);
181 void nng_aio_free(nng_aio *);
182 void nng_aio_stop(nng_aio *);
183 int nng_aio_result(nng_aio *);
184 size_t nng_aio_count(nng_aio *);
185 void nng_aio_cancel(nng_aio *);
186 void nng_aio_abort(nng_aio *, int);
187 void nng_aio_wait(nng_aio *);
188 void nng_aio_set_msg(nng_aio *, nng_msg *);
189 nng_msg *nng_aio_get_msg(nng_aio *);
190 int nng_aio_set_input(nng_aio *, uint, void *);
191 void *nng_aio_get_input(nng_aio *, uint);
192 int nng_aio_set_output(nng_aio *, uint, void *);
193 void *nng_aio_get_output(nng_aio *, uint);
194 void nng_aio_set_timeout(nng_aio *, nng_duration);
195 int nng_aio_set_iov(nng_aio *, uint, const nng_iov *);
196 bool nng_aio_begin(nng_aio *);
197 void nng_aio_finish(nng_aio *, int);
198 void nng_aio_defer(nng_aio *, nng_aio_cancelfn, void *);
199 void nng_sleep_aio(nng_duration, nng_aio *);
200 int   nng_msg_alloc(nng_msg **, size_t);
201 void  nng_msg_free(nng_msg *);
202 int   nng_msg_realloc(nng_msg *, size_t);
203 void *nng_msg_header(nng_msg *);
204 size_t nng_msg_header_len(const nng_msg *);
205 void * nng_msg_body(nng_msg *);
206 size_t nng_msg_len(const nng_msg *);
207 int    nng_msg_append(nng_msg *, const void *, size_t);
208 int    nng_msg_insert(nng_msg *, const void *, size_t);
209 int    nng_msg_trim(nng_msg *, size_t);
210 int    nng_msg_chop(nng_msg *, size_t);
211 int    nng_msg_header_append(nng_msg *, const void *, size_t);
212 int    nng_msg_header_insert(nng_msg *, const void *, size_t);
213 int    nng_msg_header_trim(nng_msg *, size_t);
214 int    nng_msg_header_chop(nng_msg *, size_t);
215 int    nng_msg_header_append_u16(nng_msg *, uint16_t);
216 int    nng_msg_header_append_u32(nng_msg *, uint32_t);
217 int    nng_msg_header_append_u64(nng_msg *, uint64_t);
218 int    nng_msg_header_insert_u16(nng_msg *, uint16_t);
219 int    nng_msg_header_insert_u32(nng_msg *, uint32_t);
220 int    nng_msg_header_insert_u64(nng_msg *, uint64_t);
221 int    nng_msg_header_chop_u16(nng_msg *, uint16_t *);
222 int    nng_msg_header_chop_u32(nng_msg *, uint32_t *);
223 int    nng_msg_header_chop_u64(nng_msg *, uint64_t *);
224 int    nng_msg_header_trim_u16(nng_msg *, uint16_t *);
225 int    nng_msg_header_trim_u32(nng_msg *, uint32_t *);
226 int    nng_msg_header_trim_u64(nng_msg *, uint64_t *);
227 int    nng_msg_append_u16(nng_msg *, uint16_t);
228 int    nng_msg_append_u32(nng_msg *, uint32_t);
229 int    nng_msg_append_u64(nng_msg *, uint64_t);
230 int    nng_msg_insert_u16(nng_msg *, uint16_t);
231 int    nng_msg_insert_u32(nng_msg *, uint32_t);
232 int    nng_msg_insert_u64(nng_msg *, uint64_t);
233 int    nng_msg_chop_u16(nng_msg *, uint16_t *);
234 int    nng_msg_chop_u32(nng_msg *, uint32_t *);
235 int    nng_msg_chop_u64(nng_msg *, uint64_t *);
236 int    nng_msg_trim_u16(nng_msg *, uint16_t *);
237 int    nng_msg_trim_u32(nng_msg *, uint32_t *);
238 int    nng_msg_trim_u64(nng_msg *, uint64_t *);
239 int    nng_msg_dup(nng_msg **, const nng_msg *);
240 void   nng_msg_clear(nng_msg *);
241 void   nng_msg_header_clear(nng_msg *);
242 void   nng_msg_set_pipe(nng_msg *, nng_pipe);
243 nng_pipe nng_msg_get_pipe(const nng_msg *);
244 int      nng_msg_getopt(nng_msg *, int, void *, size_t *);
245 int nng_pipe_getopt(nng_pipe, const(char)* , void *, size_t *);
246 int nng_pipe_getopt_bool(nng_pipe, const(char)* , bool *);
247 int nng_pipe_getopt_int(nng_pipe, const(char)* , int *);
248 int nng_pipe_getopt_ms(nng_pipe, const(char)* , nng_duration *);
249 int nng_pipe_getopt_size(nng_pipe, const(char)* , size_t *);
250 int nng_pipe_getopt_sockaddr(nng_pipe, const(char)* , nng_sockaddr *);
251 int nng_pipe_getopt_uint64(nng_pipe, const(char)* , uint64_t *);
252 int nng_pipe_getopt_ptr(nng_pipe, const(char)* , void **);
253 int nng_pipe_getopt_string(nng_pipe, const(char)* , char **);
254 int nng_pipe_get(nng_pipe, const(char)* , void *, size_t *);
255 int nng_pipe_get_bool(nng_pipe, const(char)* , bool *);
256 int nng_pipe_get_int(nng_pipe, const(char)* , int *);
257 int nng_pipe_get_ms(nng_pipe, const(char)* , nng_duration *);
258 int nng_pipe_get_size(nng_pipe, const(char)* , size_t *);
259 int nng_pipe_get_uint64(nng_pipe, const(char)* , uint64_t *);
260 int nng_pipe_get_string(nng_pipe, const(char)* , char **);
261 int nng_pipe_get_ptr(nng_pipe, const(char)* , void **);
262 int nng_pipe_get_addr(nng_pipe, const(char)* , nng_sockaddr *);
263 int nng_pipe_close(nng_pipe);
264 int nng_pipe_id(nng_pipe);
265 nng_socket nng_pipe_socket(nng_pipe);
266 nng_dialer nng_pipe_dialer(nng_pipe);
267 nng_listener nng_pipe_listener(nng_pipe);
268 int nng_stats_get(nng_stat **);
269 void nng_stats_free(nng_stat *);
270 void nng_stats_dump(nng_stat *);
271 nng_stat *nng_stat_next(nng_stat *);
272 nng_stat *nng_stat_child(nng_stat *);
273 const(char)* nng_stat_name(nng_stat *);
274 int nng_stat_type(nng_stat *);
275 nng_stat *nng_stat_find(nng_stat *, const(char)* );
276 nng_stat *nng_stat_find_socket(nng_stat *, nng_socket);
277 nng_stat *nng_stat_find_dialer(nng_stat *, nng_dialer);
278 nng_stat *nng_stat_find_listener(nng_stat *, nng_listener);
279 int nng_stat_unit(nng_stat *);
280 uint64_t nng_stat_value(nng_stat *);
281 const(char)* nng_stat_string(nng_stat *);
282 const(char)* nng_stat_desc(nng_stat *);
283 uint64_t nng_stat_timestamp(nng_stat *);
284 int nng_device(nng_socket, nng_socket);
285 int nng_url_parse(nng_url **, const(char)* );
286 void nng_url_free(nng_url *);
287 int nng_url_clone(nng_url **, const nng_url *);
288 const(char)* nng_version();
289 void nng_stream_free(nng_stream *);
290 void nng_stream_close(nng_stream *);
291 void nng_stream_send(nng_stream *, nng_aio *);
292 void nng_stream_recv(nng_stream *, nng_aio *);
293 int  nng_stream_get(nng_stream *, const(char)* , void *, size_t *);
294 int  nng_stream_get_bool(nng_stream *, const(char)* , bool *);
295 int  nng_stream_get_int(nng_stream *, const(char)* , int *);
296 int  nng_stream_get_ms(nng_stream *, const(char)* , nng_duration *);
297 int  nng_stream_get_size(nng_stream *, const(char)* , size_t *);
298 int  nng_stream_get_uint64(nng_stream *, const(char)* , uint64_t *);
299 int  nng_stream_get_string(nng_stream *, const(char)* , char **);
300 int  nng_stream_get_ptr(nng_stream *, const(char)* , void **);
301 int  nng_stream_get_addr(nng_stream *, const(char)* , nng_sockaddr *);
302 int  nng_stream_set(nng_stream *, const(char)* , const void *, size_t);
303 int  nng_stream_set_bool(nng_stream *, const(char)* , bool);
304 int  nng_stream_set_int(nng_stream *, const(char)* , int);
305 int  nng_stream_set_ms(nng_stream *, const(char)* , nng_duration);
306 int  nng_stream_set_size(nng_stream *, const(char)* , size_t);
307 int  nng_stream_set_uint64(nng_stream *, const(char)* , uint64_t);
308 int  nng_stream_set_string(nng_stream *, const(char)* , const(char)* );
309 int  nng_stream_set_ptr(nng_stream *, const(char)* , void *);
310 int  nng_stream_set_addr(nng_stream *, const(char)* , const nng_sockaddr *);
311 int nng_stream_dialer_alloc(nng_stream_dialer **, const(char)* );
312 int nng_stream_dialer_alloc_url(nng_stream_dialer **, const nng_url *);
313 void nng_stream_dialer_free(nng_stream_dialer *);
314 void nng_stream_dialer_close(nng_stream_dialer *);
315 void nng_stream_dialer_dial(nng_stream_dialer *, nng_aio *);
316 int  nng_stream_dialer_set(nng_stream_dialer *, const(char)* , const void *, size_t);
317 int nng_stream_dialer_get(nng_stream_dialer *, const(char)* , void *, size_t *);
318 int nng_stream_dialer_get_bool(nng_stream_dialer *, const(char)* , bool *);
319 int nng_stream_dialer_get_int(nng_stream_dialer *, const(char)* , int *);
320 int nng_stream_dialer_get_ms(nng_stream_dialer *, const(char)* , nng_duration *);
321 int nng_stream_dialer_get_size(nng_stream_dialer *, const(char)* , size_t *);
322 int nng_stream_dialer_get_uint64(nng_stream_dialer *, const(char)* , uint64_t *);
323 int nng_stream_dialer_get_string(nng_stream_dialer *, const(char)* , char **);
324 int nng_stream_dialer_get_ptr(nng_stream_dialer *, const(char)* , void **);
325 int nng_stream_dialer_get_addr(nng_stream_dialer *, const(char)* , nng_sockaddr *);
326 int nng_stream_dialer_set_bool(nng_stream_dialer *, const(char)* , bool);
327 int nng_stream_dialer_set_int(nng_stream_dialer *, const(char)* , int);
328 int nng_stream_dialer_set_ms(nng_stream_dialer *, const(char)* , nng_duration);
329 int nng_stream_dialer_set_size(nng_stream_dialer *, const(char)* , size_t);
330 int nng_stream_dialer_set_uint64(nng_stream_dialer *, const(char)* , uint64_t);
331 int nng_stream_dialer_set_string(nng_stream_dialer *, const(char)* , const(char)* );
332 int nng_stream_dialer_set_ptr(nng_stream_dialer *, const(char)* , void *);
333 int nng_stream_dialer_set_addr(nng_stream_dialer *, const(char)* , const nng_sockaddr *);
334 int nng_stream_listener_alloc(nng_stream_listener **, const(char)* );
335 int nng_stream_listener_alloc_url(nng_stream_listener **, const nng_url *);
336 void nng_stream_listener_free(nng_stream_listener *);
337 void nng_stream_listener_close(nng_stream_listener *);
338 int  nng_stream_listener_listen(nng_stream_listener *);
339 void nng_stream_listener_accept(nng_stream_listener *, nng_aio *);
340 int  nng_stream_listener_set(nng_stream_listener *, const(char)* , const void *, size_t);
341 int nng_stream_listener_get(nng_stream_listener *, const(char)* , void *, size_t *);
342 int nng_stream_listener_get_bool(nng_stream_listener *, const(char)* , bool *);
343 int nng_stream_listener_get_int(nng_stream_listener *, const(char)* , int *);
344 int nng_stream_listener_get_ms(nng_stream_listener *, const(char)* , nng_duration *);
345 int nng_stream_listener_get_size(nng_stream_listener *, const(char)* , size_t *);
346 int nng_stream_listener_get_uint64(nng_stream_listener *, const(char)* , uint64_t *);
347 int nng_stream_listener_get_string(nng_stream_listener *, const(char)* , char **);
348 int nng_stream_listener_get_ptr(nng_stream_listener *, const(char)* , void **);
349 int nng_stream_listener_get_addr(nng_stream_listener *, const(char)* , nng_sockaddr *);
350 int nng_stream_listener_set_bool(nng_stream_listener *, const(char)* , bool);
351 int nng_stream_listener_set_int(nng_stream_listener *, const(char)* , int);
352 int nng_stream_listener_set_ms(nng_stream_listener *, const(char)* , nng_duration);
353 int nng_stream_listener_set_size(nng_stream_listener *, const(char)* , size_t);
354 int nng_stream_listener_set_uint64(nng_stream_listener *, const(char)* , uint64_t);
355 int nng_stream_listener_set_string(nng_stream_listener *, const(char)* , const(char)* );
356 int nng_stream_listener_set_ptr(nng_stream_listener *, const(char)* , void *);
357 int nng_stream_listener_set_addr(nng_stream_listener *, const(char)* , const nng_sockaddr *);
358 
359 
360 // compat/nanomsg/nn.h:
361 nn_cmsghdr *nn_cmsg_next(nn_msghdr *, nn_cmsghdr *);
362 int nn_socket(int, int);
363 int nn_setsockopt(int, int, int, const void *, size_t);
364 int nn_getsockopt(int, int, int, void *, size_t *);
365 int nn_bind(int, const(char)* );
366 int nn_connect(int, const(char)* );
367 int nn_shutdown(int, int);
368 int nn_send(int, const void *, size_t, int);
369 int nn_recv(int, void *, size_t, int);
370 int nn_sendmsg(int, const nn_msghdr *, int);
371 int nn_recvmsg(int, nn_msghdr *, int);
372 int nn_close(int);
373 int nn_poll(nn_pollfd *, int, int);
374 int nn_device(int, int);
375 uint64_t    nn_get_statistic(int, int);
376 void *      nn_allocmsg(size_t, int);
377 void *      nn_reallocmsg(void *, size_t);
378 int         nn_freemsg(void *);
379 int         nn_errno();
380 const(char)* nn_strerror(int);
381 void        nn_term();
382 
383 
384 // protocol/bus0/bus.h
385 int nng_bus0_open(nng_socket *);
386 int nng_bus0_open_raw(nng_socket *);
387 alias nng_bus_open = nng_bus0_open;
388 alias nng_bus_open_raw = nng_bus0_open_raw;
389 
390 
391 // protocol/pair0/pair.h
392 int nng_pair0_open(nng_socket *);
393 int nng_pair0_open_raw(nng_socket *);
394 //alias nng_pair_open = nng_pair0_open;
395 //alias nng_pair_open_raw = nng_pair0_open_raw;
396 
397 
398 // protocol/pair1/pair.h
399 int nng_pair1_open(nng_socket *);
400 int nng_pair1_open_raw(nng_socket *);
401 //alias nng_pair_open = nng_pair1_open;
402 //alias nng_pair_open_raw = nng_pair1_open_raw;
403 
404 // protocol/pipeline0/pull.h
405 int nng_pull0_open(nng_socket *);
406 int nng_pull0_open_raw(nng_socket *);
407 alias nng_pull_open = nng_pull0_open;
408 alias nng_pull_open_raw = nng_pull0_open_raw;
409 
410 // protocol/pipeline0/push.h
411 int nng_push0_open(nng_socket *);
412 int nng_push0_open_raw(nng_socket *);
413 alias nng_push_open = nng_push0_open;
414 alias nng_push_open_raw = nng_push0_open_raw;
415 
416 // protocol/pubsub0/pub.h
417 int nng_pub0_open(nng_socket *);
418 int nng_pub0_open_raw(nng_socket *);
419 alias nng_pub_open = nng_pub0_open;
420 alias nng_pub_open_raw = nng_pub0_open_raw;
421 
422 // protocol/pubsub0/sub.h
423 int nng_sub0_open(nng_socket *);
424 int nng_sub0_open_raw(nng_socket *);
425 alias nng_sub_open = nng_sub0_open;
426 alias nng_sub_open_raw = nng_sub0_open_raw;
427 
428 // protocol/reqrep0/rep.h
429 int nng_rep0_open(nng_socket *);
430 int nng_rep0_open_raw(nng_socket *);
431 alias nng_rep_open = nng_rep0_open;
432 alias nng_rep_open_raw = nng_rep0_open_raw;
433 
434 // protocol/reqrep0/req.h
435 int nng_req0_open(nng_socket *);
436 int nng_req0_open_raw(nng_socket *);
437 alias nng_req_open = nng_req0_open;
438 alias nng_req_open_raw = nng_req0_open_raw;
439 
440 // protocol/survey0/respond.h
441 int nng_respondent0_open(nng_socket *);
442 int nng_respondent0_open_raw(nng_socket *);
443 alias nng_respondent_open = nng_respondent0_open;
444 alias nng_respondent_open_raw = nng_respondent0_open_raw;
445 
446 // protocol/survey0/survey.h
447 int nng_surveyor0_open(nng_socket *);
448 int nng_surveyor0_open_raw(nng_socket *);
449 alias nng_surveyor_open = nng_surveyor0_open;
450 alias nng_surveyor_open_raw = nng_surveyor0_open_raw;
451 
452 // supplemental/http/http.h
453 int nng_http_req_alloc(nng_http_req **, const nng_url *);
454 void nng_http_req_free(nng_http_req *);
455 const(char)* nng_http_req_get_method(nng_http_req *);
456 const(char)* nng_http_req_get_version(nng_http_req *);
457 const(char)* nng_http_req_get_uri(nng_http_req *);
458 int nng_http_req_set_header(nng_http_req *, const(char)* , const(char)* );
459 int nng_http_req_add_header(nng_http_req *, const(char)* , const(char)* );
460 int nng_http_req_del_header(nng_http_req *, const(char)* );
461 const(char)* nng_http_req_get_header(nng_http_req *, const(char)* );
462 int nng_http_req_set_method(nng_http_req *, const(char)* );
463 int nng_http_req_set_version(nng_http_req *, const(char)* );
464 int nng_http_req_set_uri(nng_http_req *, const(char)* );
465 int nng_http_req_set_data(nng_http_req *, const void *, size_t);
466 int nng_http_req_copy_data(nng_http_req *, const void *, size_t);
467 void nng_http_req_get_data(nng_http_req *, void **, size_t *);
468 int nng_http_res_alloc(nng_http_res **);
469 int nng_http_res_alloc_error(nng_http_res **, uint16_t);
470 void nng_http_res_free(nng_http_res *);
471 uint16_t nng_http_res_get_status(nng_http_res *);
472 int nng_http_res_set_status(nng_http_res *, uint16_t);
473 const(char)* nng_http_res_get_reason(nng_http_res *);
474 int nng_http_res_set_reason(nng_http_res *, const(char)* );
475 int nng_http_res_set_header(nng_http_res *, const(char)* , const(char)* );
476 int nng_http_res_add_header(nng_http_res *, const(char)* , const(char)* );
477 int nng_http_res_del_header(nng_http_res *, const(char)* );
478 const(char)* nng_http_res_get_header(nng_http_res *, const(char)* );
479 int nng_http_res_set_version(nng_http_res *, const(char)* );
480 const(char)* nng_http_res_get_version(nng_http_res *);
481 void nng_http_res_get_data(nng_http_res *, void **, size_t *);
482 int nng_http_res_set_data(nng_http_res *, const void *, size_t);
483 int nng_http_res_copy_data(nng_http_res *, const void *, size_t);
484 void nng_http_conn_close(nng_http_conn *);
485 void nng_http_conn_read(nng_http_conn *, nng_aio *);
486 void nng_http_conn_read_all(nng_http_conn *, nng_aio *);
487 void nng_http_conn_write(nng_http_conn *, nng_aio *);
488 void nng_http_conn_write_all(nng_http_conn *, nng_aio *);
489 void nng_http_conn_write_req(nng_http_conn *, nng_http_req *, nng_aio *);
490 void nng_http_conn_write_res(nng_http_conn *, nng_http_res *, nng_aio *);
491 void nng_http_conn_read_req(nng_http_conn *, nng_http_req *, nng_aio *);
492 void nng_http_conn_read_res(nng_http_conn *, nng_http_res *, nng_aio *);
493 void nng_http_req_reset(nng_http_req *);
494 void nng_http_res_reset(nng_http_res *);
495 int nng_http_handler_alloc(nng_http_handler **, const(char)* , void **);
496 void nng_http_handler_free(nng_http_handler *);
497 int nng_http_handler_alloc_file(nng_http_handler **, const(char)* , const(char)* );
498 int nng_http_handler_alloc_static(nng_http_handler **, const(char)* , const void *, size_t, const(char)* );
499 int nng_http_handler_alloc_redirect(nng_http_handler **, const(char)* , uint16_t, const(char)* );
500 int nng_http_handler_alloc_directory(nng_http_handler **, const(char)* , const(char)* );
501 int nng_http_handler_set_method(nng_http_handler *, const(char)* );
502 int nng_http_handler_set_host(nng_http_handler *, const(char)* );
503 int nng_http_handler_collect_body(nng_http_handler *, bool, size_t);
504 int nng_http_handler_set_tree(nng_http_handler *);
505 int nng_http_handler_set_data(nng_http_handler *, void *, void **);
506 void *nng_http_handler_get_data(nng_http_handler *);
507 int nng_http_server_hold(nng_http_server **, const nng_url *);
508 void nng_http_server_release(nng_http_server *);
509 int nng_http_server_start(nng_http_server *);
510 void nng_http_server_stop(nng_http_server *);
511 int nng_http_server_add_handler(nng_http_server *, nng_http_handler *);
512 int nng_http_server_del_handler(nng_http_server *, nng_http_handler *);
513 int nng_http_server_set_tls(nng_http_server *, nng_tls_config *);
514 int nng_http_server_get_tls(nng_http_server *, nng_tls_config **);
515 int nng_http_server_get_addr(nng_http_server *, nng_sockaddr *);
516 int nng_http_server_set_error_page(nng_http_server *, uint16_t, const(char)* );
517 int nng_http_server_set_error_file(nng_http_server *, uint16_t, const(char)* );
518 int nng_http_server_res_error(nng_http_server *, nng_http_res *);
519 int nng_http_hijack(nng_http_conn *);
520 int nng_http_client_alloc(nng_http_client **, const nng_url *);
521 void nng_http_client_free(nng_http_client *);
522 int nng_http_client_set_tls(nng_http_client *, nng_tls_config *);
523 int nng_http_client_get_tls(nng_http_client *, nng_tls_config **);
524 void nng_http_client_connect(nng_http_client *, nng_aio *);
525 void nng_http_conn_transact(nng_http_conn *, nng_http_req *, nng_http_res *, nng_aio *);
526 void nng_http_client_transact(nng_http_client *, nng_http_req *, nng_http_res *, nng_aio *);
527 
528 // supplemental/tls/tls.h
529 int nng_tls_config_alloc(nng_tls_config **, nng_tls_mode);
530 void nng_tls_config_hold(nng_tls_config *);
531 void nng_tls_config_free(nng_tls_config *);
532 int nng_tls_config_server_name(nng_tls_config *, const(char)* );
533 int nng_tls_config_ca_chain(nng_tls_config *, const(char)* , const(char)* );
534 int nng_tls_config_own_cert(nng_tls_config *, const(char)* , const(char)* , const(char)* );
535 int nng_tls_config_key(nng_tls_config *, const uint8_t *, size_t);
536 int nng_tls_config_pass(nng_tls_config *, const(char)* );
537 int nng_tls_config_auth_mode(nng_tls_config *, nng_tls_auth_mode);
538 int nng_tls_config_ca_file(nng_tls_config *, const(char)* );
539 int nng_tls_config_cert_key_file(nng_tls_config *, const(char)* , const(char)* );
540 
541 // supplemental/util/options.h
542 int nng_opts_parse(int argc, const(char)*  argv, const nng_optspec *opts, int *val, char **optarg, int *optidx);
543 
544 // supplemental/util/platform.h
545 nng_time nng_clock();
546 void nng_msleep(nng_duration);
547 int nng_thread_create(nng_thread **, void **, void *);
548 void nng_thread_destroy(nng_thread *);
549 int nng_mtx_alloc(nng_mtx **);
550 void nng_mtx_free(nng_mtx *);
551 void nng_mtx_lock(nng_mtx *);
552 void nng_mtx_unlock(nng_mtx *);
553 int nng_cv_alloc(nng_cv **, nng_mtx *);
554 void nng_cv_free(nng_cv *);
555 void nng_cv_wait(nng_cv *);
556 int nng_cv_until(nng_cv *, nng_time);
557 void nng_cv_wake(nng_cv *);
558 void nng_cv_wake1(nng_cv *);
559 uint32_t nng_random();
560 
561 // transport/inproc/inproc.h
562 int nng_inproc_register();
563 
564 // transport/ipc/ipc.h
565 int nng_ipc_register();
566 
567 // transport/tcp/tcp.h
568 int nng_tcp_register();
569 
570 // transport/tls/tls.h
571 int nng_tls_register();
572 
573 // transport/ws/websocket.h
574 int nng_ws_register();
575 int nng_wss_register();
576 
577 // transport/zerotier/zerotier.h
578 int nng_zt_register();
579