| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550 |
- """0MQ Constant names"""
- # Copyright (C) PyZMQ Developers
- # Distributed under the terms of the Modified BSD License.
- # dictionaries of constants new or removed in particular versions
- new_in = {
- (2,2,0) : [
- 'RCVTIMEO',
- 'SNDTIMEO',
- ],
- (3,2,2) : [
- # errnos
- 'EMSGSIZE',
- 'EAFNOSUPPORT',
- 'ENETUNREACH',
- 'ECONNABORTED',
- 'ECONNRESET',
- 'ENOTCONN',
- 'ETIMEDOUT',
- 'EHOSTUNREACH',
- 'ENETRESET',
- # ctx opts
- 'IO_THREADS',
- 'MAX_SOCKETS',
- 'IO_THREADS_DFLT',
- 'MAX_SOCKETS_DFLT',
- # socket opts
- 'IPV4ONLY',
- 'LAST_ENDPOINT',
- 'ROUTER_BEHAVIOR',
- 'ROUTER_MANDATORY',
- 'FAIL_UNROUTABLE',
- 'TCP_KEEPALIVE',
- 'TCP_KEEPALIVE_CNT',
- 'TCP_KEEPALIVE_IDLE',
- 'TCP_KEEPALIVE_INTVL',
- 'DELAY_ATTACH_ON_CONNECT',
- 'XPUB_VERBOSE',
- # msg opts
- 'MORE',
- 'EVENT_CONNECTED',
- 'EVENT_CONNECT_DELAYED',
- 'EVENT_CONNECT_RETRIED',
- 'EVENT_LISTENING',
- 'EVENT_BIND_FAILED',
- 'EVENT_ACCEPTED',
- 'EVENT_ACCEPT_FAILED',
- 'EVENT_CLOSED',
- 'EVENT_CLOSE_FAILED',
- 'EVENT_DISCONNECTED',
- 'EVENT_ALL',
- ],
- (4,0,0) : [
- # socket types
- 'STREAM',
- # socket opts
- 'IMMEDIATE',
- 'ROUTER_RAW',
- 'IPV6',
- 'MECHANISM',
- 'PLAIN_SERVER',
- 'PLAIN_USERNAME',
- 'PLAIN_PASSWORD',
- 'CURVE_SERVER',
- 'CURVE_PUBLICKEY',
- 'CURVE_SECRETKEY',
- 'CURVE_SERVERKEY',
- 'PROBE_ROUTER',
- 'REQ_RELAXED',
- 'REQ_CORRELATE',
- 'CONFLATE',
- 'ZAP_DOMAIN',
- # security
- 'NULL',
- 'PLAIN',
- 'CURVE',
- # events
- 'EVENT_MONITOR_STOPPED',
- ],
- (4,1,0) : [
- # ctx opts
- 'SOCKET_LIMIT',
- 'THREAD_PRIORITY',
- 'THREAD_PRIORITY_DFLT',
- 'THREAD_SCHED_POLICY',
- 'THREAD_SCHED_POLICY_DFLT',
- # socket opts
- 'ROUTER_HANDOVER',
- 'TOS',
- 'IPC_FILTER_PID',
- 'IPC_FILTER_UID',
- 'IPC_FILTER_GID',
- 'CONNECT_RID',
- 'GSSAPI_SERVER',
- 'GSSAPI_PRINCIPAL',
- 'GSSAPI_SERVICE_PRINCIPAL',
- 'GSSAPI_PLAINTEXT',
- 'HANDSHAKE_IVL',
- 'XPUB_NODROP',
- 'SOCKS_PROXY',
- # msg opts
- 'SRCFD',
- 'SHARED',
- # security
- 'GSSAPI',
- ],
- (4,2,0): [
- # polling
- 'POLLPRI',
- ],
- (4,2,3): [
- 'ROUTING_ID',
- 'CONNECT_ROUTING_ID',
- ],
- (4,3,0): [
- # context options
- 'MSG_T_SIZE',
- 'THREAD_AFFINITY_CPU_ADD',
- 'THREAD_AFFINITY_CPU_REMOVE',
- 'THREAD_NAME_PREFIX',
- # socket options
- 'GSSAPI_PRINCIPAL_NAMETYPE',
- 'GSSAPI_SERVICE_PRINCIPAL_NAMETYPE',
- 'BINDTODEVICE',
- # GSSAPI principal name types
- 'GSSAPI_NT_HOSTBASED',
- 'GSSAPI_NT_USER_NAME',
- 'GSSAPI_NT_KRB5_PRINCIPAL',
- # events
- 'EVENT_HANDSHAKE_FAILED_NO_DETAIL',
- 'EVENT_HANDSHAKE_SUCCEEDED',
- 'EVENT_HANDSHAKE_FAILED_PROTOCOL',
- 'EVENT_HANDSHAKE_FAILED_AUTH',
- 'PROTOCOL_ERROR_ZMTP_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZMTP_UNEXPECTED_COMMAND',
- 'PROTOCOL_ERROR_ZMTP_INVALID_SEQUENCE',
- 'PROTOCOL_ERROR_ZMTP_KEY_EXCHANGE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_MESSAGE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_HELLO',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_INITIATE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_ERROR',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_READY',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_WELCOME',
- 'PROTOCOL_ERROR_ZMTP_INVALID_METADATA',
- 'PROTOCOL_ERROR_ZMTP_CRYPTOGRAPHIC',
- 'PROTOCOL_ERROR_ZMTP_MECHANISM_MISMATCH',
- 'PROTOCOL_ERROR_ZAP_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZAP_MALFORMED_REPLY',
- 'PROTOCOL_ERROR_ZAP_BAD_REQUEST_ID',
- 'PROTOCOL_ERROR_ZAP_BAD_VERSION',
- 'PROTOCOL_ERROR_ZAP_INVALID_STATUS_CODE',
- 'PROTOCOL_ERROR_ZAP_INVALID_METADATA',
- ]
- }
- draft_in = {
- (4,2,0): [
- # socket types
- 'SERVER',
- 'CLIENT',
- 'RADIO',
- 'DISH',
- 'GATHER',
- 'SCATTER',
- 'DGRAM',
- # ctx options
- 'BLOCKY',
- # socket options
- 'XPUB_MANUAL',
- 'XPUB_WELCOME_MSG',
- 'STREAM_NOTIFY',
- 'INVERT_MATCHING',
- 'HEARTBEAT_IVL',
- 'HEARTBEAT_TTL',
- 'HEARTBEAT_TIMEOUT',
- 'XPUB_VERBOSER',
- 'CONNECT_TIMEOUT',
- 'TCP_MAXRT',
- 'THREAD_SAFE',
- 'MULTICAST_MAXTPDU',
- 'VMCI_BUFFER_SIZE',
- 'VMCI_BUFFER_MIN_SIZE',
- 'VMCI_BUFFER_MAX_SIZE',
- 'VMCI_CONNECT_TIMEOUT',
- 'USE_FD',
- ],
- (4,2,4): [
- # socket options
- 'ZAP_ENFORCE_DOMAIN',
- 'LOOPBACK_FASTPATH',
- 'METADATA',
- 'ZERO_COPY_RECV',
- ],
- (4,3,0): [
- # socket options
- 'ROUTER_NOTIFY',
- 'MULTICAST_LOOP',
- 'NOTIFY_CONNECT',
- 'NOTIFY_DISCONNECT',
- ],
- }
- removed_in = {
- (3,2,2) : [
- 'UPSTREAM',
- 'DOWNSTREAM',
- 'HWM',
- 'SWAP',
- 'MCAST_LOOP',
- 'RECOVERY_IVL_MSEC',
- ]
- }
- # collections of zmq constant names based on their role
- # base names have no specific use
- # opt names are validated in get/set methods of various objects
- base_names = [
- # base
- 'VERSION',
- 'VERSION_MAJOR',
- 'VERSION_MINOR',
- 'VERSION_PATCH',
- 'NOBLOCK',
- 'DONTWAIT',
- 'POLLIN',
- 'POLLOUT',
- 'POLLERR',
- 'POLLPRI',
- 'SNDMORE',
- 'STREAMER',
- 'FORWARDER',
- 'QUEUE',
- 'IO_THREADS_DFLT',
- 'MAX_SOCKETS_DFLT',
- 'POLLITEMS_DFLT',
- 'THREAD_PRIORITY_DFLT',
- 'THREAD_SCHED_POLICY_DFLT',
- # socktypes
- 'PAIR',
- 'PUB',
- 'SUB',
- 'REQ',
- 'REP',
- 'DEALER',
- 'ROUTER',
- 'XREQ',
- 'XREP',
- 'PULL',
- 'PUSH',
- 'XPUB',
- 'XSUB',
- 'UPSTREAM',
- 'DOWNSTREAM',
- 'STREAM',
- 'SERVER',
- 'CLIENT',
- 'RADIO',
- 'DISH',
- 'GATHER',
- 'SCATTER',
- 'DGRAM',
- # events
- 'EVENT_CONNECTED',
- 'EVENT_CONNECT_DELAYED',
- 'EVENT_CONNECT_RETRIED',
- 'EVENT_LISTENING',
- 'EVENT_BIND_FAILED',
- 'EVENT_ACCEPTED',
- 'EVENT_ACCEPT_FAILED',
- 'EVENT_CLOSED',
- 'EVENT_CLOSE_FAILED',
- 'EVENT_DISCONNECTED',
- 'EVENT_ALL',
- 'EVENT_MONITOR_STOPPED',
- 'EVENT_HANDSHAKE_FAILED_NO_DETAIL',
- 'EVENT_HANDSHAKE_SUCCEEDED',
- 'EVENT_HANDSHAKE_FAILED_PROTOCOL',
- 'EVENT_HANDSHAKE_FAILED_AUTH',
- 'PROTOCOL_ERROR_ZMTP_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZMTP_UNEXPECTED_COMMAND',
- 'PROTOCOL_ERROR_ZMTP_INVALID_SEQUENCE',
- 'PROTOCOL_ERROR_ZMTP_KEY_EXCHANGE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_MESSAGE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_HELLO',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_INITIATE',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_ERROR',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_READY',
- 'PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_WELCOME',
- 'PROTOCOL_ERROR_ZMTP_INVALID_METADATA',
- 'PROTOCOL_ERROR_ZMTP_CRYPTOGRAPHIC',
- 'PROTOCOL_ERROR_ZMTP_MECHANISM_MISMATCH',
- 'PROTOCOL_ERROR_ZAP_UNSPECIFIED',
- 'PROTOCOL_ERROR_ZAP_MALFORMED_REPLY',
- 'PROTOCOL_ERROR_ZAP_BAD_REQUEST_ID',
- 'PROTOCOL_ERROR_ZAP_BAD_VERSION',
- 'PROTOCOL_ERROR_ZAP_INVALID_STATUS_CODE',
- 'PROTOCOL_ERROR_ZAP_INVALID_METADATA',
- 'NOTIFY_CONNECT',
- 'NOTIFY_DISCONNECT',
- # security
- 'NULL',
- 'PLAIN',
- 'CURVE',
- 'GSSAPI',
- 'GSSAPI_NT_HOSTBASED',
- 'GSSAPI_NT_USER_NAME',
- 'GSSAPI_NT_KRB5_PRINCIPAL',
- ## ERRNO
- # Often used (these are else in errno.)
- 'EAGAIN',
- 'EINVAL',
- 'EFAULT',
- 'ENOMEM',
- 'ENODEV',
- 'EMSGSIZE',
- 'EAFNOSUPPORT',
- 'ENETUNREACH',
- 'ECONNABORTED',
- 'ECONNRESET',
- 'ENOTCONN',
- 'ETIMEDOUT',
- 'EHOSTUNREACH',
- 'ENETRESET',
- # For Windows compatibility
- 'HAUSNUMERO',
- 'ENOTSUP',
- 'EPROTONOSUPPORT',
- 'ENOBUFS',
- 'ENETDOWN',
- 'EADDRINUSE',
- 'EADDRNOTAVAIL',
- 'ECONNREFUSED',
- 'EINPROGRESS',
- 'ENOTSOCK',
- # 0MQ Native
- 'EFSM',
- 'ENOCOMPATPROTO',
- 'ETERM',
- 'EMTHREAD',
- ]
- int64_sockopt_names = [
- 'AFFINITY',
- 'MAXMSGSIZE',
- # sockopts removed in 3.0.0
- 'HWM',
- 'SWAP',
- 'MCAST_LOOP',
- 'RECOVERY_IVL_MSEC',
- # new in 4.2
- 'VMCI_BUFFER_SIZE',
- 'VMCI_BUFFER_MIN_SIZE',
- 'VMCI_BUFFER_MAX_SIZE',
- ]
- bytes_sockopt_names = [
- 'IDENTITY',
- 'SUBSCRIBE',
- 'UNSUBSCRIBE',
- 'LAST_ENDPOINT',
- 'TCP_ACCEPT_FILTER',
- 'PLAIN_USERNAME',
- 'PLAIN_PASSWORD',
- 'CURVE_PUBLICKEY',
- 'CURVE_SECRETKEY',
- 'CURVE_SERVERKEY',
- 'ZAP_DOMAIN',
- 'CONNECT_RID',
- 'GSSAPI_PRINCIPAL',
- 'GSSAPI_SERVICE_PRINCIPAL',
- 'SOCKS_PROXY',
- 'XPUB_WELCOME_MSG',
- # new in 4.2.3
- 'ROUTING_ID',
- 'CONNECT_ROUTING_ID',
- # new in 4.3.0
- 'BINDTODEVICE',
- ]
- fd_sockopt_names = [
- 'FD',
- ]
- int_sockopt_names = [
- # sockopts
- 'RECONNECT_IVL_MAX',
- # sockopts new in 2.2.0
- 'SNDTIMEO',
- 'RCVTIMEO',
- # new in 3.x
- 'SNDHWM',
- 'RCVHWM',
- 'MULTICAST_HOPS',
- 'IPV4ONLY',
- 'ROUTER_BEHAVIOR',
- 'TCP_KEEPALIVE',
- 'TCP_KEEPALIVE_CNT',
- 'TCP_KEEPALIVE_IDLE',
- 'TCP_KEEPALIVE_INTVL',
- 'DELAY_ATTACH_ON_CONNECT',
- 'XPUB_VERBOSE',
- 'EVENTS',
- 'TYPE',
- 'LINGER',
- 'RECONNECT_IVL',
- 'BACKLOG',
- 'ROUTER_MANDATORY',
- 'FAIL_UNROUTABLE',
- 'ROUTER_RAW',
- 'IMMEDIATE',
- 'IPV6',
- 'MECHANISM',
- 'PLAIN_SERVER',
- 'CURVE_SERVER',
- 'PROBE_ROUTER',
- 'REQ_RELAXED',
- 'REQ_CORRELATE',
- 'CONFLATE',
- 'ROUTER_HANDOVER',
- 'TOS',
- 'IPC_FILTER_PID',
- 'IPC_FILTER_UID',
- 'IPC_FILTER_GID',
- 'GSSAPI_SERVER',
- 'GSSAPI_PLAINTEXT',
- 'HANDSHAKE_IVL',
- 'XPUB_NODROP',
- # new in 4.2
- 'XPUB_MANUAL',
- 'STREAM_NOTIFY',
- 'INVERT_MATCHING',
- 'XPUB_VERBOSER',
- 'HEARTBEAT_IVL',
- 'HEARTBEAT_TTL',
- 'HEARTBEAT_TIMEOUT',
- 'CONNECT_TIMEOUT',
- 'TCP_MAXRT',
- 'THREAD_SAFE',
- 'MULTICAST_MAXTPDU',
- 'VMCI_CONNECT_TIMEOUT',
- 'USE_FD',
- # new in 4.3
- 'GSSAPI_PRINCIPAL_NAMETYPE',
- 'GSSAPI_SERVICE_PRINCIPAL_NAMETYPE',
- 'MULTICAST_LOOP',
- 'ROUTER_NOTIFY',
- 'ZAP_ENFORCE_DOMAIN',
- ]
- switched_sockopt_names = [
- 'RATE',
- 'RECOVERY_IVL',
- 'SNDBUF',
- 'RCVBUF',
- 'RCVMORE',
- ]
- ctx_opt_names = [
- 'IO_THREADS',
- 'MAX_SOCKETS',
- 'SOCKET_LIMIT',
- 'THREAD_PRIORITY',
- 'THREAD_SCHED_POLICY',
- 'BLOCKY',
- # new in 4.3
- 'MSG_T_SIZE',
- 'THREAD_AFFINITY_CPU_ADD',
- 'THREAD_AFFINITY_CPU_REMOVE',
- 'THREAD_NAME_PREFIX',
- ]
- msg_opt_names = [
- 'MORE',
- 'SRCFD',
- 'SHARED',
- ]
- from itertools import chain
- all_names = list(chain(
- base_names,
- ctx_opt_names,
- bytes_sockopt_names,
- fd_sockopt_names,
- int_sockopt_names,
- int64_sockopt_names,
- switched_sockopt_names,
- msg_opt_names,
- ))
- del chain
- def no_prefix(name):
- """does the given constant have a ZMQ_ prefix?"""
- return name.startswith('E') and not name.startswith('EVENT')
|