getpeername(2)                                               getpeername(2)




 NAME
      getpeername - get address of connected peer

 SYNOPSIS
      #include <sys/socket.h>

    AF_CCITT only:
      #include <x25/x25addrstr.h>

      int getpeername(int s, void *addr, int *addrlen);

    _XOPEN_SOURCE_EXTENDED only
      int getpeername(int s, struct sockaddr *addr, size_t *addrlen);

 DESCRIPTION
      getpeername() returns the address of the peer socket connected to the
      socket indicated by s, where s is a socket descriptor.  addr points to
      a socket address structure in which this address is returned.  addrlen
      points to an object of type int, which should be initialized to
      indicate the size of the address structure.  On return, it contains
      the actual size of the address returned (in bytes).  If addr does not
      point to enough space to contain the whole address of the peer, only
      the first addrlen bytes of the address are returned.

    AF_CCITT only:
      The addr struct contains the X.25 addressing information of the remote
      peer socket connected to socket s.  However, the x25ifname[] field of
      the addr struct contains the name of the local X.25 interface through
      which the call arrived.

 RETURN VALUE
      Upon successful completion, getpeername() returns 0; otherwise it
      returns -1 and sets errno to indicate the error.

 ERRORS
      getpeername() fails if any of the following conditions are
      encountered:

           [EBADF]             s is not a valid file descriptor.

           [ENOTSOCK]          s is a valid file descriptor, but it is not a
                               socket.

           [ENOTCONN]          The socket is not connected.

           [ENOBUFS]           No buffer space is available to perform the
                               operation.

           [EFAULT]            addr or addrlen are not valid pointers.

           [EINVAL]            The socket has been shut down.

           [EOPNOTSUPP]        Operation not supported for AF_UNIX sockets.

 AUTHOR
      getpeername() was developed by the University of California, Berkeley.

 FUTURE DIRECTION
      The default behavior in this release is still the classic HP-UX BSD
      Sockets, however it will be changed to X/Open Sockets in some future
      release.  At that time, any HP-UX BSD Sockets behavior which is
      incompatible with X/Open Sockets may be obsoleted.  HP customers are
      advised to migrate their applications to conform to X/Open
      specification( see xopen_networking(7) ).

 SEE ALSO
      bind(2), socket(2), getsockname(2), inet(7F), af_ccitt(7F),
      xopen_networking(7).





 Hewlett-Packard Company            - 2 -    HP-UX Release 10.20:  July 1996