'\" te .\" Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. .\" Copyright 1989 AT&T .TH getpeername 3SOCKET "24 Mar 2011" "SunOS 5.11" "Sockets Library Functions" .SH NAME getpeername \- get name of connected peer .SH SYNOPSIS .LP .nf \fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-lsocket\fR \fB -lnsl \fR [ \fIlibrary\fR ... ] #include \fBint\fR \fBgetpeername\fR(\fBint\fR \fIs\fR, \fBstruct sockaddr *\fR\fIname\fR, \fBsocklen_t *\fR\fInamelen\fR); .fi .SH DESCRIPTION .sp .LP \fBgetpeername()\fR returns the name of the peer connected to socket \fIs\fR. The \fBint\fR pointed to by the \fInamelen\fR parameter should be initialized to indicate the amount of space pointed to by \fIname\fR. On return it contains the actual size of the name returned (in bytes), prior to any truncation. The name is truncated if the buffer provided is too small. .SH RETURN VALUES .sp .LP If successful, \fBgetpeername()\fR returns \fB0\fR; otherwise it returns \fB\(mi1\fR and sets \fBerrno\fR to indicate the error. .SH ERRORS .sp .LP The call succeeds unless: .sp .ne 2 .mk .na \fB\fBEBADF\fR\fR .ad .RS 12n .rt The argument \fIs\fR is not a valid descriptor. .RE .sp .ne 2 .mk .na \fB\fBENOMEM\fR\fR .ad .RS 12n .rt There was insufficient user memory for the operation to complete. .RE .sp .ne 2 .mk .na \fB\fBENOSR\fR\fR .ad .RS 12n .rt There were insufficient STREAMS resources available for the operation to complete. .RE .sp .ne 2 .mk .na \fB\fBENOTCONN\fR\fR .ad .RS 12n .rt The socket is not connected. .RE .sp .ne 2 .mk .na \fB\fBENOTSOCK\fR\fR .ad .RS 12n .rt The argument \fIs\fR is not a socket. .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 \fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBgetsockname\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBattributes\fR(5), \fBsocket.h\fR(3HEAD)