/* * This file is part of the UCB release of Plan 9. It is subject to the license * terms in the LICENSE file found in the top-level directory of this * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No * part of the UCB release of Plan 9, including this file, may be copied, * modified, propagated, or distributed except according to the terms contained * in the LICENSE file. */ #pragma lib "./lib.$O.a" enum{ PASSLEN = 10, MAXNETCHAL = 100000, /* max securenet challenge */ Maxpath = 256,}; #define KEYDB "/mnt/keys"#define NETKEYDB "/mnt/netkeys"#define KEYDBBUF (sizeof NETKEYDB) /* enough for any keydb prefix */#define AUTHLOG "auth" enum{ Nemail = 10, Plan9 = 1, Securenet = 2,}; typedef struct{ char *user; char *postid; char *name; char *dept; char *email[Nemail];} Acctbio; typedef struct { char *keys; char *msg; char *who; Biobuf *b;} Fs; extern Fs fs[3]; void checksum(char*, char*);void error(char*, ...);void fail(char*);char* findkey(char*, char*, char*);char* findsecret(char*, char*, char*);int getauthkey(char*);long getexpiration(char *db, char *u);void getpass(char*, char*, int, int);int getsecret(int, char*);int keyfmt(Fmt*);void logfail(char*);int netcheck(void*, long, char*);char* netdecimal(char*);char* netresp(char*, long, char*);char* okpasswd(char*);int querybio(char*, char*, Acctbio*);void rdbio(char*, char*, Acctbio*);int readarg(int, char*, int);int readfile(char*, char*, int);void readln(char*, char*, int, int);long readn(int, void*, long);char* secureidcheck(char*, char*);char* setkey(char*, char*, char*);char* setsecret(char*, char*, char*);int smartcheck(void*, long, char*);void succeed(char*);void wrbio(char*, Acctbio*);int writefile(char*, char*, int); #pragma varargck type "K" char*
/*
* This file is part of the UCB release of Plan 9. It is subject to the license
* terms in the LICENSE file found in the top-level directory of this
* distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
* part of the UCB release of Plan 9, including this file, may be copied,
* modified, propagated, or distributed except according to the terms contained
* in the LICENSE file.
*/
#pragma lib "./lib.$O.a"
enum{
PASSLEN = 10,
MAXNETCHAL = 100000, /* max securenet challenge */
Maxpath = 256,
};
#define KEYDB "/mnt/keys"
#define NETKEYDB "/mnt/netkeys"
#define KEYDBBUF (sizeof NETKEYDB) /* enough for any keydb prefix */
#define AUTHLOG "auth"
enum
{
Nemail = 10,
Plan9 = 1,
Securenet = 2,
};
typedef struct
{
char *user;
char *postid;
char *name;
char *dept;
char *email[Nemail];
} Acctbio;
typedef struct {
char *keys;
char *msg;
char *who;
Biobuf *b;
} Fs;
extern Fs fs[3];
void checksum(char*, char*);
void error(char*, ...);
void fail(char*);
char* findkey(char*, char*, char*);
char* findsecret(char*, char*, char*);
int getauthkey(char*);
long getexpiration(char *db, char *u);
void getpass(char*, char*, int, int);
int getsecret(int, char*);
int keyfmt(Fmt*);
void logfail(char*);
int netcheck(void*, long, char*);
char* netdecimal(char*);
char* netresp(char*, long, char*);
char* okpasswd(char*);
int querybio(char*, char*, Acctbio*);
void rdbio(char*, char*, Acctbio*);
int readarg(int, char*, int);
int readfile(char*, char*, int);
void readln(char*, char*, int, int);
long readn(int, void*, long);
char* secureidcheck(char*, char*);
char* setkey(char*, char*, char*);
char* setsecret(char*, char*, char*);
int smartcheck(void*, long, char*);
void succeed(char*);
void wrbio(char*, Acctbio*);
int writefile(char*, char*, int);
#pragma varargck type "K" char*