summaryrefslogtreecommitdiffstats
path: root/lib/libskey/skey.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libskey/skey.h')
-rw-r--r--lib/libskey/skey.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/lib/libskey/skey.h b/lib/libskey/skey.h
new file mode 100644
index 0000000..e62d507
--- /dev/null
+++ b/lib/libskey/skey.h
@@ -0,0 +1,60 @@
+#ifndef _SKEY_H_
+#define _SKEY_H_
+
+#include <sys/cdefs.h>
+
+/* Server-side data structure for reading keys file during login */
+struct skey {
+ FILE *keyfile;
+ char buf[256];
+ char *logname;
+ int n;
+ char *seed;
+ char *val;
+ long recstart; /*needed so reread of buffer is efficient*/
+};
+
+#ifdef _SKEY_INTERNAL
+/* Client-side structure for scanning data stream for challenge */
+struct mc {
+ char buf[256];
+ int skip;
+ int cnt;
+};
+
+#define atob8 _sk_atob8
+#define btoa8 _sk_btoa8
+#define btoe _sk_btoe
+#define etob _sk_etob
+#define f _sk_f
+#define htoi _sk_htoi
+#define keycrunch _sk_keycrunch
+#define put8 _sk_put8
+#define readpass _sk_readpass
+#define rip _sk_rip
+#define sevenbit _sk_sevenbit
+
+void f __P((char *x));
+int keycrunch __P((char *result,const char *seed,const char *passwd));
+char *btoe __P((char *engout,char *c));
+char *put8 __P((char *out,char *s));
+int atob8 __P((char *out, char *in));
+int btoa8 __P((char *out, char *in));
+int htoi __P((char c));
+int etob __P((char *out,char *e));
+void sevenbit __P((char *s));
+char *readpass __P((char *buf, int n));
+void rip __P((char *buf));
+#endif /* _SKEY_INTERNAL */
+
+/* Simplified application programming interface. */
+#include <pwd.h>
+int skeylookup __P((struct skey *mp, const char *name));
+int skeyverify __P((struct skey *mp, char *response));
+int skeychallenge __P((struct skey *mp, const char *name, char *challenge));
+int skeyinfo __P((struct skey *mp, const char* name, char *ss));
+int skeyaccess __P((char *user, const char *port, const char *host, const char *addr));
+char *skey_getpass __P((const char *prompt, struct passwd * pwd, int pwok));
+const char *skey_crypt __P((char *pp, char *salt, struct passwd *pwd, int pwok));
+
+#endif /* _SKEY_H_ */
OpenPOWER on IntegriCloud