define='HAVE_KRB5_KEYBLOCK_IN_CREDS')
conf.CHECK_STRUCTURE_MEMBER('krb5_creds', 'session', headers='krb5.h',
define='HAVE_KRB5_SESSION_IN_CREDS')
+ if conf.CHECK_STRUCTURE_MEMBER('krb5_ticket', 'enc_part.enctype', headers='krb5.h') and conf.CHECK_STRUCTURE_MEMBER('krb5_ticket', 'enc_part.kvno', headers='krb5.h'):
+ conf.DEFINE('KRB5_TICKET_HAS_KEYINFO', '1')
+ conf.CHECK_STRUCTURE_MEMBER('krb5_ap_req', 'ticket', headers='krb5.h',
+ define='HAVE_TICKET_POINTER_IN_KRB5_AP_REQ')
+
conf.CHECK_TYPE('krb5_encrypt_block', headers='krb5.h')
conf.CHECK_CODE('''
krb5_context ctx;
headers='krb5.h stdlib.h', lib='krb5',
addmain=False, cflags='-Werror',
msg="Checking whether krb5_enctype_to_string takes krb5_context argument")
+ conf.CHECK_CODE('''
+int main(void) {
+krb5_context ctx = NULL;
+krb5_principal princ = NULL;
+const char *str = krb5_princ_realm(ctx, princ)->data;
+return 0;
+}''',
+ 'HAVE_KRB5_PRINC_REALM',
+ headers='krb5.h', lib='krb5',
+ addmain=False,
+ msg="Checking whether the macro krb5_princ_realm is defined")
+ if conf.CHECK_CODE('''krb5_verify_checksum(0, 0, 0, 0, 0, 0, 0);''',
+ 'KRB5_VERIFY_CHECKSUM_ARGS',
+ headers='krb5.h', lib='krb5',
+ msg="Checking whether krb5_verify_checksum takes 7 arguments"):
+ conf.DEFINE('KRB5_VERIFY_CHECKSUM_ARGS', '7')
+ else:
+ conf.DEFINE('KRB5_VERIFY_CHECKSUM_ARGS', '6')
+
conf.DEFINE('HAVE_KRB5', '1')
else: