Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


CUSERID(3)                 Library Functions Manual                 CUSERID(3)

NAME
     cuserid - get user name

LIBRARY
     Compatibility Library (libcompat, -lcompat)

SYNOPSIS
     #include <stdio.h>

     char *
     cuserid(char *buf);

DESCRIPTION
     This interface is available from the compatibility library, libcompat and
     has been obsoleted by getlogin(2).

     The cuserid() function returns a character string representation of the
     user name associated with the effective user ID of the calling process.

     If buf is not the NULL pointer, the user name is copied into the memory
     referenced by buf.  The argument buf is assumed to point to an array at
     least L_cuserid (as defined in the include file <stdio.h>) bytes long.
     Otherwise, the user name is copied to a static buffer.

RETURN VALUES
     If buf is not the NULL pointer, buf is returned; otherwise the address of
     the static buffer is returned.

     If the user name could not be determined, if buf is not the NULL pointer,
     the null character `\0' will be stored at *buf; otherwise the NULL
     pointer is returned.

SEE ALSO
     getlogin(2), getpwent(3)

STANDARDS
     The cuserid() function conforms to IEEE Std 1003.1-1988 ("POSIX.1").

BUGS
     Due to irreconcilable differences in historic implementations, cuserid()
     was removed from the IEEE Std 1003.1-1990 ("POSIX.1") standard.  This
     implementation exists purely for compatibility with existing programs.
     New programs should use one of the following three alternatives to obtain
     the user name:

           1.   getlogin() to return the user's login name.
           2.   getpwuid(geteuid()) to return the user name associated with
                the calling process' effective user ID.
           3.   getpwuid(getuid()) to return the user name associated with the
                calling process' real user ID.

NetBSD 10.99                   November 28, 1993                  NetBSD 10.99