date and time created 82/11/07 19:06:08 by sam
authorSam Leffler <sam@ucbvax.Berkeley.EDU>
Mon, 8 Nov 1982 11:06:08 +0000 (03:06 -0800)
committerSam Leffler <sam@ucbvax.Berkeley.EDU>
Mon, 8 Nov 1982 11:06:08 +0000 (03:06 -0800)
SCCS-vsn: lib/libc/gen/getlogin.c 4.1

usr/src/lib/libc/gen/getlogin.c [new file with mode: 0644]

diff --git a/usr/src/lib/libc/gen/getlogin.c b/usr/src/lib/libc/gen/getlogin.c
new file mode 100644 (file)
index 0000000..40f6bd1
--- /dev/null
@@ -0,0 +1,26 @@
+/*     @(#)getlogin.c  4.1 (Berkeley) %G%      */
+#include <utmp.h>
+
+static char    UTMP[]  = "/etc/utmp";
+static struct  utmp ubuf;
+
+char *
+getlogin()
+{
+       register me, uf;
+       register char *cp;
+
+       if( !(me = ttyslot()) )
+               return(0);
+       if( (uf = open( UTMP, 0 )) < 0 )
+               return(0);
+       lseek( uf, (long)(me*sizeof(ubuf)), 0 );
+       if (read(uf, (char *)&ubuf, sizeof(ubuf)) != sizeof(ubuf))
+               return(0);
+       close(uf);
+       ubuf.ut_name[sizeof (ubuf.ut_name)] = ' ';
+       for (cp=ubuf.ut_name; *cp++!=' ';)
+               ;
+       *--cp = '\0';
+       return( ubuf.ut_name );
+}