AS_IF([test x$enable_apparmor = xno],
[have_apparmor=no],
[
- PKG_CHECK_MODULES([APPARMOR], [libapparmor >= 2.10],
+ PKG_CHECK_MODULES([APPARMOR], [libapparmor >= 2.8.95],
[have_apparmor=yes], [have_apparmor=no])
+ PKG_CHECK_MODULES([APPARMOR_2_10], [libapparmor >= 2.10],
+ [have_apparmor_2_10=yes], [have_apparmor_2_10=no])
AS_IF([test x$enable_apparmor = xauto && test x$have_apparmor = xno],
[AC_MSG_WARN([Sufficiently new AppArmor library not found])])
AS_IF([test x$have_apparmor = xyes],
[AC_DEFINE([HAVE_APPARMOR], [1], [AppArmor Support])])
+AS_IF([test x$have_apparmor_2_10 = xyes],
+ [AC_DEFINE([HAVE_APPARMOR_2_10], [1],
+ [Define if libapparmor is version 2.10 or later])])
# inotify checks
if test x$enable_inotify = xno ; then
#include <string.h>
#include <sys/types.h>
-#if defined(HAVE_APPARMOR) && defined(DBUS_TEST_APPARMOR_ACTIVATION)
+#if defined(HAVE_APPARMOR_2_10) && defined(DBUS_TEST_APPARMOR_ACTIVATION)
#include <sys/apparmor.h>
#endif
setup (Fixture *f,
gconstpointer context G_GNUC_UNUSED)
{
-#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && !defined(HAVE_APPARMOR)
+#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && !defined(HAVE_APPARMOR_2_10)
- g_test_skip ("AppArmor support not compiled");
+ g_test_skip ("AppArmor support not compiled or AppArmor 2.10 unavailable");
return;
#else
/* systemd starts the activatable service. */
-#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && defined(HAVE_APPARMOR)
+#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && defined(HAVE_APPARMOR_2_10)
/* The use of 42 here is arbitrary, see setup(). */
if (aa_change_hat (bus_name, 42) != 0)
g_error ("Unable to change profile to ...//^%s: %s",
f->activated_name = dbus_bus_get_unique_name (f->activated);
take_well_known_name (f, f->activated, bus_name);
-#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && defined(HAVE_APPARMOR)
+#if defined(DBUS_TEST_APPARMOR_ACTIVATION) && defined(HAVE_APPARMOR_2_10)
if (aa_change_hat (NULL, 42) != 0)
g_error ("Unable to change back to initial profile: %s",
g_strerror (errno));