From 43a68713382b0ea22caa11ccfd4e0b976843e4cd Mon Sep 17 00:00:00 2001 From: Arthur David Olson Date: Sun, 20 Jul 2008 14:23:46 -0400 Subject: [PATCH] logwtmp.c goes SCCS-file: logwtmp.c SCCS-SID: 8.2 --- logwtmp.c | 71 ------------------------------------------------------- 1 file changed, 71 deletions(-) diff --git a/logwtmp.c b/logwtmp.c index 001801f..e69de29 100644 --- a/logwtmp.c +++ b/logwtmp.c @@ -1,71 +0,0 @@ -#ifndef lint -#ifndef NOID -static char elsieid[] = "%W%"; -/* As received from UCB, with include reordering and OLD_TIME condition. */ -#endif /* !defined NOID */ -#endif /* !defined lint */ - -/* - * Copyright (c) 1988 The Regents of the University of California. - * All rights reserved. - * - * Redistribution and use in source and binary forms are permitted - * provided that the above copyright notice and this paragraph are - * duplicated in all such forms and that any documentation, - * advertising materials, and other materials related to such - * distribution and use acknowledge that the software was developed - * by the University of California, Berkeley. The name of the - * University may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANT[A]BILITY AND FITNESS FOR A PARTICULAR PURPOSE. - */ - -#ifndef lint -#ifdef LIBC_SCCS -static char sccsid[] = "@(#)logwtmp.c 5.2 (Berkeley) 9/20/88"; -#endif /* defined LIBC_SCCS */ -#endif /* !defined lint */ - -#include -#include - -#ifdef OLD_TIME - -char dummy_to_keep_linker_happy; - -#endif /* defined OLD_TIME */ - -#ifndef OLD_TIME - -#include -#include -#include - -#define WTMPFILE "/usr/adm/wtmp" - -logwtmp(line, name, host) - char *line, *name, *host; -{ - struct utmp ut; - struct stat buf; - int fd; - time_t time(); - char *strncpy(); - - if ((fd = open(WTMPFILE, O_WRONLY|O_APPEND, 0)) < 0) - return; - if (!fstat(fd, &buf)) { - (void)strncpy(ut.ut_line, line, sizeof(ut.ut_line)); - (void)strncpy(ut.ut_name, name, sizeof(ut.ut_name)); - (void)strncpy(ut.ut_host, host, sizeof(ut.ut_host)); - (void)time(&ut.ut_time); - if (write(fd, (char *)&ut, sizeof(struct utmp)) != - sizeof(struct utmp)) - (void)ftruncate(fd, buf.st_size); - } - (void)close(fd); -} - -#endif /* !defined OLD_TIME */