version 1.3, 1996/08/30 11:39:36 |
version 1.4, 1996/12/08 13:29:19 |
|
|
#include "finger.h" |
#include "finger.h" |
|
|
time_t now; |
time_t now; |
int lflag, sflag, mflag, pplan; |
int lflag, sflag, mflag, pplan, Mflag; |
char tbuf[1024]; |
char tbuf[1024]; |
|
|
int loginlist __P((void)); |
int loginlist __P((void)); |
|
|
{ |
{ |
extern int optind; |
extern int optind; |
int ch; |
int ch; |
|
char domain[256]; |
time_t time(); |
time_t time(); |
|
|
while ((ch = getopt(argc, argv, "lmps")) != EOF) |
while ((ch = getopt(argc, argv, "lmMps")) != EOF) |
switch(ch) { |
switch(ch) { |
case 'l': |
case 'l': |
lflag = 1; /* long format */ |
lflag = 1; /* long format */ |
|
|
case 'm': |
case 'm': |
mflag = 1; /* force exact match of names */ |
mflag = 1; /* force exact match of names */ |
break; |
break; |
|
case 'M': |
|
Mflag = 1; /* allow name matching */ |
|
break; |
case 'p': |
case 'p': |
pplan = 1; /* don't show .plan/.project */ |
pplan = 1; /* don't show .plan/.project */ |
break; |
break; |
|
|
case '?': |
case '?': |
default: |
default: |
(void)fprintf(stderr, |
(void)fprintf(stderr, |
"usage: finger [-lmps] [login ...]\n"); |
"usage: finger [-lmMps] [login ...]\n"); |
exit(1); |
exit(1); |
} |
} |
argc -= optind; |
argc -= optind; |
argv += optind; |
argv += optind; |
|
|
|
/* if a domainname is set, increment mflag. */ |
|
if ((getdomainname(&domain, sizeof(domain)) == 0) && domain[0]) |
|
mflag++; |
|
|
(void)time(&now); |
(void)time(&now); |
setpassent(1); |
setpassent(1); |
if (!*argv) { |
if (!*argv) { |
|
|
* traverse the list of possible login names and check the login name |
* traverse the list of possible login names and check the login name |
* and real name against the name specified by the user. |
* and real name against the name specified by the user. |
*/ |
*/ |
if (mflag) { |
if ((mflag - Mflag) > 0) { |
for (i = 0; i < argc; i++) |
for (i = 0; i < argc; i++) |
if (used[i] >= 0 && (pw = getpwnam(argv[i]))) { |
if (used[i] >= 0 && (pw = getpwnam(argv[i]))) { |
enter_person(pw); |
enter_person(pw); |