summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/wscript24
1 files changed, 24 insertions, 0 deletions
diff --git a/source3/wscript b/source3/wscript
index 3454558778..709651fa7f 100644
--- a/source3/wscript
+++ b/source3/wscript
@@ -570,6 +570,11 @@ krb5_get_credentials_for_user krb5_get_host_realm krb5_free_host_realm''',
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;
@@ -616,6 +621,25 @@ return 0;
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: