diff --git a/daemons/ipa-kdb/ipa_kdb.c b/daemons/ipa-kdb/ipa_kdb.c index c0f1e276c..b11153ecc 100644 --- a/daemons/ipa-kdb/ipa_kdb.c +++ b/daemons/ipa-kdb/ipa_kdb.c @@ -709,7 +709,9 @@ kdb_vftabl kdb_function_table = { }; #endif -#if (KRB5_KDB_DAL_MAJOR_VERSION == 6) && defined(HAVE_KDB_FREEPRINCIPAL_EDATA) +#if ((KRB5_KDB_DAL_MAJOR_VERSION == 6) || \ + (KRB5_KDB_DAL_MAJOR_VERSION == 7)) && \ + defined(HAVE_KDB_FREEPRINCIPAL_EDATA) kdb_vftabl kdb_function_table = { .maj_ver = KRB5_KDB_DAL_MAJOR_VERSION, .min_ver = 1, @@ -742,7 +744,8 @@ kdb_vftabl kdb_function_table = { }; #endif -#if (KRB5_KDB_DAL_MAJOR_VERSION != 5) && (KRB5_KDB_DAL_MAJOR_VERSION != 6) +#if (KRB5_KDB_DAL_MAJOR_VERSION != 5) && \ + (KRB5_KDB_DAL_MAJOR_VERSION != 6) && \ + (KRB5_KDB_DAL_MAJOR_VERSION != 7) #error unsupported DAL major version #endif - diff --git a/daemons/ipa-kdb/ipa_kdb.h b/daemons/ipa-kdb/ipa_kdb.h index 72573a61a..be2f45752 100644 --- a/daemons/ipa-kdb/ipa_kdb.h +++ b/daemons/ipa-kdb/ipa_kdb.h @@ -326,6 +326,10 @@ krb5_error_code ipadb_check_allowed_to_delegate(krb5_context kcontext, void ipadb_audit_as_req(krb5_context kcontext, krb5_kdc_req *request, +#if (KRB5_KDB_DAL_MAJOR_VERSION == 7) + const krb5_address *local_addr, + const krb5_address *remote_addr, +#endif krb5_db_entry *client, krb5_db_entry *server, krb5_timestamp authtime, diff --git a/daemons/ipa-kdb/ipa_kdb_audit_as.c b/daemons/ipa-kdb/ipa_kdb_audit_as.c index 5f59bf33a..c68a67aa2 100644 --- a/daemons/ipa-kdb/ipa_kdb_audit_as.c +++ b/daemons/ipa-kdb/ipa_kdb_audit_as.c @@ -26,6 +26,10 @@ void ipadb_audit_as_req(krb5_context kcontext, krb5_kdc_req *request, +#if (KRB5_KDB_DAL_MAJOR_VERSION == 7) + const krb5_address *local_addr, + const krb5_address *remote_addr, +#endif krb5_db_entry *client, krb5_db_entry *server, krb5_timestamp authtime, diff --git a/freeipa.spec.in b/freeipa.spec.in index 4eac379ff..cb71fd7ae 100644 --- a/freeipa.spec.in +++ b/freeipa.spec.in @@ -86,9 +86,13 @@ BuildRequires: openldap-devel # For KDB DAL version, make explicit dependency so that increase of version # will cause the build to fail due to unsatisfied dependencies. # DAL version change may cause code crash or memory leaks, it is better to fail early. +%if 0%{?fedora} > 27 +BuildRequires: krb5-kdb-version = 7.0 +%else %if 0%{?fedora} > 25 BuildRequires: krb5-kdb-version = 6.1 %endif +%endif BuildRequires: krb5-devel >= %{krb5_version} # 1.27.4: xmlrpc_curl_xportparms.gssapi_delegation BuildRequires: xmlrpc-c-devel >= 1.27.4