summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEzra Peisach <epeisach@mit.edu>2001-06-21 13:46:15 +0000
committerEzra Peisach <epeisach@mit.edu>2001-06-21 13:46:15 +0000
commit338fb12f3482242fe85217339ea30c65bb189aa1 (patch)
treec2e57086d09aae2971f1881c88f98bc7e256f731 /src
parent6154990ceab9d543f916595cfef85787a7a3cc9a (diff)
downloadkrb5-338fb12f3482242fe85217339ea30c65bb189aa1.tar.gz
krb5-338fb12f3482242fe85217339ea30c65bb189aa1.tar.xz
krb5-338fb12f3482242fe85217339ea30c65bb189aa1.zip
* kdc_preauth.c: Include prototypes for mit_des_fixup_key_parity
and mit_des_is_weak_key here as no other "public" header file defines it. Needed for return_sam_data() code. * configure.in: Test for unistd.h and existance of swab() prototype. * kerberos_v4.c: If swab() prototype needed, provide. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13446 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/kdc/ChangeLog10
-rw-r--r--src/kdc/configure.in9
-rw-r--r--src/kdc/kdc_preauth.c9
-rw-r--r--src/kdc/kerberos_v4.c4
4 files changed, 30 insertions, 2 deletions
diff --git a/src/kdc/ChangeLog b/src/kdc/ChangeLog
index deaa01523..6795ab555 100644
--- a/src/kdc/ChangeLog
+++ b/src/kdc/ChangeLog
@@ -1,3 +1,13 @@
+2001-06-21 Ezra Peisach <epeisach@mit.edu>
+
+ * kdc_preauth.c: Include prototypes for mit_des_fixup_key_parity
+ and mit_des_is_weak_key here as no other "public" header file
+ defines it. Needed for return_sam_data() code.
+
+ * configure.in: Test for unistd.h and existance of swab() prototype.
+
+ * kerberos_v4.c: If swab() prototype needed, provide.
+
2001-06-19 Tom Yu <tlyu@mit.edu>
* kdc_util.c (ktypes2str): New function; construct a string
diff --git a/src/kdc/configure.in b/src/kdc/configure.in
index dfcf9ea58..c872b49d4 100644
--- a/src/kdc/configure.in
+++ b/src/kdc/configure.in
@@ -1,8 +1,13 @@
AC_INIT(main.c)
CONFIG_RULES
AC_PROG_INSTALL
-AC_CHECK_HEADERS(syslog.h stdarg.h sys/select.h sys/sockio.h)
-AC_CHECK_FUNCS(openlog syslog closelog strftime vsprintf)
+AC_CHECK_HEADERS(syslog.h stdarg.h sys/select.h sys/sockio.h unistd.h)
+AC_CHECK_FUNCS(openlog syslog closelog strftime vsprintf swab)
+KRB5_NEED_PROTO([#include <string.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+],swab)
AC_PROG_AWK
KRB5_AC_INET6
KRB5_SOCKADDR_SA_LEN
diff --git a/src/kdc/kdc_preauth.c b/src/kdc/kdc_preauth.c
index 926da9ce5..fbc44bde0 100644
--- a/src/kdc/kdc_preauth.c
+++ b/src/kdc/kdc_preauth.c
@@ -59,6 +59,15 @@
#include "adm_proto.h"
#include <syslog.h>
+/* XXX This is ugly and should be in a header file somewhere */
+#ifndef KRB5INT_DES_TYPES_DEFINED
+#define KRB5INT_DES_TYPES_DEFINED
+typedef unsigned char des_cblock[8]; /* crypto-block size */
+#endif
+typedef des_cblock mit_des_cblock;
+extern void mit_des_fixup_key_parity (mit_des_cblock );
+extern int mit_des_is_weak_key (mit_des_cblock );
+
typedef krb5_error_code (*verify_proc)
(krb5_context, krb5_db_entry *client,
krb5_kdc_req *request,
diff --git a/src/kdc/kerberos_v4.c b/src/kdc/kerberos_v4.c
index caf07fba0..67f62dc07 100644
--- a/src/kdc/kerberos_v4.c
+++ b/src/kdc/kerberos_v4.c
@@ -66,6 +66,10 @@
#include <krb_db.h>
#include <kdc.h>
+#ifdef NEED_SWAB_PROTO
+extern void swab(const void *, void *, size_t );
+#endif
+
extern int errno;
static int compat_decrypt_key (krb5_key_data *, C_Block,