czmq-ffi-gen 0.12.0-x86-mingw32 → 0.13.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module CZMQ
2
2
  module FFI
3
- GEM_VERSION = "0.12.0"
3
+ GEM_VERSION = "0.13.0"
4
4
  end
5
5
  end
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -28,7 +28,7 @@
28
28
  // CZMQ version macros for compile-time API detection
29
29
  #define CZMQ_VERSION_MAJOR 4
30
30
  #define CZMQ_VERSION_MINOR 0
31
- #define CZMQ_VERSION_PATCH 0
31
+ #define CZMQ_VERSION_PATCH 3
32
32
 
33
33
  #define CZMQ_MAKE_VERSION(major, minor, patch) \
34
34
  ((major) * 10000 + (minor) * 100 + (patch))
@@ -49,8 +49,14 @@
49
49
  # else
50
50
  # define CZMQ_EXPORT __declspec(dllimport)
51
51
  # endif
52
+ # define CZMQ_PRIVATE
52
53
  #else
53
54
  # define CZMQ_EXPORT
55
+ # if (defined __GNUC__ && __GNUC__ >= 4) || defined __INTEL_COMPILER
56
+ # define CZMQ_PRIVATE __attribute__ ((visibility ("hidden")))
57
+ # else
58
+ # define CZMQ_PRIVATE
59
+ # endif
54
60
  #endif
55
61
 
56
62
  // Opaque class structures to allow forward references
@@ -193,7 +193,7 @@
193
193
  #elif (defined (sinix))
194
194
  # define __UTYPE_SINIX
195
195
  # define __UNIX__
196
- #elif (defined (SOLARIS) || defined (__SRV4))
196
+ #elif (defined (SOLARIS) || defined (__SVR4)) || defined (SVR4)
197
197
  # define __UTYPE_SUNSOLARIS
198
198
  # define __UNIX__
199
199
  #elif (defined (SUNOS) || defined (SUN) || defined (sun))
