2016-02-13 16:27:50 +08:00
|
|
|
dnl The libvirt nsswitch plugin
|
|
|
|
dnl
|
|
|
|
dnl Copyright (C) 2016 Red Hat, Inc.
|
|
|
|
dnl
|
|
|
|
dnl This library is free software; you can redistribute it and/or
|
|
|
|
dnl modify it under the terms of the GNU Lesser General Public
|
|
|
|
dnl License as published by the Free Software Foundation; either
|
|
|
|
dnl version 2.1 of the License, or (at your option) any later version.
|
|
|
|
dnl
|
|
|
|
dnl This library is distributed in the hope that it will be useful,
|
|
|
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
dnl Lesser General Public License for more details.
|
|
|
|
dnl
|
|
|
|
dnl You should have received a copy of the GNU Lesser General Public
|
|
|
|
dnl License along with this library. If not, see
|
|
|
|
dnl <http://www.gnu.org/licenses/>.
|
|
|
|
dnl
|
|
|
|
|
2016-12-13 01:11:51 +08:00
|
|
|
AC_DEFUN([LIBVIRT_ARG_NSS],[
|
2016-12-22 19:49:51 +08:00
|
|
|
LIBVIRT_ARG_WITH([NSS_PLUGIN],
|
|
|
|
[enable Name Service Switch plugin for resolving guest
|
|
|
|
IP addresses], [check])
|
2016-12-13 01:11:51 +08:00
|
|
|
])
|
2016-02-13 16:27:50 +08:00
|
|
|
|
2016-12-13 01:11:51 +08:00
|
|
|
AC_DEFUN([LIBVIRT_CHECK_NSS],[
|
2016-03-28 02:07:10 +08:00
|
|
|
bsd_nss=no
|
2016-02-13 16:27:50 +08:00
|
|
|
fail=0
|
|
|
|
if test "x$with_nss_plugin" != "xno" ; then
|
2018-08-13 19:40:18 +08:00
|
|
|
if test "x$with_yajl" != "xyes" ; then
|
2016-12-25 20:42:42 +08:00
|
|
|
if test "x$with_nss_plugin" = "xyes" ; then
|
2018-08-13 19:40:18 +08:00
|
|
|
AC_MSG_ERROR([Can't build nss plugin without yajl])
|
2016-12-25 20:42:42 +08:00
|
|
|
else
|
|
|
|
with_nss_plugin=no
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$with_network" != "xyes" ; then
|
|
|
|
if test "x$with_nss_plugin" = "xyes" ; then
|
2017-07-07 23:37:29 +08:00
|
|
|
AC_MSG_ERROR([Can't build nss plugin without network])
|
2016-12-25 20:42:42 +08:00
|
|
|
else
|
|
|
|
with_nss_plugin=no
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$with_nss_plugin" != "xno" ; then
|
|
|
|
AC_CHECK_HEADERS([nss.h], [
|
|
|
|
with_nss_plugin=yes
|
|
|
|
],[
|
|
|
|
if test "x$with_nss_plugin" = "xyes" ; then
|
|
|
|
fail = 1
|
|
|
|
fi
|
|
|
|
])
|
2016-02-13 16:27:50 +08:00
|
|
|
|
2016-12-25 20:42:42 +08:00
|
|
|
if test $fail = 1 ; then
|
|
|
|
AC_MSG_ERROR([Can't build nss plugin without nss.h])
|
|
|
|
fi
|
2016-02-13 16:27:50 +08:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$with_nss_plugin" = "xyes" ; then
|
|
|
|
AC_DEFINE_UNQUOTED([NSS], 1, [whether nss plugin is enabled])
|
2016-03-28 02:07:10 +08:00
|
|
|
|
|
|
|
AC_CHECK_TYPE([struct gaih_addrtuple],
|
|
|
|
[AC_DEFINE([HAVE_STRUCT_GAIH_ADDRTUPLE], [1],
|
|
|
|
[Defined if struct gaih_addrtuple exists in nss.h])],
|
|
|
|
[], [[#include <nss.h>
|
|
|
|
]])
|
|
|
|
|
|
|
|
AC_CHECK_TYPES([ns_mtab, nss_module_unregister_fn],
|
|
|
|
[AC_DEFINE([HAVE_BSD_NSS],
|
|
|
|
[1],
|
|
|
|
[whether using BSD style NSS])
|
|
|
|
bsd_nss=yes
|
|
|
|
],
|
|
|
|
[],
|
|
|
|
[#include <nsswitch.h>])
|
2016-02-13 16:27:50 +08:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
AM_CONDITIONAL(WITH_NSS, [test "x$with_nss_plugin" = "xyes"])
|
2016-03-28 02:07:10 +08:00
|
|
|
AM_CONDITIONAL(WITH_BSD_NSS, [test "x$bsd_nss" = "xyes"])
|
2016-02-13 16:27:50 +08:00
|
|
|
])
|
|
|
|
|
|
|
|
AC_DEFUN([LIBVIRT_RESULT_NSS],[
|
|
|
|
LIBVIRT_RESULT([nss], [$with_nss_plugin])
|
|
|
|
])
|