date and time created 83/07/02 18:46:56 by root
[unix-history] / usr / src / usr.bin / uucp / uulog / uulog.c
#ifndef lint
static char sccsid[] = "@(#)uulog.c 5.1 (Berkeley) %G%";
#endif
#include "uucp.h"
#ifndef SYSBUF
static char SYSBUF[BUFSIZ];
#endif
/*******
*
* uulog -
*
* options:
* -s - system name for search
* -u - user name for search
*
* exit codes:
* 0 - normal
*
*/
main(argc, argv)
char *argv[];
{
FILE *plogf;
char *system, *user;
char buf[BUFSIZ], u[20], s[20];
setbuf(stdout, SYSBUF);
strcpy(Progname, "uulog");
system = user = NULL;
while (argc>1 && argv[1][0] == '-') {
switch (argv[1][1]) {
case 's':
system = &argv[1][2];
if (*system == NULL && argc > 2 && argv[2][0] != '-') {
system = &argv[2][0];
argv++;
argc--;
}
if (strlen(system) > 7)
system[7] = 0;
break;
case 'u':
user = &argv[1][2];
if (*user == NULL && argc > 2 && argv[2][0] != '-') {
user = &argv[2][0];
argv++;
argc--;
}
break;
default:
printf("unknown flag %s\n", argv[1]); break;
}
--argc; argv++;
}
if (user == NULL && system == NULL) {
fprintf(stderr, "usage: uulog [-u user] [-s system]\n");
exit(1);
}
/* chmod(LOGFILE, 0666); rm-ed by rti!trt */
plogf = fopen(LOGFILE, "r");
ASSERT(plogf != NULL, "CAN NOT OPEN", LOGFILE, 0);
while (fgets(buf, BUFSIZ, plogf) != NULL) {
sscanf(buf, "%s%s", u, s);
if (user != NULL && !prefix(user, u))
continue;
if (system != NULL && !prefix(system, s))
continue;
fputs(buf, stdout);
fflush(stdout);
}
exit(0);
}
cleanup(code)
int code;
{
exit(code);
}