@@ -421,11 +421,17 @@ typedef struct {
421
421
  #define strneq(s1,s2) (strcmp ((s1), (s2)))
422
422
 
423
423
  // Provide random number from 0..(num-1)
424
+ // Note that (at least in Solaris) while rand() returns an int limited by
425
+ // RAND_MAX, random() returns a 32-bit value all filled with random bits.
424
426
  #if (defined (__WINDOWS__)) || (defined (__UTYPE_IBMAIX)) \
425
- || (defined (__UTYPE_HPUX)) || (defined (__UTYPE_SUNOS))
427
+ || (defined (__UTYPE_HPUX)) || (defined (__UTYPE_SUNOS)) || (defined (__UTYPE_SOLARIS))
426
428
  # define randof(num) (int) ((float) (num) * rand () / (RAND_MAX + 1.0))
427
429
  #else
428
- # define randof(num) (int) ((float) (num) * random () / (RAND_MAX + 1.0))
430
+ # if defined(RAND_MAX)
431
+ # define randof(num) (int) ((float) (num) * (random () % RAND_MAX) / (RAND_MAX + 1.0))
432
+ # else
433
+ # define randof(num) (int) ((float) (num) * (uint32_t)random () / (UINT32_MAX + 1.0))
434
+ # endif
429
435
  #endif
430
436
 
431
437
  // Windows MSVS doesn't have stdbool
@@ -164,7 +164,8 @@ CZMQ_EXPORT int
164
164
  CZMQ_EXPORT int
165
165
  zhash_refresh (zhash_t *self);
166
166
 
167
- // Set hash for automatic value destruction
167
+ // Set hash for automatic value destruction. Note that this assumes that
168
+ // values are NULL-terminated strings. Do not use with different types.
168
169
  CZMQ_EXPORT void
169
170
  zhash_autofree (zhash_t *self);
170
171
 
@@ -38,11 +38,11 @@ typedef void * (zhashx_duplicator_fn) (
38
38
  typedef int (zhashx_comparator_fn) (
39
39
  const void *item1, const void *item2);
40
40
 
41
- // compare two items, for sorting
41
+ // Destroy an item.
42
42
  typedef void (zhashx_free_fn) (
43
43
  void *data);
44
44
 
45
- // compare two items, for sorting
45
+ // Hash function for keys.
46
46
  typedef size_t (zhashx_hash_fn) (
47
47
  const void *key);
48
48
 
@@ -41,7 +41,7 @@
41
41
  /* Version macros for compile-time API version detection */
42
42
  #define ZMQ_VERSION_MAJOR 4
43
43
  #define ZMQ_VERSION_MINOR 2
44
- #define ZMQ_VERSION_PATCH 0
44
+ #define ZMQ_VERSION_PATCH 2
45
45
 
46
46
  #define ZMQ_MAKE_VERSION(major, minor, patch) \
47
47
  ((major) * 10000 + (minor) * 100 + (patch))
@@ -112,6 +112,13 @@ extern "C" {
112
112
  # include <stdint.h>
113
113
  #endif
114
114
 
115
+ // 32-bit AIX's pollfd struct members are called reqevents and rtnevents so it
116
+ // defines compatibility macros for them. Need to include that header first to
117
+ // stop build failures since zmq_pollset_t defines them as events and revents.
118
+ #ifdef ZMQ_HAVE_AIX
119
+ #include <poll.h>
120
+ #endif
121
+
115
122
 
116
123
  /******************************************************************************/
117
124
  /* 0MQ errors. */
@@ -229,10 +236,23 @@ ZMQ_EXPORT int zmq_ctx_destroy (void *context);
229
236
  /* 0MQ message definition. */
230
237
  /******************************************************************************/
231
238
 
232
- /* union here ensures correct alignment on architectures that require it, e.g.
233
- * SPARC
239
+ /* Some architectures, like sparc64 and some variants of aarch64, enforce pointer
240
+ * alignment and raise sigbus on violations. Make sure applications allocate
241
+ * zmq_msg_t on addresses aligned on a pointer-size boundary to avoid this issue.
234
242
  */
235
- typedef union zmq_msg_t {unsigned char _ [64]; void *p; } zmq_msg_t;
243
+ typedef struct zmq_msg_t {
244
+ #if defined (__GNUC__) || defined ( __INTEL_COMPILER) || \
245
+ (defined (__SUNPRO_C) && __SUNPRO_C >= 0x590) || \
246
+ (defined (__SUNPRO_CC) && __SUNPRO_CC >= 0x590)
247
+ unsigned char _ [64] __attribute__ ((aligned (sizeof (void *))));
248
+ #elif defined (_MSC_VER) && (defined (_M_X64) || defined (_M_ARM64))
249
+ __declspec (align (8)) unsigned char _ [64];
250
+ #elif defined (_MSC_VER) && (defined (_M_IX86) || defined (_M_ARM_ARMV7VE))
251
+ __declspec (align (4)) unsigned char _ [64];
252
+ #else
253
+ unsigned char _ [64];
254
+ #endif
255
+ } zmq_msg_t;
236
256
 
237
257
  typedef void (zmq_free_fn) (void *data, void *hint);
238
258
 
@@ -330,8 +350,6 @@ ZMQ_EXPORT const char *zmq_msg_gets (zmq_msg_t *msg, const char *property);
330
350
  #define ZMQ_HANDSHAKE_IVL 66
331
351
  #define ZMQ_SOCKS_PROXY 68
332
352
  #define ZMQ_XPUB_NODROP 69
333
- // All options after this is for version 4.2 and still *draft*
334
- // Subject to arbitrary change without notice
335
353
  #define ZMQ_BLOCKY 70
336
354
  #define ZMQ_XPUB_MANUAL 71
337
355
  #define ZMQ_XPUB_WELCOME_MSG 72
@@ -543,6 +561,13 @@ ZMQ_EXPORT void zmq_threadclose (void* thread);
543
561
  #define ZMQ_SCATTER 17
544
562
  #define ZMQ_DGRAM 18
545
563
 
564
+ /* DRAFT 0MQ socket events and monitoring */
565
+ #define ZMQ_EVENT_HANDSHAKE_FAILED 0x0800
566
+ #define ZMQ_EVENT_HANDSHAKE_SUCCEED 0x1000
567
+
568
+ /* DRAFT Context options */
569
+ #define ZMQ_MSG_T_SIZE 6
570
+
546
571
  /* DRAFT Socket methods. */
547
572
  ZMQ_EXPORT int zmq_join (void *s, const char *group);
548
573
  ZMQ_EXPORT int zmq_leave (void *s, const char *group);
@@ -577,6 +602,7 @@ ZMQ_EXPORT int zmq_poller_add (void *poller, void *socket, void *user_data, sho
577
602
  ZMQ_EXPORT int zmq_poller_modify (void *poller, void *socket, short events);
578
603
  ZMQ_EXPORT int zmq_poller_remove (void *poller, void *socket);
579
604
  ZMQ_EXPORT int zmq_poller_wait (void *poller, zmq_poller_event_t *event, long timeout);
605
+ ZMQ_EXPORT int zmq_poller_wait_all (void *poller, zmq_poller_event_t *events, int n_events, long timeout);
580
606
 
581
607
  #if defined _WIN32
582
608
  ZMQ_EXPORT int zmq_poller_add_fd (void *poller, SOCKET fd, void *user_data, short events);
@@ -299,583 +299,713 @@ CZMQ_EXPORT void *
299
299
  zsock_resolve (void *self);
300
300
 
301
301
  // Get socket option `heartbeat_ivl`.
302
+ // Available from libzmq 4.2.0.
302
303
  // Caller owns return value and must destroy it when done.
303
304
  CZMQ_EXPORT int
304
305
  zsock_heartbeat_ivl (void *self);
305
306
 
306
307
  // Set socket option `heartbeat_ivl`.
308
+ // Available from libzmq 4.2.0.
307
309
  CZMQ_EXPORT void
308
310
  zsock_set_heartbeat_ivl (void *self, int heartbeat_ivl);
309
311
 
310
312
  // Get socket option `heartbeat_ttl`.
313
+ // Available from libzmq 4.2.0.
311
314
  // Caller owns return value and must destroy it when done.
312
315
  CZMQ_EXPORT int
313
316
  zsock_heartbeat_ttl (void *self);
314
317
 
315
318
  // Set socket option `heartbeat_ttl`.
319
+ // Available from libzmq 4.2.0.
316
320
  CZMQ_EXPORT void
317
321
  zsock_set_heartbeat_ttl (void *self, int heartbeat_ttl);
318
322
 
319
323
  // Get socket option `heartbeat_timeout`.
324
+ // Available from libzmq 4.2.0.
320
325
  // Caller owns return value and must destroy it when done.
321
326
  CZMQ_EXPORT int
322
327
  zsock_heartbeat_timeout (void *self);
323
328
 
324
329
  // Set socket option `heartbeat_timeout`.
330
+ // Available from libzmq 4.2.0.
325
331
  CZMQ_EXPORT void
326
332
  zsock_set_heartbeat_timeout (void *self, int heartbeat_timeout);
327
333
 
328
- // Get socket option `use_fd`.
334
+ // Get socket option `use_fd`.
335
+ // Available from libzmq 4.2.0.
329
336
  // Caller owns return value and must destroy it when done.
330
337
  CZMQ_EXPORT int
331
338
  zsock_use_fd (void *self);
332
339
 
333
- // Set socket option `use_fd`.
340
+ // Set socket option `use_fd`.
341
+ // Available from libzmq 4.2.0.
334
342
  CZMQ_EXPORT void
335
343
  zsock_set_use_fd (void *self, int use_fd);
336
344
 
337
345
  // Set socket option `xpub_manual`.
346
+ // Available from libzmq 4.2.0.
338
347
  CZMQ_EXPORT void
339
348
  zsock_set_xpub_manual (void *self, int xpub_manual);
340
349
 
341
350
  // Set socket option `xpub_welcome_msg`.
351
+ // Available from libzmq 4.2.0.
342
352
  CZMQ_EXPORT void
343
353
  zsock_set_xpub_welcome_msg (void *self, const char *xpub_welcome_msg);
344
354
 
345
355
  // Set socket option `stream_notify`.
356
+ // Available from libzmq 4.2.0.
346
357
  CZMQ_EXPORT void
347
358
  zsock_set_stream_notify (void *self, int stream_notify);
348
359
 
349
360
  // Get socket option `invert_matching`.
361
+ // Available from libzmq 4.2.0.
350
362
  // Caller owns return value and must destroy it when done.
351
363
  CZMQ_EXPORT int
352
364
  zsock_invert_matching (void *self);
353
365
 
354
366
  // Set socket option `invert_matching`.
367
+ // Available from libzmq 4.2.0.
355
368
  CZMQ_EXPORT void
356
369
  zsock_set_invert_matching (void *self, int invert_matching);
357
370
 
358
371
  // Set socket option `xpub_verboser`.
372
+ // Available from libzmq 4.2.0.
359
373
  CZMQ_EXPORT void
360
374
  zsock_set_xpub_verboser (void *self, int xpub_verboser);
361
375
 
362
376
  // Get socket option `connect_timeout`.
377
+ // Available from libzmq 4.2.0.
363
378
  // Caller owns return value and must destroy it when done.
364
379
  CZMQ_EXPORT int
365
380
  zsock_connect_timeout (void *self);
366
381
 
367
382
  // Set socket option `connect_timeout`.
383
+ // Available from libzmq 4.2.0.
368
384
  CZMQ_EXPORT void
369
385
  zsock_set_connect_timeout (void *self, int connect_timeout);
370
386
 
371
387
  // Get socket option `tcp_maxrt`.
388
+ // Available from libzmq 4.2.0.
372
389
  // Caller owns return value and must destroy it when done.
373
390
  CZMQ_EXPORT int
374
391
  zsock_tcp_maxrt (void *self);
375
392
 
376
393
  // Set socket option `tcp_maxrt`.
394
+ // Available from libzmq 4.2.0.
377
395
  CZMQ_EXPORT void
378
396
  zsock_set_tcp_maxrt (void *self, int tcp_maxrt);
379
397
 
380
398
  // Get socket option `thread_safe`.
399
+ // Available from libzmq 4.2.0.
381
400
  // Caller owns return value and must destroy it when done.
382
401
  CZMQ_EXPORT int
383
402
  zsock_thread_safe (void *self);
384
403
 
385
404
  // Get socket option `multicast_maxtpdu`.
405
+ // Available from libzmq 4.2.0.
386
406
  // Caller owns return value and must destroy it when done.
387
407
  CZMQ_EXPORT int
388
408
  zsock_multicast_maxtpdu (void *self);
389
409
 
390
410
  // Set socket option `multicast_maxtpdu`.
411
+ // Available from libzmq 4.2.0.
391
412
  CZMQ_EXPORT void
392
413
  zsock_set_multicast_maxtpdu (void *self, int multicast_maxtpdu);
393
414
 
394
415
  // Get socket option `vmci_buffer_size`.
416
+ // Available from libzmq 4.2.0.
395
417
  // Caller owns return value and must destroy it when done.
396
418
  CZMQ_EXPORT int
397
419
  zsock_vmci_buffer_size (void *self);
398
420
 
399
421
  // Set socket option `vmci_buffer_size`.
422
+ // Available from libzmq 4.2.0.
400
423
  CZMQ_EXPORT void
401
424
  zsock_set_vmci_buffer_size (void *self, int vmci_buffer_size);
402
425
 
403
426
  // Get socket option `vmci_buffer_min_size`.
427
+ // Available from libzmq 4.2.0.
404
428
  // Caller owns return value and must destroy it when done.
405
429
  CZMQ_EXPORT int
406
430
  zsock_vmci_buffer_min_size (void *self);
407
431
 
408
432
  // Set socket option `vmci_buffer_min_size`.
433
+ // Available from libzmq 4.2.0.
409
434
  CZMQ_EXPORT void
410
435
  zsock_set_vmci_buffer_min_size (void *self, int vmci_buffer_min_size);
411
436
 
412
437
  // Get socket option `vmci_buffer_max_size`.
438
+ // Available from libzmq 4.2.0.
413
439
  // Caller owns return value and must destroy it when done.
414
440
  CZMQ_EXPORT int
415
441
  zsock_vmci_buffer_max_size (void *self);
416
442
 
417
443
  // Set socket option `vmci_buffer_max_size`.
444
+ // Available from libzmq 4.2.0.
418
445
  CZMQ_EXPORT void
419
446
  zsock_set_vmci_buffer_max_size (void *self, int vmci_buffer_max_size);
420
447
 
421
448
  // Get socket option `vmci_connect_timeout`.
449
+ // Available from libzmq 4.2.0.
422
450
  // Caller owns return value and must destroy it when done.
423
451
  CZMQ_EXPORT int
424
452
  zsock_vmci_connect_timeout (void *self);
425
453
 
426
454
  // Set socket option `vmci_connect_timeout`.
455
+ // Available from libzmq 4.2.0.
427
456
  CZMQ_EXPORT void
428
457
  zsock_set_vmci_connect_timeout (void *self, int vmci_connect_timeout);
429
458
 
430
- // Get socket option `tos`.
459
+ // Get socket option `tos`.
460
+ // Available from libzmq 4.1.0.
431
461
  // Caller owns return value and must destroy it when done.
432
462
  CZMQ_EXPORT int
433
463
  zsock_tos (void *self);
434
464
 
435
- // Set socket option `tos`.
465
+ // Set socket option `tos`.
466
+ // Available from libzmq 4.1.0.
436
467
  CZMQ_EXPORT void
437
468
  zsock_set_tos (void *self, int tos);
438
469
 
439
470
  // Set socket option `router_handover`.
471
+ // Available from libzmq 4.1.0.
440
472
  CZMQ_EXPORT void
441
473
  zsock_set_router_handover (void *self, int router_handover);
442
474
 
443
475
  // Set socket option `connect_rid`.
476
+ // Available from libzmq 4.1.0.
444
477
  CZMQ_EXPORT void
445
478
  zsock_set_connect_rid (void *self, const char *connect_rid);
446
479
 
447
480
  // Set socket option `connect_rid` from 32-octet binary
481
+ // Available from libzmq 4.1.0.
448
482
  CZMQ_EXPORT void
449
483
  zsock_set_connect_rid_bin (void *self, const byte *connect_rid);
450
484
 
451
485
  // Get socket option `handshake_ivl`.
486
+ // Available from libzmq 4.1.0.
452
487
  // Caller owns return value and must destroy it when done.
453
488
  CZMQ_EXPORT int
454
489
  zsock_handshake_ivl (void *self);
455
490
 
456
491
  // Set socket option `handshake_ivl`.
492
+ // Available from libzmq 4.1.0.
457
493
  CZMQ_EXPORT void
458
494
  zsock_set_handshake_ivl (void *self, int handshake_ivl);
459
495
 
460
496
  // Get socket option `socks_proxy`.
497
+ // Available from libzmq 4.1.0.
461
498
  // Caller owns return value and must destroy it when done.
462
499
  CZMQ_EXPORT char *
463
500
  zsock_socks_proxy (void *self);
464
501
 
465
502
  // Set socket option `socks_proxy`.
503
+ // Available from libzmq 4.1.0.
466
504
  CZMQ_EXPORT void
467
505
  zsock_set_socks_proxy (void *self, const char *socks_proxy);
468
506
 
469
507
  // Set socket option `xpub_nodrop`.
508
+ // Available from libzmq 4.1.0.
470
509
  CZMQ_EXPORT void
471
510
  zsock_set_xpub_nodrop (void *self, int xpub_nodrop);
472
511
 
473
512
  // Set socket option `router_mandatory`.
513
+ // Available from libzmq 4.0.0.
474
514
  CZMQ_EXPORT void
475
515
  zsock_set_router_mandatory (void *self, int router_mandatory);
476
516
 
477
517
  // Set socket option `probe_router`.
518
+ // Available from libzmq 4.0.0.
478
519
  CZMQ_EXPORT void
479
520
  zsock_set_probe_router (void *self, int probe_router);
480
521
 
481
522
  // Set socket option `req_relaxed`.
523
+ // Available from libzmq 4.0.0.
482
524
  CZMQ_EXPORT void
483
525
  zsock_set_req_relaxed (void *self, int req_relaxed);
484
526
 
485
527
  // Set socket option `req_correlate`.
528
+ // Available from libzmq 4.0.0.
486
529
  CZMQ_EXPORT void
487
530
  zsock_set_req_correlate (void *self, int req_correlate);
488
531
 
489
532
  // Set socket option `conflate`.
533
+ // Available from libzmq 4.0.0.
490
534
  CZMQ_EXPORT void
491
535
  zsock_set_conflate (void *self, int conflate);
492
536
 
493
537
  // Get socket option `zap_domain`.
538
+ // Available from libzmq 4.0.0.
494
539
  // Caller owns return value and must destroy it when done.
495
540
  CZMQ_EXPORT char *
496
541
  zsock_zap_domain (void *self);
497
542
 
498
543
  // Set socket option `zap_domain`.
544
+ // Available from libzmq 4.0.0.
499
545
  CZMQ_EXPORT void
500
546
  zsock_set_zap_domain (void *self, const char *zap_domain);
501
547
 
502
548
  // Get socket option `mechanism`.
549
+ // Available from libzmq 4.0.0.
503
550
  // Caller owns return value and must destroy it when done.
504
551
  CZMQ_EXPORT int
505
552
  zsock_mechanism (void *self);
506
553
 
507
554
  // Get socket option `plain_server`.
555
+ // Available from libzmq 4.0.0.
508
556
  // Caller owns return value and must destroy it when done.
509
557
  CZMQ_EXPORT int
510
558
  zsock_plain_server (void *self);
511
559
 
512
560
  // Set socket option `plain_server`.
561
+ // Available from libzmq 4.0.0.
513
562
  CZMQ_EXPORT void
514
563
  zsock_set_plain_server (void *self, int plain_server);
515
564
 
516
565
  // Get socket option `plain_username`.
566
+ // Available from libzmq 4.0.0.
517
567
  // Caller owns return value and must destroy it when done.
518
568
  CZMQ_EXPORT char *
519
569
  zsock_plain_username (void *self);
520
570
 
521
571
  // Set socket option `plain_username`.
572
+ // Available from libzmq 4.0.0.
522
573
  CZMQ_EXPORT void
523
574
  zsock_set_plain_username (void *self, const char *plain_username);
524
575
 
525
576
  // Get socket option `plain_password`.
577
+ // Available from libzmq 4.0.0.
526
578
  // Caller owns return value and must destroy it when done.
527
579
  CZMQ_EXPORT char *
528
580
  zsock_plain_password (void *self);
529
581
 
530
582
  // Set socket option `plain_password`.
583
+ // Available from libzmq 4.0.0.
531
584
  CZMQ_EXPORT void
532
585
  zsock_set_plain_password (void *self, const char *plain_password);
533
586
 
534
587
  // Get socket option `curve_server`.
588
+ // Available from libzmq 4.0.0.
535
589
  // Caller owns return value and must destroy it when done.
536
590
  CZMQ_EXPORT int
537
591
  zsock_curve_server (void *self);
538
592
 
539
593
  // Set socket option `curve_server`.
594
+ // Available from libzmq 4.0.0.
540
595
  CZMQ_EXPORT void
541
596
  zsock_set_curve_server (void *self, int curve_server);
542
597
 
543
598
  // Get socket option `curve_publickey`.
599
+ // Available from libzmq 4.0.0.
544
600
  // Caller owns return value and must destroy it when done.
545
601
  CZMQ_EXPORT char *
546
602
  zsock_curve_publickey (void *self);
547
603
 
548
604
  // Set socket option `curve_publickey`.
605
+ // Available from libzmq 4.0.0.
549
606
  CZMQ_EXPORT void
550
607
  zsock_set_curve_publickey (void *self, const char *curve_publickey);
551
608
 
552
609
  // Set socket option `curve_publickey` from 32-octet binary
610
+ // Available from libzmq 4.0.0.
553
611
  CZMQ_EXPORT void
554
612
  zsock_set_curve_publickey_bin (void *self, const byte *curve_publickey);
555
613
 
556
614
  // Get socket option `curve_secretkey`.
615
+ // Available from libzmq 4.0.0.
557
616
  // Caller owns return value and must destroy it when done.
558
617
  CZMQ_EXPORT char *
559
618
  zsock_curve_secretkey (void *self);
560
619
 
561
620
  // Set socket option `curve_secretkey`.
621
+ // Available from libzmq 4.0.0.
562
622
  CZMQ_EXPORT void
563
623
  zsock_set_curve_secretkey (void *self, const char *curve_secretkey);
564
624
 
565
625
  // Set socket option `curve_secretkey` from 32-octet binary
626
+ // Available from libzmq 4.0.0.
566
627
  CZMQ_EXPORT void
567
628
  zsock_set_curve_secretkey_bin (void *self, const byte *curve_secretkey);
568
629
 
569
630
  // Get socket option `curve_serverkey`.
631
+ // Available from libzmq 4.0.0.
570
632
  // Caller owns return value and must destroy it when done.
571
633
  CZMQ_EXPORT char *
572
634
  zsock_curve_serverkey (void *self);
573
635
 
574
636
  // Set socket option `curve_serverkey`.
637
+ // Available from libzmq 4.0.0.
575
638
  CZMQ_EXPORT void
576
639
  zsock_set_curve_serverkey (void *self, const char *curve_serverkey);
577
640
 
578
641
  // Set socket option `curve_serverkey` from 32-octet binary
642
+ // Available from libzmq 4.0.0.
579
643
  CZMQ_EXPORT void
580
644
  zsock_set_curve_serverkey_bin (void *self, const byte *curve_serverkey);
581
645
 
582
646
  // Get socket option `gssapi_server`.
647
+ // Available from libzmq 4.0.0.
583
648
  // Caller owns return value and must destroy it when done.
584
649
  CZMQ_EXPORT int
585
650
  zsock_gssapi_server (void *self);
586
651
 
587
652
  // Set socket option `gssapi_server`.
653
+ // Available from libzmq 4.0.0.
588
654
  CZMQ_EXPORT void
589
655
  zsock_set_gssapi_server (void *self, int gssapi_server);
590
656
 
591
657
  // Get socket option `gssapi_plaintext`.
658
+ // Available from libzmq 4.0.0.
592
659
  // Caller owns return value and must destroy it when done.
593
660
  CZMQ_EXPORT int
594
661
  zsock_gssapi_plaintext (void *self);
595
662
 
596
663
  // Set socket option `gssapi_plaintext`.
664
+ // Available from libzmq 4.0.0.
597
665
  CZMQ_EXPORT void
598
666
  zsock_set_gssapi_plaintext (void *self, int gssapi_plaintext);
599
667
 
600
668
  // Get socket option `gssapi_principal`.
669
+ // Available from libzmq 4.0.0.
601
670
  // Caller owns return value and must destroy it when done.
602
671
  CZMQ_EXPORT char *
603
672
  zsock_gssapi_principal (void *self);
604
673
 
605
674
  // Set socket option `gssapi_principal`.
675
+ // Available from libzmq 4.0.0.
606
676
  CZMQ_EXPORT void
607
677
  zsock_set_gssapi_principal (void *self, const char *gssapi_principal);
608
678
 
609
679
  // Get socket option `gssapi_service_principal`.
680
+ // Available from libzmq 4.0.0.
610
681
  // Caller owns return value and must destroy it when done.
611
682
  CZMQ_EXPORT char *
612
683
  zsock_gssapi_service_principal (void *self);
613
684
 
614
685
  // Set socket option `gssapi_service_principal`.
686
+ // Available from libzmq 4.0.0.
615
687
  CZMQ_EXPORT void
616
688
  zsock_set_gssapi_service_principal (void *self, const char *gssapi_service_principal);
617
689
 
618
- // Get socket option `ipv6`.
690
+ // Get socket option `ipv6`.
691
+ // Available from libzmq 4.0.0.
619
692
  // Caller owns return value and must destroy it when done.
620
693
  CZMQ_EXPORT int
621
694
  zsock_ipv6 (void *self);
622
695
 
623
- // Set socket option `ipv6`.
696
+ // Set socket option `ipv6`.
697
+ // Available from libzmq 4.0.0.
624
698
  CZMQ_EXPORT void
625
699
  zsock_set_ipv6 (void *self, int ipv6);
626
700
 
627
701
  // Get socket option `immediate`.
702
+ // Available from libzmq 4.0.0.
628
703
  // Caller owns return value and must destroy it when done.
629
704
  CZMQ_EXPORT int
630
705
  zsock_immediate (void *self);
631
706
 
632
707
  // Set socket option `immediate`.
708
+ // Available from libzmq 4.0.0.
633
709
  CZMQ_EXPORT void
634
710
  zsock_set_immediate (void *self, int immediate);
635
711
 
636
- // Set socket option `router_raw`.
637
- CZMQ_EXPORT void
638
- zsock_set_router_raw (void *self, int router_raw);
639
-
640
- // Get socket option `ipv4only`.
641
- // Caller owns return value and must destroy it when done.
642
- CZMQ_EXPORT int
643
- zsock_ipv4only (void *self);
644
-
645
- // Set socket option `ipv4only`.
646
- CZMQ_EXPORT void
647
- zsock_set_ipv4only (void *self, int ipv4only);
648
-
649
- // Set socket option `delay_attach_on_connect`.
650
- CZMQ_EXPORT void
651
- zsock_set_delay_attach_on_connect (void *self, int delay_attach_on_connect);
652
-
653
- // Get socket option `type`.
712
+ // Get socket option `type`.
713
+ // Available from libzmq 3.0.0.
654
714
  // Caller owns return value and must destroy it when done.
655
715
  CZMQ_EXPORT int
656
716
  zsock_type (void *self);
657
717
 
658
- // Get socket option `sndhwm`.
718
+ // Get socket option `sndhwm`.
719
+ // Available from libzmq 3.0.0.
659
720
  // Caller owns return value and must destroy it when done.
660
721
  CZMQ_EXPORT int
661
722
  zsock_sndhwm (void *self);
662
723
 
663
- // Set socket option `sndhwm`.
724
+ // Set socket option `sndhwm`.
725
+ // Available from libzmq 3.0.0.
664
726
  CZMQ_EXPORT void
665
727
  zsock_set_sndhwm (void *self, int sndhwm);
666
728
 
667
- // Get socket option `rcvhwm`.
729
+ // Get socket option `rcvhwm`.
730
+ // Available from libzmq 3.0.0.
668
731
  // Caller owns return value and must destroy it when done.
669
732
  CZMQ_EXPORT int
670
733
  zsock_rcvhwm (void *self);
671
734
 
672
- // Set socket option `rcvhwm`.
735
+ // Set socket option `rcvhwm`.
736
+ // Available from libzmq 3.0.0.
673
737
  CZMQ_EXPORT void
674
738
  zsock_set_rcvhwm (void *self, int rcvhwm);
675
739
 
676
740
  // Get socket option `affinity`.
741
+ // Available from libzmq 3.0.0.
677
742
  // Caller owns return value and must destroy it when done.
678
743
  CZMQ_EXPORT int
679
744
  zsock_affinity (void *self);
680
745
 
681
746
  // Set socket option `affinity`.
747
+ // Available from libzmq 3.0.0.
682
748
  CZMQ_EXPORT void
683
749
  zsock_set_affinity (void *self, int affinity);
684
750
 
685
751
  // Set socket option `subscribe`.
752
+ // Available from libzmq 3.0.0.
686
753
  CZMQ_EXPORT void
687
754
  zsock_set_subscribe (void *self, const char *subscribe);
688
755
 
689
756
  // Set socket option `unsubscribe`.
757
+ // Available from libzmq 3.0.0.
690
758
  CZMQ_EXPORT void
691
759
  zsock_set_unsubscribe (void *self, const char *unsubscribe);
692
760
 
693
761
  // Get socket option `identity`.
762
+ // Available from libzmq 3.0.0.
694
763
  // Caller owns return value and must destroy it when done.
695
764
  CZMQ_EXPORT char *
696
765
  zsock_identity (void *self);
697
766
 
698
767
  // Set socket option `identity`.
768
+ // Available from libzmq 3.0.0.
699
769
  CZMQ_EXPORT void
700
770
  zsock_set_identity (void *self, const char *identity);
701
771
 
702
- // Get socket option `rate`.
772
+ // Get socket option `rate`.
773
+ // Available from libzmq 3.0.0.
703
774
  // Caller owns return value and must destroy it when done.
704
775
  CZMQ_EXPORT int
705
776
  zsock_rate (void *self);
706
777
 
707
- // Set socket option `rate`.
778
+ // Set socket option `rate`.
779
+ // Available from libzmq 3.0.0.
708
780
  CZMQ_EXPORT void
709
781
  zsock_set_rate (void *self, int rate);
710
782
 
711
783
  // Get socket option `recovery_ivl`.
784
+ // Available from libzmq 3.0.0.
712
785
  // Caller owns return value and must destroy it when done.
713
786
  CZMQ_EXPORT int
714
787
  zsock_recovery_ivl (void *self);
715
788
 
716
789
  // Set socket option `recovery_ivl`.
790
+ // Available from libzmq 3.0.0.
717
791
  CZMQ_EXPORT void
718
792
  zsock_set_recovery_ivl (void *self, int recovery_ivl);
719
793
 
720
- // Get socket option `sndbuf`.
794
+ // Get socket option `sndbuf`.
795
+ // Available from libzmq 3.0.0.
721
796
  // Caller owns return value and must destroy it when done.
722
797
  CZMQ_EXPORT int
723
798
  zsock_sndbuf (void *self);
724
799
 
725
- // Set socket option `sndbuf`.
800
+ // Set socket option `sndbuf`.
801
+ // Available from libzmq 3.0.0.
726
802
  CZMQ_EXPORT void
727
803
  zsock_set_sndbuf (void *self, int sndbuf);
728
804
 
729
- // Get socket option `rcvbuf`.
805
+ // Get socket option `rcvbuf`.
806
+ // Available from libzmq 3.0.0.
730
807
  // Caller owns return value and must destroy it when done.
731
808
  CZMQ_EXPORT int
732
809
  zsock_rcvbuf (void *self);
733
810
 
734
- // Set socket option `rcvbuf`.
811
+ // Set socket option `rcvbuf`.
812
+ // Available from libzmq 3.0.0.
735
813
  CZMQ_EXPORT void
736
814
  zsock_set_rcvbuf (void *self, int rcvbuf);
737
815
 
738
- // Get socket option `linger`.
816
+ // Get socket option `linger`.
817
+ // Available from libzmq 3.0.0.
739
818
  // Caller owns return value and must destroy it when done.
740
819
  CZMQ_EXPORT int
741
820
  zsock_linger (void *self);
742
821
 
743
- // Set socket option `linger`.
822
+ // Set socket option `linger`.
823
+ // Available from libzmq 3.0.0.
744
824
  CZMQ_EXPORT void
745
825
  zsock_set_linger (void *self, int linger);
746
826
 
747
827
  // Get socket option `reconnect_ivl`.
828
+ // Available from libzmq 3.0.0.
748
829
  // Caller owns return value and must destroy it when done.
749
830
  CZMQ_EXPORT int
750
831
  zsock_reconnect_ivl (void *self);
751
832
 
752
833
  // Set socket option `reconnect_ivl`.
834
+ // Available from libzmq 3.0.0.
753
835
  CZMQ_EXPORT void
754
836
  zsock_set_reconnect_ivl (void *self, int reconnect_ivl);
755
837
 
756
838
  // Get socket option `reconnect_ivl_max`.
839
+ // Available from libzmq 3.0.0.
757
840
  // Caller owns return value and must destroy it when done.
758
841
  CZMQ_EXPORT int
759
842
  zsock_reconnect_ivl_max (void *self);
760
843
 
761
844
  // Set socket option `reconnect_ivl_max`.
845
+ // Available from libzmq 3.0.0.
762
846
  CZMQ_EXPORT void
763
847
  zsock_set_reconnect_ivl_max (void *self, int reconnect_ivl_max);
764
848
 
765
849
  // Get socket option `backlog`.
850
+ // Available from libzmq 3.0.0.
766
851
  // Caller owns return value and must destroy it when done.
767
852
  CZMQ_EXPORT int
768
853
  zsock_backlog (void *self);
769
854
 
770
855
  // Set socket option `backlog`.
856
+ // Available from libzmq 3.0.0.
771
857
  CZMQ_EXPORT void
772
858
  zsock_set_backlog (void *self, int backlog);
773
859
 
774
860
  // Get socket option `maxmsgsize`.
861
+ // Available from libzmq 3.0.0.
775
862
  // Caller owns return value and must destroy it when done.
776
863
  CZMQ_EXPORT int
777
864
  zsock_maxmsgsize (void *self);
778
865
 
779
866
  // Set socket option `maxmsgsize`.
867
+ // Available from libzmq 3.0.0.
780
868
  CZMQ_EXPORT void
781
869
  zsock_set_maxmsgsize (void *self, int maxmsgsize);
782
870
 
783
871
  // Get socket option `multicast_hops`.
872
+ // Available from libzmq 3.0.0.
784
873
  // Caller owns return value and must destroy it when done.
785
874
  CZMQ_EXPORT int
786
875
  zsock_multicast_hops (void *self);
787
876
 
788
877
  // Set socket option `multicast_hops`.
878
+ // Available from libzmq 3.0.0.
789
879
  CZMQ_EXPORT void
790
880
  zsock_set_multicast_hops (void *self, int multicast_hops);
791
881
 
792
882
  // Get socket option `rcvtimeo`.
883
+ // Available from libzmq 3.0.0.
793
884
  // Caller owns return value and must destroy it when done.
794
885
  CZMQ_EXPORT int
795
886
  zsock_rcvtimeo (void *self);
796
887
 
797
888
  // Set socket option `rcvtimeo`.
889
+ // Available from libzmq 3.0.0.
798
890
  CZMQ_EXPORT void
799
891
  zsock_set_rcvtimeo (void *self, int rcvtimeo);
800
892
 
801
893
  // Get socket option `sndtimeo`.
894
+ // Available from libzmq 3.0.0.
802
895
  // Caller owns return value and must destroy it when done.
803
896
  CZMQ_EXPORT int
804
897
  zsock_sndtimeo (void *self);
805
898
 
806
899
  // Set socket option `sndtimeo`.
900
+ // Available from libzmq 3.0.0.
807
901
  CZMQ_EXPORT void
808
902
  zsock_set_sndtimeo (void *self, int sndtimeo);
809
903
 
810
904
  // Set socket option `xpub_verbose`.
905
+ // Available from libzmq 3.0.0.
811
906
  CZMQ_EXPORT void
812
907
  zsock_set_xpub_verbose (void *self, int xpub_verbose);
813
908
 
814
909
  // Get socket option `tcp_keepalive`.
910
+ // Available from libzmq 3.0.0.
815
911
  // Caller owns return value and must destroy it when done.
816
912
  CZMQ_EXPORT int
817
913
  zsock_tcp_keepalive (void *self);
818
914
 
819
915
  // Set socket option `tcp_keepalive`.
916
+ // Available from libzmq 3.0.0.
820
917
  CZMQ_EXPORT void
821
918
  zsock_set_tcp_keepalive (void *self, int tcp_keepalive);
822
919
 
823
920
  // Get socket option `tcp_keepalive_idle`.
921
+ // Available from libzmq 3.0.0.
824
922
  // Caller owns return value and must destroy it when done.
825
923
  CZMQ_EXPORT int
826
924
  zsock_tcp_keepalive_idle (void *self);
827
925
 
828
926
  // Set socket option `tcp_keepalive_idle`.
927
+ // Available from libzmq 3.0.0.
829
928
  CZMQ_EXPORT void
830
929
  zsock_set_tcp_keepalive_idle (void *self, int tcp_keepalive_idle);
831
930
 
832
931
  // Get socket option `tcp_keepalive_cnt`.
932
+ // Available from libzmq 3.0.0.
833
933
  // Caller owns return value and must destroy it when done.
834
934
  CZMQ_EXPORT int
835
935
  zsock_tcp_keepalive_cnt (void *self);
836
936
 
837
937
  // Set socket option `tcp_keepalive_cnt`.
938
+ // Available from libzmq 3.0.0.
838
939
  CZMQ_EXPORT void
839
940
  zsock_set_tcp_keepalive_cnt (void *self, int tcp_keepalive_cnt);
840
941
 
841
942
  // Get socket option `tcp_keepalive_intvl`.
943
+ // Available from libzmq 3.0.0.
842
944
  // Caller owns return value and must destroy it when done.
843
945
  CZMQ_EXPORT int
844
946
  zsock_tcp_keepalive_intvl (void *self);
845
947
 
846
948
  // Set socket option `tcp_keepalive_intvl`.
949
+ // Available from libzmq 3.0.0.
847
950
  CZMQ_EXPORT void
848
951
  zsock_set_tcp_keepalive_intvl (void *self, int tcp_keepalive_intvl);
849
952
 
850
953
  // Get socket option `tcp_accept_filter`.
954
+ // Available from libzmq 3.0.0.
851
955
  // Caller owns return value and must destroy it when done.
852
956
  CZMQ_EXPORT char *
853
957
  zsock_tcp_accept_filter (void *self);
854
958
 
855
959
  // Set socket option `tcp_accept_filter`.
960
+ // Available from libzmq 3.0.0.
856
961
  CZMQ_EXPORT void
857
962
  zsock_set_tcp_accept_filter (void *self, const char *tcp_accept_filter);
858
963
 
859
964
  // Get socket option `rcvmore`.
965
+ // Available from libzmq 3.0.0.
860
966
  // Caller owns return value and must destroy it when done.
861
967
  CZMQ_EXPORT int
862
968
  zsock_rcvmore (void *self);
863
969
 
864
- // Get socket option `fd`.
970
+ // Get socket option `fd`.
971
+ // Available from libzmq 3.0.0.
865
972
  // Caller owns return value and must destroy it when done.
866
973
  CZMQ_EXPORT SOCKET
867
974
  zsock_fd (void *self);
868
975
 
869
- // Get socket option `events`.
976
+ // Get socket option `events`.
977
+ // Available from libzmq 3.0.0.
870
978
  // Caller owns return value and must destroy it when done.
871
979
  CZMQ_EXPORT int
872
980
  zsock_events (void *self);
873
981
 
874
982
  // Get socket option `last_endpoint`.
983
+ // Available from libzmq 3.0.0.
875
984
  // Caller owns return value and must destroy it when done.
876
985
  CZMQ_EXPORT char *
877
986
  zsock_last_endpoint (void *self);
878
987
 
988
+ // Set socket option `router_raw`.
989
+ // Available from libzmq 3.0.0.
990
+ CZMQ_EXPORT void
991
+ zsock_set_router_raw (void *self, int router_raw);
992
+
993
+ // Get socket option `ipv4only`.
994
+ // Available from libzmq 3.0.0.
995
+ // Caller owns return value and must destroy it when done.
996
+ CZMQ_EXPORT int
997
+ zsock_ipv4only (void *self);
998
+
999
+ // Set socket option `ipv4only`.
1000
+ // Available from libzmq 3.0.0.
1001
+ CZMQ_EXPORT void
1002
+ zsock_set_ipv4only (void *self, int ipv4only);
1003
+
1004
+ // Set socket option `delay_attach_on_connect`.
1005
+ // Available from libzmq 3.0.0.
1006
+ CZMQ_EXPORT void
1007
+ zsock_set_delay_attach_on_connect (void *self, int delay_attach_on_connect);
1008
+
879
1009
  // Self test of this class.
880
1010
  CZMQ_EXPORT void
881
1011
  zsock_test (bool verbose);
@@ -1002,6 +1132,7 @@ CZMQ_EXPORT zsock_t *
1002
1132
  CZMQ_EXPORT zsock_t *
1003
1133
  zsock_new_stream_checked (const char *endpoint, const char *filename, size_t line_nbr);
1004
1134
 
1135
+ #ifdef CZMQ_BUILD_DRAFT_API
1005
1136
  CZMQ_EXPORT zsock_t *
1006
1137
  zsock_new_server_checked (const char *endpoint, const char *filename, size_t line_nbr);
1007
1138
 
@@ -1019,6 +1150,7 @@ CZMQ_EXPORT zsock_t *
1019
1150
 
1020
1151
  CZMQ_EXPORT zsock_t *
1021
1152
  zsock_new_scatter_checked (const char *endpoint, const char *filename, size_t line_nbr);
1153
+ #endif // CZMQ_BUILD_DRAFT_API
1022
1154
 
1023
1155
  #ifdef __cplusplus
1024
1156
  }