summaryrefslogtreecommitdiff
path: root/man/man3/zmq_bind.3
diff options
context:
space:
mode:
Diffstat (limited to 'man/man3/zmq_bind.3')
-rw-r--r--man/man3/zmq_bind.336
1 files changed, 36 insertions, 0 deletions
diff --git a/man/man3/zmq_bind.3 b/man/man3/zmq_bind.3
index 70f1df7..069b966 100644
--- a/man/man3/zmq_bind.3
+++ b/man/man3/zmq_bind.3
@@ -4,9 +4,45 @@ zmq_bind \- binds the socket to the specified address
.SH SYNOPSIS
.B int zmq_bind (void *s, const char *addr);
.SH DESCRIPTION
+The function binds socket
+.IR s to a particular transport. Actual semantics of the
+command depend on the underlying transport mechanism, however, in cases where
+peers connect in an asymetric manner,
+.IR zmq_bind
+should be called first,
+.IR zmq_connect
+afterwards. For actual formats of
+.IR addr
+parameter for different types of transport have a look at
+.IR zmq(7) .
+Note that single socket can be bound (and connected) to
+arbitrary number of peers using different transport mechanisms.
.SH RETURN VALUE
+In case of success the function returns zero. Otherwise it returns -1 and
+sets
+.IR errno
+to the appropriate value.
.SH ERRORS
+.IP "\fBEPROTONOSUPPORT\fP"
+unsupported protocol.
+.IP "\fBENOCOMPATPROTO\fP"
+protocol is not compatible with the socket type.
+.IP "\fBEADDRINUSE\fP"
+the given address is already in use.
+.IP "\fBEADDRNOTAVAIL\fP"
+a nonexistent interface was requested or the requested address was not local.
.SH EXAMPLE
+.nf
+void *s = zmq_socket (context, ZMQ_PUB);
+assert (s);
+int rc = zmq_bind (s, "inproc://my_publisher");
+assert (rc == 0);
+rc = zmq_bind (s, "tcp://eth0:5555");
+assert (rc == 0);
+.fi
.SH SEE ALSO
+.BR zmq_connect (3)
+.BR zmq_socket (3)
+.BR zmq (7)
.SH AUTHOR
Martin Sustrik <sustrik at 250bpm dot com>