MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Standard C Library Functions                     getpeerucred(3C)



NAME
     getpeerucred - get connected socket or STREAM peer's creden-
     tials

SYNOPSIS
     #include 

     int getpeerucred(int fd, ucredt **ucred);


DESCRIPTION
     The getpeerucred() function returns the credentials  of  the
     peer  endpoint of a connection-oriented socket (SOCKSTREAM)
     or STREAM fd at the time the endpoint  was  created  or  the
     connection was established.  A process that initiates a con-
     nection retrieves the credentials of its peer  at  the  time
     the  peer's endpoint was created. A process that listens for
     connections retrieves the credentials of  the  peer  at  the
     time the peer initiated the connection.


     When successful, getpeerucred()  stores  the  pointer  to  a
     freshly  allocated ucredt in the memory location pointed to
     by the ucred argument if that memory location  contains  the
     null  pointer.  If  the memory location is non-null, it will
     reuse the existing ucredt.


     When ucred is no longer needed, a  credential  allocated  by
     getpeerucred() should be freed with ucredfree(3C).


     It is possible that all fields of the ucredt are not avail-
     able to all peer endpoints and all callers.

RETURN VALUES
     Upon successful completion, getpeerucred() returns 0. Other-
     wise, it returns -1 and errno is set to indicate the error.

ERORS
     The getpeerucred() function will fail if:

     EAGAIN      There is not enough memory available to allocate
                 sufficient  memory  to hold the user credential.
                 The application can try again later.


     EBADF       The fd argument is not a valid file descriptor.


     EFAULT      The pointer location pointed to by  the  ucredt
                 **  argument  points  to  an  invalid,  non-null



SunOS 5.11          Last change: 26 May 2004                    1






Standard C Library Functions                     getpeerucred(3C)



                 address.


     EINVAL      The socket is connected but the peer credentials
                 are unknown.


     ENOMEM      The physical limits of the system  are  exceeded
                 by the memory allocation needed to hold the user
                 credential.


     ENOTCON    The socket or STREAM is  not  connected  or  the
                 STREAM's peer is unknown.


     ENOTSUP     This operation is not  supported  on  this  file
                 descriptor.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Evolving                    
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     doorucred(3C), ucredget(3C), attributes(5), connld(7M)

NOTES
     The system currently supports both sides of connection  end-
     points  for  local  AFUNIX,  AFINET, and AFINET6 sockets,
     /dev/tcp, /dev/ticots, and  /dev/ticotsord  XTI/TLI  connec-
     tions,  and  pipe  file descriptors sent using ISENDFD as a
     result of the open of a named pipe with the "connld"  module
     pushed.










SunOS 5.11          Last change: 26 May 2004                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™