aboutsummaryrefslogtreecommitdiff
path: root/eBones/kdb/krb_kdb_utils.c
diff options
context:
space:
mode:
authorMark Murray <markm@FreeBSD.org>1995-09-07 21:39:00 +0000
committerMark Murray <markm@FreeBSD.org>1995-09-07 21:39:00 +0000
commitd79d4a7ced1f3d1e2960b5cb1ebc6c2774b80ba0 (patch)
tree96ff3578d62372822240f11a1567e45b880f3910 /eBones/kdb/krb_kdb_utils.c
parent0e1815bb542d83bde9aed4912268f730d1637808 (diff)
Major cleanup of eBones code:
- Get all functions prototyped or at least defined before use. - Make code compile (Mostly) clean with -Wall set - Start to reduce the degree to which DES aka libdes is built in. - get all functions to the same uniform standard of definition: int foo(a, b) int a; int *b; { : } - fix numerous bugs exposed by above processes. Note - this replaces the previous work which used an unpopular function definition style.
Notes
Notes: svn path=/head/; revision=10610
Diffstat (limited to 'eBones/kdb/krb_kdb_utils.c')
-rw-r--r--eBones/kdb/krb_kdb_utils.c59
1 files changed, 34 insertions, 25 deletions
diff --git a/eBones/kdb/krb_kdb_utils.c b/eBones/kdb/krb_kdb_utils.c
index 275cc3997513..0256348e2b77 100644
--- a/eBones/kdb/krb_kdb_utils.c
+++ b/eBones/kdb/krb_kdb_utils.c
@@ -20,17 +20,20 @@ static char rcsid[] =
#endif lint
#endif
+#include <des.h>
+#include <krb.h>
+#include <krb_db.h>
+#include <kdc.h>
#include <stdio.h>
-#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/file.h>
-#include <krb.h>
-#include <krb_db.h>
-#include <kdc.h>
-long kdb_get_master_key(int prompt, C_Block master_key,
- Key_schedule master_key_sched)
+long
+kdb_get_master_key(prompt, master_key, master_key_sched)
+ int prompt;
+ C_Block master_key;
+ Key_schedule master_key_sched;
{
int kfile;
@@ -39,7 +42,7 @@ long kdb_get_master_key(int prompt, C_Block master_key,
placebo_read_password(master_key,
"\nEnter Kerberos master key: ", 0);
#else
- des_read_password((C_Block *)master_key,
+ des_read_password((des_cblock *)master_key,
"\nEnter Kerberos master key: ", 0);
#endif
printf ("\n");
@@ -57,33 +60,21 @@ long kdb_get_master_key(int prompt, C_Block master_key,
}
#ifndef NOENCRYPTION
- key_sched((C_Block *)master_key,master_key_sched);
+ key_sched((des_cblock *)master_key,master_key_sched);
#endif
return (0);
}
-/* The old algorithm used the key schedule as the initial vector which
- was byte order depedent ... */
-
-void kdb_encrypt_key (C_Block in, C_Block out, C_Block master_key,
- Key_schedule master_key_sched, int e_d_flag)
-{
-
-#ifdef NOENCRYPTION
- bcopy(in, out, sizeof(C_Block));
-#else
- pcbc_encrypt((C_Block *)in,(C_Block *)out,(long)sizeof(C_Block),
- master_key_sched,(C_Block *)master_key, e_d_flag);
-#endif
-}
-
/* The caller is reasponsible for cleaning up the master key and sched,
even if we can't verify the master key */
/* Returns master key version if successful, otherwise -1 */
-long kdb_verify_master_key (C_Block master_key, Key_schedule master_key_sched,
- FILE *out)
+long
+kdb_verify_master_key (master_key, master_key_sched, out)
+ C_Block master_key;
+ Key_schedule master_key_sched;
+ FILE *out; /* setting this to non-null be do output */
{
C_Block key_from_db;
Principal principal_data[1];
@@ -137,3 +128,21 @@ long kdb_verify_master_key (C_Block master_key, Key_schedule master_key_sched,
return (master_key_version);
}
+
+/* The old algorithm used the key schedule as the initial vector which
+ was byte order depedent ... */
+
+void
+kdb_encrypt_key (in, out, master_key, master_key_sched, e_d_flag)
+ C_Block in, out, master_key;
+ Key_schedule master_key_sched;
+ int e_d_flag;
+{
+
+#ifdef NOENCRYPTION
+ bcopy(in, out, sizeof(C_Block));
+#else
+ pcbc_encrypt((des_cblock*)in,(des_cblock*)out,(long)sizeof(C_Block),
+ master_key_sched,(des_cblock*)master_key,e_d_flag);
+#endif
+}