GETPEERNAME(2)      Linux Programmer's Manual      GETPEERNAME(2)

NAME
       getpeername - get name of connected peer

SYNOPSIS
       #include <sys/socket.h>

       int  getpeername(int  s,  struct sockaddr *name, socklen_t
       *namelen);

DESCRIPTION
       Getpeername returns the name  of  the  peer  connected  to
       socket  s.  The namelen parameter should be initialized to
       indicate the amount of  space  pointed  to  by  name.   On
       return  it  contains  the actual size of the name returned
       (in bytes).  The name is truncated if the buffer  provided
       is too small.

RETURN VALUE
       On  success,  zero is returned.  On error, -1 is returned,
       and errno is set appropriately.

ERRORS
       EBADF   The argument s is not a valid descriptor.

       ENOTSOCK
               The argument s is a file, not a socket.

       ENOTCONN
               The socket is not connected.

       ENOBUFS Insufficient resources were available in the  sys-
               tem to perform the operation.

       EFAULT  The name parameter points to memory not in a valid
               part of the process address space.

CONFORMING TO
       SVr4, 4.4BSD (the getpeername function call first appeared
       in 4.2BSD).

NOTE
       The third argument of getpeername is in reality an `int *'
       (and this is what BSD 4.* and libc4 and libc5 have).  Some
       POSIX  confusion  resulted  in the present socklen_t.  The
       draft standard  has  not  been  adopted  yet,  but  glibc2
       already  follows  it  and  also  has  socklen_t.  See also
       accept(2).

SEE ALSO
       accept(2), bind(2), getsockname(2)

BSD Man Page               30 July 1993                         1