MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Standard C Library Functions                         getlogin(3C)



NAME
     getlogin, getloginr - get login name

SYNOPSIS
     #include 

     char *getlogin(void);


     char *getloginr(char *name, int namelen);


  Standard conforming
     cc [ flag ... ] file... -DPOSIXPTHREADSEMANTICS [ library ... ]

     int getloginr(char *name, sizet namesize);


DESCRIPTION
     The getlogin() function returns a pointer to the login  name
     as  found  in  /var/adm/utmpx. It can be used in conjunction
     with getpwnam(3C) to locate the correct password file  entry
     when the same user ID is shared by several login names.


     If getlogin()  is  called  within  a  process  that  is  not
     attached  to  a  terminal,  it  returns  a null pointer. The
     correct procedure for determining the login name is to  call
     cuserid(3C),  or  to call getlogin() and if it fails to call
     getpwuid(3C).


     The getloginr() function has the same functionality as get-
     login()  except  that  the  caller must supply a buffer name
     with length namelen to store the result.   The  name  buffer
     must   be  at  least  POSIXLOGINAMEMAX  bytes  in  size
     (defined  in  ).  The  POSIX  version  (see  stan-
     dards(5)) of getloginr() takes a namesize parameter of type
     sizet.

RETURN VALUES
     Upon successful completion, getlogin() returns a pointer  to
     the  login  name  or a null pointer if the user's login name
     cannot be found.  Otherwise it returns a  null  pointer  and
     sets errno to indicate the error.


     The standard-conforming getloginr() returns 0  if  success-
     ful, or the error number upon failure.

ERORS




SunOS 5.11          Last change: 18 May 2004                    1






Standard C Library Functions                         getlogin(3C)



     The getloginr() function will fail if:

     ERANGE    The size of the buffer is smaller than the  result
               to be returned.


     EINVAL    And entry for the current user was  not  found  in
               the /var/adm/utmpx file.



     The getlogin() and getloginr() functions may fail if:

     EMFILE    There are {OPENMAX}  file  descriptors  currently
               open in the calling process.


     ENFILE    The maximum allowable number of files is currently
               open in the system.


     ENXIO     The calling process has no controlling terminal.



     The getloginr() function may fail if:

     ERANGE    The size of the buffer is smaller than the  result
               to be returned.


USAGE
     The return value of  getlogin()  points  to  thread-specific
     data  whose  content is overwritten on each call by the same
     thread.


     Three names associated  with  the  current  process  can  be
     determined:  getpwuid(geteuid()) returns the name associated
     with the  effective  user  ID  of  the  process;  getlogin()
     returns the name associated with the current login activity;
     and getpwuid(getuid()) returns the name associated with  the
     real user ID of the process.

FILES
     /var/adm/utmpx    user access and administration information


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




SunOS 5.11          Last change: 18 May 2004                    2






Standard C Library Functions                         getlogin(3C)



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Standard                    
    
     MT-Level                     See below.                  
    


SEE ALSO
     geteuid(2),    getuid(2),     cuserid(3C),     getgrnam(3C),
     getpwnam(3C),  getpwuid(3C),  utmpx(4), attributes(5), stan-
     dards(5)

NOTES
     When compiling multithreaded programs, see Intro(3).


     The getlogin() function is  safe  to  use  in  multithreaded
     applications,  but is discouraged. The getloginr() function
     should be used instead.


     Solaris 2.4 and earlier releases provided a getloginr()  as
     specified  in  POSIX.1c Draft 6. The final POSIX.1c standard
     changed the interface as described above.  Support  for  the
     Draft 6 interface is provided for compatibility only and may
     not be supported in future releases.  New  applications  and
     libraries should use the standard-conforming interface.


























SunOS 5.11          Last change: 18 May 2004                    3



OpenSolaris man pages main menu

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