xref: /inferno-os/module/secstore.m (revision 728860af799ffd5aa8b3b90576ae582b11b7f5a5)
146439007SCharles.ForsythSecstore: module
246439007SCharles.Forsyth{
346439007SCharles.Forsyth	PATH:	con "/dis/lib/secstore.dis";
446439007SCharles.Forsyth
546439007SCharles.Forsyth	Maxfilesize: con 128*1024;	# default
646439007SCharles.Forsyth	Maxmsg:	con 4096;
746439007SCharles.Forsyth
846439007SCharles.Forsyth	init:		fn();
946439007SCharles.Forsyth	privacy:	fn(): int;
1046439007SCharles.Forsyth	cansecstore:	fn(addr: string, user: string): int;
1146439007SCharles.Forsyth	mkseckey:	fn(pass: string): array of byte;
12aaab9bccSforsyth	connect:		fn(addr: string, user: string, pwhash: array of byte): (ref Dial->Connection, string, string);
13aaab9bccSforsyth	dial:		fn(addr: string): ref Dial->Connection;
14aaab9bccSforsyth	auth:		fn(conn: ref Dial->Connection, user: string, pwhash: array of byte): (string, string);
15aaab9bccSforsyth	sendpin:	fn(conn: ref Dial->Connection, pin: string): int;
16aaab9bccSforsyth	files:		fn(conn: ref Dial->Connection): list of (string, int, string, string, array of byte);
17aaab9bccSforsyth	getfile:	fn(conn: ref Dial->Connection, filename: string, maxsize: int): array of byte;
18aaab9bccSforsyth	remove:	fn(conn: ref Dial->Connection, filename: string): int;
19*728860afSforsyth	putfile:	fn(conn: ref Dial->Connection, filename: string, data: array of byte): int;
20aaab9bccSforsyth	bye:		fn(conn: ref Dial->Connection);
2146439007SCharles.Forsyth
2246439007SCharles.Forsyth	mkfilekey:	fn(pass: string): array of byte;
2346439007SCharles.Forsyth	decrypt:	fn(a: array of byte, key: array of byte): array of byte;
24*728860afSforsyth	encrypt:	fn(a: array of byte, key: array of byte): array of byte;
2546439007SCharles.Forsyth	erasekey:	fn(a: array of byte);
2646439007SCharles.Forsyth
2746439007SCharles.Forsyth	lines:	fn(file: array of byte): list of array of byte;
2846439007SCharles.Forsyth};
29