home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
rtsi.com
/
2014.01.www.rtsi.com.tar
/
www.rtsi.com
/
OS9
/
OSK
/
TELECOM
/
UUCP_Blars.lzh
/
uustat.c
< prev
next >
Wrap
C/C++ Source or Header
|
1991-09-08
|
2KB
|
134 lines
#include <stdio.h>
#include <strings.h>
#include <modes.h>
#include "uucp.h"
int sys_files, sys_status;
char s_spooldir[250], s_libdir[250];
char s_logfile[250];
main(argc, argv)
int argc;
char *argv[];
{
int i, j;
int snum;
sys_files = sys_status = FALSE;
snum = 0;
for (i = 1; i < argc; i++)
if (argv[i][0] == '-')
for (j = 1; j < strlen(argv[i]); j++)
switch (tolower(argv[i][j])) {
case '?':
usage();
exit(1);
case 's':
sys_files = TRUE;
break;
case 'm':
sys_status = TRUE;
break;
default:
usage();
exit(_errmsg(1, "unknown option '%c'\n", argv[i][j]));
}
else
snum++;
if (!sys_files && !sys_status) {
usage();
exit(_errmsg(1, "no option given\n"));
}
setup();
if (sys_files) {
if (snum == 0) {
usage();
exit(_errmsg(1, "no system name given\n"));
}
for (i = 1; i < argc; i++)
if (argv[i][0] != '-')
files(argv[i]);
}
if (sys_status)
if (snum == 0)
status(NULL);
else
for (i = 1; i < argc; i++)
if (argv[i][0] != '-')
status(argv[i]);
}
usage()
{
}
setup()
{
strcpy(s_spooldir, SPOOLDIR);
strcpy(s_spooldir, LIBDIR);
if (chdir(s_spooldir) == -1)
cant(s_spooldir);
strcpy(s_logfile, ".LOG/logfile");
}
files(rmtname)
char *rmtname;
{
DIR *dp;
struct dentry
int fn, len, i;
char cname[40], tmp[132];
static DIR *dirp = NULL;
struct direct *dp;
if ((dirp = opendir(s_spooldir)) == (DIR *) NULL)
exit(_errmsg(errno, "couldn't open dir %s\n", s_spooldir));
sprintf(cname, "C.%.6s", rmtname);
len = strlen(cname);
while ((dp = readdir(dirp)) != (struct direct *) NULL) {
if (!strncmp(cname, dp->d_name, len)) {
strcpy(cfile, dp->d_name);
if ((fpw = fopen(cfile, "r")) == NULL)
exit(_errmsg(errno, "can't open '%s'\n", cfile));
}
while (fgets(line, BUFSIZ, fpw) != NULL)
sscanf(&line[2], "%s ", fromfile);
for (i = 0, cp = line; *cp != '\0'; i++, cp++)
if (strncmp(cp, "0666", 4) == SAME)
break;
cp += 4;
*cp = '\0';
strcpy(tofile, line);
id[0] = '\0';
if (cp = index(line+3, ' '))
if (cp = index(cp+1, ' '))
sscanf(cp+1, "%s ", id); /* ID */
}
}