24
24
#-----------------------------------------------------------------------------
28
28
#-----------------------------------------------------------------------------
29
29
# Python module level constants
30
30
#-----------------------------------------------------------------------------
34
if ZMQ_VERSION < 30000:
35
# backport DONTWAIT as alias to NOBLOCK
37
DONTWAIT = ZMQ_NOBLOCK
39
# keep NOBLOCK as alias for new DONTWAIT
40
NOBLOCK = ZMQ_DONTWAIT
41
DONTWAIT = ZMQ_DONTWAIT
42
UPSTREAM = ZMQ_UPSTREAM
43
DOWNSTREAM = ZMQ_DOWNSTREAM
55
# keep deprecated aliases
60
_optionals.extend(['XREQ','XREP','UPSTREAM','DOWNSTREAM'])
46
63
AFFINITY = ZMQ_AFFINITY
47
64
IDENTITY = ZMQ_IDENTITY
48
65
SUBSCRIBE = ZMQ_SUBSCRIBE
49
66
UNSUBSCRIBE = ZMQ_UNSUBSCRIBE
51
68
RECOVERY_IVL = ZMQ_RECOVERY_IVL
52
MCAST_LOOP = ZMQ_MCAST_LOOP
69
RECONNECT_IVL_MAX = ZMQ_RECONNECT_IVL_MAX
53
70
SNDBUF = ZMQ_SNDBUF
54
71
RCVBUF = ZMQ_RCVBUF
55
72
RCVMORE = ZMQ_RCVMORE
57
74
POLLIN = ZMQ_POLLIN
58
75
POLLOUT = ZMQ_POLLOUT
59
76
POLLERR = ZMQ_POLLERR
60
78
STREAMER = ZMQ_STREAMER
61
79
FORWARDER = ZMQ_FORWARDER
82
# collections of sockopts, based on type:
83
bytes_sockopts = [IDENTITY, SUBSCRIBE, UNSUBSCRIBE]
84
int64_sockopts = [AFFINITY]
85
int_sockopts = [RECONNECT_IVL_MAX]
87
# some sockopts changed type from 2.x to 3.0
88
switched = [RATE, RECOVERY_IVL, SNDBUF, RCVBUF, RCVMORE]
89
if ZMQ_VERSION < 30000:
90
int64_sockopts.extend(switched)
92
int_sockopts.extend(switched)
94
if ZMQ_VERSION >= 20200:
95
# sockopts new in 2.2.0
96
SNDTIMEO = ZMQ_SNDTIMEO
97
RCVTIMEO = ZMQ_RCVTIMEO
98
_optionals.extend(['RCVTIMEO', 'SNDTIMEO'])
99
int_sockopts.extend([RCVTIMEO, SNDTIMEO])
101
if ZMQ_VERSION < 30000:
102
# sockopts removed in 3.0.0
105
MCAST_LOOP = ZMQ_MCAST_LOOP
106
RECOVERY_IVL_MSEC = ZMQ_RECOVERY_IVL_MSEC
107
_optionals.extend(['HWM', 'SWAP', 'MCAST_LOOP', 'RECOVERY_IVL_MSEC'])
108
int64_sockopts.extend([HWM, SWAP, MCAST_LOOP, RECOVERY_IVL_MSEC])
113
MAXMSGSIZE = ZMQ_MAXMSGSIZE
116
MULTICAST_HOPS = ZMQ_MULTICAST_HOPS
117
IPV4ONLY = ZMQ_IPV4ONLY
118
LAST_ENDPOINT = ZMQ_LAST_ENDPOINT
120
ROUTER_BEHAVIOR = ZMQ_ROUTER_BEHAVIOR
121
TCP_KEEPALIVE = ZMQ_TCP_KEEPALIVE
122
TCP_KEEPALIVE_CNT = ZMQ_TCP_KEEPALIVE_CNT
123
TCP_KEEPALIVE_IDLE = ZMQ_TCP_KEEPALIVE_IDLE
124
TCP_KEEPALIVE_INTVL = ZMQ_TCP_KEEPALIVE_INTVL
125
TCP_ACCEPT_FILTER = ZMQ_TCP_ACCEPT_FILTER
126
DELAY_ATTACH_ON_CONNECT = ZMQ_DELAY_ATTACH_ON_CONNECT
139
'TCP_KEEPALIVE_IDLE',
140
'TCP_KEEPALIVE_INTVL',
142
'DELAY_ATTACH_ON_CONNECT',
146
int64_sockopts.append(MAXMSGSIZE)
147
bytes_sockopts.append('LAST_ENDPOINT')
148
int_sockopts.extend([
159
DELAY_ATTACH_ON_CONNECT,
162
EVENT_CONNECTED = ZMQ_EVENT_CONNECTED
163
EVENT_CONNECT_DELAYED = ZMQ_EVENT_CONNECT_DELAYED
164
EVENT_CONNECT_RETRIED = ZMQ_EVENT_CONNECT_RETRIED
165
EVENT_LISTENING = ZMQ_EVENT_LISTENING
166
EVENT_BIND_FAILED = ZMQ_EVENT_BIND_FAILED
167
EVENT_ACCEPTED = ZMQ_EVENT_ACCEPTED
168
EVENT_ACCEPT_FAILED = ZMQ_EVENT_ACCEPT_FAILED
169
EVENT_CLOSED = ZMQ_EVENT_CLOSED
170
EVENT_CLOSE_FAILED = ZMQ_EVENT_CLOSE_FAILED
171
EVENT_DISCONNECTED = ZMQ_EVENT_DISCONNECTED
175
'EVENT_CONNECT_DELAYED',
176
'EVENT_CONNECT_RETRIED',
180
'EVENT_ACCEPT_FAILED',
182
'EVENT_CLOSE_FAILED',
183
'EVENT_DISCONNECTED',
191
RECONNECT_IVL = ZMQ_RECONNECT_IVL
192
BACKLOG = ZMQ_BACKLOG
193
int_sockopts.extend([EVENTS, TYPE, LINGER, RECONNECT_IVL, BACKLOG])
195
# As new constants are added in future versions, add a new block here
196
# like the two above, checking agains the relevant value for ZMQ_VERSION.
197
# The constants will need to be added to libzmq.pxd and utils/zmq_compat.h
65
200
#-----------------------------------------------------------------------------
82
217
EADDRNOTAVAIL = ZMQ_EADDRNOTAVAIL
83
218
ECONNREFUSED = ZMQ_ECONNREFUSED
84
219
EINPROGRESS = ZMQ_EINPROGRESS
220
ENOTSOCK = ZMQ_ENOTSOCK
222
if ZMQ_VERSION >= 300000:
224
EAFNOSUPPORT = ZMQ_EAFNOSUPPORT
225
EHOSTUNREACH = ZMQ_EHOSTUNREACH
226
_optionals.extend(['EAFNOSUPPORT', 'EHOSTUNREACH'])
87
EMTHREAD = ZMQ_EMTHREAD
89
230
ENOCOMPATPROTO = ZMQ_ENOCOMPATPROTO
232
EMTHREAD = ZMQ_EMTHREAD
92
234
#-----------------------------------------------------------------------------
93
235
# Symbols to export