summaryrefslogtreecommitdiffstats
path: root/lib/libskey/skey.h
diff options
context:
space:
mode:
authormillert <millert@openbsd.org>2002-05-16 03:50:42 +0000
committermillert <millert@openbsd.org>2002-05-16 03:50:42 +0000
commitfc7f3601ee932ec9c65cea8778ce19514e39d038 (patch)
tree6f10865f714d48be4d9706cdd4c23f5351446c48 /lib/libskey/skey.h
parentRe-enable RNG on the 5601 (it needs to be disabled on some 5805 variants, (diff)
downloadwireguard-openbsd-fc7f3601ee932ec9c65cea8778ce19514e39d038.tar.xz
wireguard-openbsd-fc7f3601ee932ec9c65cea8778ce19514e39d038.zip
Change S/Key stuff from using a flat file (/etc/skeykeys) to a directory
where each user gets their own file, which is owned by that user. An old S/Key database may be converted by running "skeyinit -C" as root. Programs that need to access the S/Key database no longer need to be setuid root. They must now be setgid auth instead.
Diffstat (limited to 'lib/libskey/skey.h')
-rw-r--r--lib/libskey/skey.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/libskey/skey.h b/lib/libskey/skey.h
index 37d9bd269fe..750dd8095f2 100644
--- a/lib/libskey/skey.h
+++ b/lib/libskey/skey.h
@@ -10,23 +10,22 @@
*
* Main client header
*
- * $OpenBSD: skey.h,v 1.17 2002/02/16 21:27:28 millert Exp $
+ * $OpenBSD: skey.h,v 1.18 2002/05/16 03:50:42 millert Exp $
*/
#ifndef _SKEY_H_
#define _SKEY_H_ 1
-#include <sys/cdefs.h>
+#include <dirent.h>
/* Server-side data structure for reading keys file during login */
struct skey {
FILE *keyfile;
+ DIR *keydir;
char *logname;
char *seed;
char *val;
- int n;
- int len;
- long recstart; /* needed so reread of buffer is efficient */
+ unsigned int n;
char buf[256];
};
@@ -61,6 +60,9 @@ struct mc {
/* Location of random file for bogus challenges */
#define _SKEY_RAND_FILE_PATH_ "/var/db/host.random"
+/* Directory for S/Key per-user files */
+#define _PATH_SKEYDIR "/etc/skey"
+
__BEGIN_DECLS
void f(char *);
int keycrunch(char *, char *, char *);