1 #include <unistd.h>
2 #include <string.h>
3 #include <errno.h>
4 
getlogin_r(char * name,size_t size)5 int getlogin_r(char *name, size_t size)
6 {
7 	char *logname = getlogin();
8 	if (!logname) return ENXIO; /* or...? */
9 	if (strlen(logname) >= size) return ERANGE;
10 	strcpy(name, logname);
11 	return 0;
12 }
13