|
|
1.1 ! root 1: #include <stdio.h> ! 2: #include <ctype.h> ! 3: #include <string.h> ! 4: #include <sys/filio.h> ! 5: #include <sys/ttyio.h> ! 6: #include <ipc.h> ! 7: #include <regexp.h> ! 8: #include <sys/types.h> ! 9: #include <sys/times.h> ! 10: #include <time.h> ! 11: ! 12: #define MAX_FAILURES 3 /* default max login/data failures */ ! 13: #define KEY_FILE "/usr/net/authmgr.keys" ! 14: #define CONTROL_FILE "/usr/net/authmgr.conf" ! 15: ! 16: /* disallow - information on who we refuse to authenticate */ ! 17: struct disallow { ! 18: struct disallow* next; ! 19: char logname[10]; ! 20: }; ! 21: ! 22: struct secmap { ! 23: struct secmap* next; ! 24: regexp *prog; /* the regular expression to match */ ! 25: char *secid; /* the security ID to use if it matches */ ! 26: }; ! 27: ! 28: struct destmap { ! 29: struct destmap* next; ! 30: regexp *prog; /* the regular expression to match */ ! 31: char *dest; /* the security ID to use if it matches */ ! 32: }; ! 33: ! 34: struct keytypes { ! 35: char *s; ! 36: char *(*chal)(); /* proc to compute a challenge */ ! 37: int (*comp)(); /* proc to test a response's validity */ ! 38: }; ! 39: ! 40: /* keyinfo -- information from the key file */ ! 41: struct keyinfo { ! 42: struct keytypes* kt; ! 43: char logname[12]; ! 44: char key[64]; ! 45: long expire; /* the integer yyyymmdd */ ! 46: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.