GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
ZMQ_BIND(3) 0MQ Manual ZMQ_BIND(3)

zmq_bind - accept incoming connections on a socket

int zmq_bind (void *socket, const char *endpoint);

The zmq_bind() function binds the socket to a local endpoint and then accepts incoming connections on that endpoint.

The endpoint is a string consisting of a transport:// followed by an address. The transport specifies the underlying protocol to use. The address specifies the transport-specific address to bind to.

0MQ provides the the following transports:

tcp

unicast transport using TCP, see zmq_tcp(7)

ipc

local inter-process communication transport, see zmq_ipc(7)

inproc

local in-process (inter-thread) communication transport, see zmq_inproc(7)

pgm, epgm

reliable multicast transport using PGM, see zmq_pgm(7)

Every 0MQ socket type except ZMQ_PAIR supports one-to-many and many-to-one semantics. The precise semantics depend on the socket type and are defined in zmq_socket(3).

The ipc and tcp transports accept wildcard addresses: see zmq_ipc(7) and zmq_tcp(7) for details.


Note

the address syntax may be different for zmq_bind() and zmq_connect() especially for the tcp, pgm and epgm transports.


Note

following a zmq_bind(), the socket enters a mute state unless or until at least one incoming or outgoing connection is made, at which point the socket enters a ready state. In the mute state, the socket blocks or drops messages according to the socket type, as defined in zmq_socket(3). By contrast, following a libzmq:zmq_connect[3], the socket enters the ready state.

The zmq_bind() function returns zero if successful. Otherwise it returns -1 and sets errno to one of the values defined below.

EINVAL
The endpoint supplied is invalid.

EPROTONOSUPPORT

The requested transport protocol is not supported.

ENOCOMPATPROTO

The requested transport protocol is not compatible with the socket type.

EADDRINUSE

The requested address is already in use.

EADDRNOTAVAIL

The requested address was not local.

ENODEV

The requested address specifies a nonexistent interface.

ETERM

The 0MQ context associated with the specified socket was terminated.

ENOTSOCK

The provided socket was invalid.

EMTHREAD

No I/O thread is available to accomplish the task.

Binding a publisher socket to an in-process and a TCP transport.

/* Create a ZMQ_PUB socket */
void *socket = zmq_socket (context, ZMQ_PUB);
assert (socket);
/* Bind it to a in-process transport with the address 'my_publisher' */
int rc = zmq_bind (socket, "inproc://my_publisher");
assert (rc == 0);
/* Bind it to a TCP transport on port 5555 of the 'eth0' interface */
rc = zmq_bind (socket, "tcp://eth0:5555");
assert (rc == 0);

zmq_connect(3) zmq_socket(3) zmq(7)

This 0MQ manual page was written by Pieter Hintjens <ph@imatix.com[1]>, Martin Sustrik <sustrik@250bpm.com[2]> and Martin Lucina <mato@kotelna.sk[3]>.

1.
ph@imatix.com
mailto:ph@imatix.com
2.
sustrik@250bpm.com
mailto:sustrik@250bpm.com
3.
mato@kotelna.sk
mailto:mato@kotelna.sk
10/14/2014 0MQ 3.2.5

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.