/* libkdb.spec */
krb5_error_code krb5_db_set_name
PROTOTYPE((char * ));
-krb5_error_code krb5_db_set_nonblocking
- PROTOTYPE((krb5_boolean,
- krb5_boolean * ));
krb5_error_code krb5_db_init
PROTOTYPE((void ));
krb5_error_code krb5_db_fini
krb5_pointer ));
krb5_error_code krb5_db_verify_master_key
PROTOTYPE((krb5_principal, krb5_keyblock *, krb5_encrypt_block *));
-krb5_error_code krb5_db_fetch_mkey
- PROTOTYPE((krb5_principal, krb5_encrypt_block *, krb5_boolean,
- krb5_boolean, krb5_keyblock * ));
krb5_error_code krb5_db_store_mkey PROTOTYPE((char *,
krb5_principal,
krb5_keyblock *));
krb5_error_code krb5_db_unlock
PROTOTYPE ((void ));
-/* XXX I give up.... the following int should be a krb5_boolean, but */
- /* it causes gcc to give up and die. */
+/* need to play games here, since we take a pointer and the real thing,
+ and it might be narrow. */
+#ifdef NARROW_PROTOTYPES
+krb5_error_code krb5_db_set_nonblocking
+ PROTOTYPE((krb5_boolean,
+ krb5_boolean * ));
+#else
+krb5_error_code krb5_db_set_nonblocking
+ PROTOTYPE((int, /* krb5_boolean */
+ krb5_boolean * ));
+#endif /* NARROW_PROTOTYPES */
+#include <krb5/widen.h>
+
+/* Only put things which don't have pointers to the narrow types in this
+ section */
+
krb5_boolean krb5_db_set_lockmode
- PROTOTYPE((int ));
+ PROTOTYPE((krb5_boolean ));
+krb5_error_code krb5_db_fetch_mkey
+ PROTOTYPE((krb5_principal, krb5_encrypt_block *, krb5_boolean,
+ krb5_boolean, krb5_keyblock * ));
+#include <krb5/narrow.h>
#define KRB5_KDB_DEF_FLAGS (KRB5_KDB_DISALLOW_DUP_SKEY)
/* libkdb.spec */
krb5_error_code krb5_dbm_db_set_name PROTOTYPE((char * ));
-krb5_error_code krb5_dbm_db_set_nonblocking PROTOTYPE((krb5_boolean,
- krb5_boolean * ));
krb5_error_code krb5_dbm_db_init PROTOTYPE((void ));
krb5_error_code krb5_dbm_db_fini PROTOTYPE((void ));
krb5_error_code krb5_dbm_db_get_age PROTOTYPE((char *, time_t * ));
PROTOTYPE((krb5_error_code (*) PROTOTYPE((krb5_pointer,
krb5_db_entry *)),
krb5_pointer ));
+
+/* need to play games here, since we take a pointer and the real thing,
+ and it might be narrow. */
+#ifdef NARROW_PROTOTYPES
+krb5_error_code krb5_dbm_db_set_nonblocking PROTOTYPE((krb5_boolean,
+ krb5_boolean * ));
+#else
+krb5_error_code krb5_dbm_db_set_nonblocking PROTOTYPE((int, /* krb5_boolean */
+ krb5_boolean * ));
+#endif /* NARROW_PROTOTYPES */
+
#endif /* KRB5_KDB5_DBM__ */
} *krb5_keytab;
+/* widen prototypes, if needed */
+#include <krb5/widen.h>
+
typedef struct _krb5_kt_ops {
char *prefix;
/* routines always present */
krb5_error_code (*remove) PROTOTYPE((krb5_keytab,
krb5_keytab_entry *));
} krb5_kt_ops;
+
+/* and back to narrow */
+#include <krb5/narrow.h>
+
#define krb5_kt_get_name(keytab, name, namelen) (*(keytab)->ops->get_name)(keytab,name,namelen)
#define krb5_kt_close(keytab) (*(keytab)->ops->close)(keytab)
#define krb5_kt_get_entry(keytab, principal, vno, entry) (*(keytab)->ops->get)(keytab, principal, vno, entry)