krb5_const_principal get_principal_from_tkt(krb5_ticket *tkt);
krb5_error_code krb5_locate_kdc(krb5_context ctx, const krb5_data *realm, struct sockaddr **addr_pp, int *naddrs, int get_masters);
krb5_error_code get_kerberos_allowed_etypes(krb5_context context, krb5_enctype **enctypes);
-void free_kerberos_etypes(krb5_context context, krb5_enctype *enctypes);
+krb5_error_code free_kerberos_etypes(krb5_context context, krb5_enctype *enctypes);
#endif /* HAVE_KRB5 */
#endif /* _INCLUDES_H */
__ERROR_XX_UNKNOWN_GET_ENCTYPES_FUNCTIONS
#endif
-#if defined(HAVE_KRB5_FREE_KTYPES)
-void free_kerberos_etypes(krb5_context context, krb5_enctype *enctypes)
+ /* the following is defined as krb5_error_code to keep it from
+ being sucked into proto.h */
+krb5_error_code free_kerberos_etypes(krb5_context context,
+ krb5_enctype *enctypes)
{
- return krb5_free_ktypes(context, enctypes);
-}
+#if defined(HAVE_KRB5_FREE_KTYPES)
+ krb5_free_ktypes(context, enctypes);
#else
-void free_kerberos_etypes(krb5_context context, krb5_enctype *enctypes)
-{
- return free(enctypes);
-}
+ SAFE_FREE(enctypes);
#endif
+ return 0;
+}
#if defined(HAVE_KRB5_AUTH_CON_SETKEY) && !defined(HAVE_KRB5_AUTH_CON_SETUSERUSERKEY)
krb5_error_code krb5_auth_con_setuseruserkey(krb5_context context,