--- /dev/null
+/*
+ * $Source$
+ * $Author$
+ * $Id$
+ *
+ * Copyright 1990 by the Massachusetts Institute of Technology.
+ *
+ * For copying and distribution information, please see the file
+ * <krb5/copyright.h>.
+ *
+ * definitions to un-widen prototype types...see <krb5/widen.h>
+ * and <krb5/base-defs.h>
+ */
+
+#ifndef NARROW_PROTOTYPES
+
+/* only needed if not narrow, i.e. wide */
+
+#undef krb5_boolean
+#undef krb5_msgtype
+#undef krb5_kvno
+
+#undef krb5_addrtype
+#undef krb5_keytype
+#undef krb5_enctype
+#undef krb5_cksumtype
+#undef krb5_authdatatype
+
+#endif /* not NARROW_PROTOTYPES */
--- /dev/null
+/*
+ * $Source$
+ * $Author$
+ * $Id$
+ *
+ * Copyright 1990 by the Massachusetts Institute of Technology.
+ *
+ * For copying and distribution information, please see the file
+ * <krb5/copyright.h>.
+ *
+ * definitions to widen prototype types temporarily...also see <krb5/narrow.h>
+ * and <krb5/base-defs.h>
+ */
+
+#ifndef NARROW_PROTOTYPES
+
+/* WARNING ! ! !
+ Only include declarations in source files between this file and narrow.h
+ if none of the functions declared therein uses pointers to any of the
+ narrowed types. If you're not careful, you could widen the pointed-to
+ object, which is WRONG.
+ */
+
+/* only needed if not narrow, i.e. wide */
+
+#define krb5_boolean int
+#define krb5_msgtype int
+#define krb5_kvno int
+
+#define krb5_addrtype unsigned int
+#define krb5_keytype unsigned int
+#define krb5_enctype unsigned int
+#define krb5_cksumtype unsigned int
+#define krb5_authdatatype unsigned int
+
+#endif /* not NARROW_PROTOTYPES */