xref: /minix3/minix/lib/libc/sys/__getlogin.c (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1*433d6423SLionel Sambuc /*  getlogin(3)
2*433d6423SLionel Sambuc  *
3*433d6423SLionel Sambuc  *  Author: Terrence W. Holm          Aug. 1988
4*433d6423SLionel Sambuc  */
5*433d6423SLionel Sambuc 
6*433d6423SLionel Sambuc #include <sys/cdefs.h>
7*433d6423SLionel Sambuc #include "namespace.h"
8*433d6423SLionel Sambuc #include <lib.h>
9*433d6423SLionel Sambuc 
10*433d6423SLionel Sambuc #include <pwd.h>
11*433d6423SLionel Sambuc #include <unistd.h>
12*433d6423SLionel Sambuc #include <string.h>
13*433d6423SLionel Sambuc #include <stdio.h>
14*433d6423SLionel Sambuc #include "extern.h"
15*433d6423SLionel Sambuc 
16*433d6423SLionel Sambuc 
17*433d6423SLionel Sambuc 
__getlogin(char * logname,size_t sz)18*433d6423SLionel Sambuc int __getlogin(char *logname, size_t sz)
19*433d6423SLionel Sambuc {
20*433d6423SLionel Sambuc   struct passwd *pw_entry;
21*433d6423SLionel Sambuc 
22*433d6423SLionel Sambuc   pw_entry = getpwuid(getuid());
23*433d6423SLionel Sambuc 
24*433d6423SLionel Sambuc   if (pw_entry == (struct passwd *)NULL)
25*433d6423SLionel Sambuc     return 0;
26*433d6423SLionel Sambuc 
27*433d6423SLionel Sambuc   strncpy(logname, pw_entry->pw_name, sz);
28*433d6423SLionel Sambuc   return sz;
29*433d6423SLionel Sambuc }
30