summaryrefslogtreecommitdiff
path: root/usr/src/man/man3socket/bind.3socket
diff options
context:
space:
mode:
authorRichard Lowe <richlowe@richlowe.net>2011-03-14 14:05:30 -0400
committerRichard Lowe <richlowe@richlowe.net>2011-03-14 14:05:30 -0400
commitc10c16dec587a0662068f6e2991c29ed3a9db943 (patch)
treef414286f4bba41d75683ed4fbbaa6bfa4bf7fabd /usr/src/man/man3socket/bind.3socket
parent68caef18a23a498d9e3017b983562c0f4fd8ab23 (diff)
downloadillumos-gate-c10c16dec587a0662068f6e2991c29ed3a9db943.tar.gz
243 system manual pages should live with the software
Reviewed by: garrett@nexenta.com Reviewed by: gwr@nexenta.com Reviewed by: trisk@opensolaris.org Approved by: gwr@nexenta.com --HG-- extra : rebase_source : 0c599d0bec0dc8865fbba67721a7a6cd6b1feefb
Diffstat (limited to 'usr/src/man/man3socket/bind.3socket')
-rw-r--r--usr/src/man/man3socket/bind.3socket233
1 files changed, 233 insertions, 0 deletions
diff --git a/usr/src/man/man3socket/bind.3socket b/usr/src/man/man3socket/bind.3socket
new file mode 100644
index 0000000000..0f98ab7014
--- /dev/null
+++ b/usr/src/man/man3socket/bind.3socket
@@ -0,0 +1,233 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH bind 3SOCKET "11 May 2009" "SunOS 5.11" "Sockets Library Functions"
+.SH NAME
+bind \- bind a name to a socket
+.SH SYNOPSIS
+.LP
+.nf
+\fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-lsocket\fR \fB -lnsl \fR [ \fIlibrary\fR ... ]
+#include <sys/types.h>
+#include <sys/socket.h>
+
+
+
+\fBint\fR \fBbind\fR(\fBint\fR \fIs\fR, \fBconst struct sockaddr *\fR\fIname\fR, \fBint\fR \fInamelen\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbind()\fR function assigns a name to an unnamed socket. When a socket is
+created with \fBsocket\fR(3SOCKET), it exists in a name space (address family)
+but has no name assigned. The \fBbind()\fR function requests that the name
+pointed to by \fIname\fR be assigned to the socket.
+.SH RETURN VALUES
+.sp
+.LP
+Upon successful completion \fB0\fR is returned. Otherwise, \fB\(mi1\fR is
+returned and \fBerrno\fR is set to indicate the error.
+.SH ERRORS
+.sp
+.LP
+The \fBbind()\fR function will fail if:
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 17n
+.rt
+The requested address is protected, and \fB{PRIV_NET_PRIVADDR}\fR is not
+asserted in the effective set of the current process.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEADDRINUSE\fR\fR
+.ad
+.RS 17n
+.rt
+The specified address is already in use.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 17n
+.rt
+The specified address is not available on the local machine.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEBADF\fR\fR
+.ad
+.RS 17n
+.rt
+\fIs\fR is not a valid descriptor.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 17n
+.rt
+\fInamelen\fR is not the size of a valid address for the specified address
+family.
+.sp
+The socket is already bound to an address.
+.sp
+Socket options are inconsistent with port attributes.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBENOSR\fR\fR
+.ad
+.RS 17n
+.rt
+There were insufficient \fBSTREAMS\fR resources for the operation to complete.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBENOTSOCK\fR\fR
+.ad
+.RS 17n
+.rt
+\fIs\fR is a descriptor for a file, not a socket.
+.RE
+
+.sp
+.LP
+The following errors are specific to binding names in the UNIX domain:
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 11n
+.rt
+Search permission is denied for a component of the path prefix of the pathname
+in \fIname\fR.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 11n
+.rt
+An I/O error occurred while making the directory entry or allocating the inode.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEISDIR\fR\fR
+.ad
+.RS 11n
+.rt
+A null pathname was specified.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBELOOP\fR\fR
+.ad
+.RS 11n
+.rt
+Too many symbolic links were encountered in translating the pathname in
+\fIname\fR.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBENOENT\fR\fR
+.ad
+.RS 11n
+.rt
+A component of the path prefix of the pathname in \fIname\fR does not exist.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBENOTDIR\fR\fR
+.ad
+.RS 11n
+.rt
+A component of the path prefix of the pathname in \fIname\fR is not a
+directory.
+.RE
+
+.sp
+.ne 2
+.mk
+.na
+\fB\fBEROFS\fR\fR
+.ad
+.RS 11n
+.rt
+The inode would reside on a read-only file system.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(5) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+tab() box;
+cw(2.75i) |cw(2.75i)
+lw(2.75i) |lw(2.75i)
+.
+ATTRIBUTE TYPEATTRIBUTE VALUE
+_
+MT-LevelSafe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBunlink\fR(2), \fBsocket\fR(3SOCKET), \fBattributes\fR(5),
+\fBprivileges\fR(5), \fBsocket.h\fR(3HEAD)
+.SH NOTES
+.sp
+.LP
+Binding a name in the UNIX domain creates a socket in the file system that must
+be deleted by the caller when it is no longer needed by using \fBunlink\fR(2).
+.sp
+.LP
+The rules used in name binding vary between communication domains.