summaryrefslogtreecommitdiffstats
path: root/aclocal
Commit message (Collapse)AuthorAgeFilesLines
* build: avoid AM_CONDITIONAL in conditional execution.Diego Elio Pettenò2012-05-291-1/+0
| | | | | | | | | | | | | | | Automake does not support conditional AM_CONDITIONAL calls; what that means is that you always have to execute AM_CONDITIONAL one way or the other. Both the libsqlite3.m4 file and the nfsdcld conditionals are executed only when NFSv4 is enabled, which breaks building with --disable-nfsv4. Remove the SQLite3 conditional altogether as it's never used, and move the nfsdcld conditional outside of the conditional code. Acked-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu> Signed-off-by: Steve Dickson <steved@redhat.com>
* autoconf: make the test for prctl have an effectJeff Layton2012-05-291-1/+1
| | | | | | | | | | | We currently test to ensure that prctl() is available, but the results of that test are a no-op either way. statd calls prctl() unconditionally, so make configure bail out if prctl() isn't available since the build will fail in that event anyway. Cc: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfsdcld: add autoconf goop for sqliteJeff Layton2012-04-261-0/+33
| | | | | | | | | | | Mostly cribbed from Chuck Lever's new-statd rewrite a few years ago... This adds an autoconf test for the sqlite3 library and includes. If they're not working properly and nfsdcld was enabled, then configure will error out. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* rpc.gssd: Links directly with libgssapi_krb5 which not needed.Steve Dickson2012-03-221-1/+1
| | | | | | | | | rpc.gssd and rpc.svcgssd both link with the libgssapi_krb5 and libgssglue libraries which is not needed since libgssglue will dynamically load the gssapi interface defined in the /etc/gssapi_mech.conf. Most likely the libgssapi_krb5 library. Signed-off-by: Steve Dickson <steved@redhat.com>
* autoconf: only link binaries that need it to libtirpcJeff Layton2012-01-162-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is essentially the same as the previous version, but has been respun to fix up some merge conflicts with some of Chuck's recent changes. When we first added tirpc support, we took a "big hammer" approach, and had it add libtirpc to $LIBS. That had the effect of making it so that that library was linked into every binary. That's unnecessary, and wasteful with memory. Don't let AC_CHECK_LIB add -ltirpc to $LIBS. Instead, have the autoconf tests set $(LIBTIRPC) in the makefiles, and have the programs that need it explicitly include that library. In the event that we're not using libtirpc, then set $LIBTIRPC to a blank string. This necessitates a change to the bindresvport_sa check too. Since that library is no longer included in $LIBS, we need to convert that check to use AC_CHECK_LIB instead of AC_CHECK_FUNCS. This patch also fixes a subtle bug. If the library was usable, but the includes were not, the test would set $enable_tirpc to "no", but HAVE_LIBTIRPC would still be true. That configuration would likely fail to build. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure.ac: Don't check for AI_ADDRCONFIGChuck Lever2012-01-051-11/+0
| | | | | | | | | | Commit 1ea2c3be: "nfs-utils: Remove all uses of AI_ADDRCONFIG," (October 28, 2010) removed the last use of AI_ADDRCONFIG. Even so, ipv6.m4 uses this check to ensure that the local getaddrinfo(3) implementation is recent. Maybe we shouldn't bother. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* autoconf: don't let libnfsidmap test add -lnfsidmap to $LIBSJeff Layton2012-01-051-3/+6
| | | | | | | | | | ...as that makes that library get linked into every binary. Also, replace "hardcoded" -lnfsidmap linker flag in Makefiles with a AC_SUBST variable. This fixes a regression introduced in commit d7c64dd. Signed-off-by: Jeff Layton <jlayton@redhat.com>
* autoconf: fix up libevent autoconf testJeff Layton2012-01-051-1/+2
| | | | | | | Have it set LIBEVENT to -levent and use that in the Makefiles instead of hardcoding it. Signed-off-by: Jeff Layton <jlayton@redhat.com>
* nfsidmap: auto disable when keyutils is not foundMike Frysinger2011-09-142-4/+3
| | | | | | | | Since we already auto-disable based on libnfsidmap capabilities, don't make keyutils a hard failure. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Steve Dickson <steved@redhat.com>
* Add requirement for newer libgssglue for svcgssd -n optionKevin Coffman2011-06-301-1/+1
| | | | | | | | | | | | | | | | | | | SNAFU. This came to my attention minutes after 1.2.4 was released... Changes in commit d6c1b35c require that gss_acquire_cred() is now called when the "-n" option is used. This requires an updated libgssglue which properly handles name GSS_C_NO_NAME as input to gss_import_name()/gss_acquire_cred(). Add a requirement for the newer version. Without the newer libgssglue, when svcgssd is started with "-n" you will see the error message, "ERROR: GSS-API: error in gss_acquire_cred(): GSS_S_BAD_NAME (An invalid name was supplied) - Unknown error" Signed-off-by: Steve Dickson <steved@redhat.com>
* Enable nfsidmap to compileSteve Dickson2010-11-221-0/+4
| | | | | | Only enable the compilation of nfsidmap when libnfsidmap support it. Signed-off-by: Steve Dickson <steved@redhat.com>
* Add the new nfsidmap programBryan Schumaker2010-11-221-0/+11
| | | | | | | | | | This patch adds the nfsidmap program to nfs-utils. This program is called by the nfs idmapper through request-keys to map between uid / user name and gid / group name. Signed-off-by: Bryan Schumaker <bjschuma@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* Make capabilities support optionalMike Frysinger2010-04-231-5/+13
| | | | | | | | | | The new code using libcap is quite minor, so rather than always reqiure libcap support, make it a normal --enable type flag. Current default behavior is retained -- if libcap is found, it is enabled, else it is disabled like every nfs-utils version in the past. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Steve Dickson <steved@redhat.com>
* tcp_wrappers: Use getifaddrs(3) if it is availableChuck Lever2010-01-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After glibc 2.3.3, getifaddrs(3) can return AF_INET6 addresses for local network interfaces. Using the library call is easier than trying to update the open code in from_local(), and means we have less to maintain in nfs-utils going forward. And, since from_local() can now support IPv6, change its synopsis to take a "struct sockaddr *" . Note that the original code discovers local addresses once. These days, with wifi, DHCP, and NetworkManager, the local network configuration can change dynamically over time. So, call getifaddrs() more often to ensure from_local() has up-to-date network configuration information. This implementation refreshes the list if from_local() has not been called in the last second. This is actually not terribly honerous. check_default() invokes from_local() only when the remote host is not in its access cache, or the access/deny files have changed. So new hosts will cause a refresh, but previously seen hosts (including localhost) should not. On the other hand, it still may not be often enough. After the first call, if only previously seen hosts attempt to access our daemons, from_local() would never be called, and the local list would never be updated. This might be possible during steady-state operation with a small number of servers and clients. It would also be nice if we could free the local interface address list at shutdown time, but that would be a lot of trouble for little gain. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
* libnsm.a: retain CAP_NET_BIND when dropping privilegesChuck Lever2010-01-151-0/+15
| | | | | | | | | | | | | | | | | I'm about to switch the order of listener creation and dropping root privileges. rpc.statd will drop privileges first, then create its listeners. The reason for the new ordering is explained in a subsequent patch. However, for non-TI-RPC builds, rpc_init() needs to use a privileged port to do pmap registrations. For both TI-RPC and non-TI-RPC builds, CAP_NET_BIND is required in case the admin requests a privileged listener port on the statd command line. So that these requirements are met, nsm_drop_privileges() will now retain CAP_NET_BIND while dropping root. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
* Make --enable-tirpc the default. If --enable-tirpc wasn't explicitlySteve Dickson2009-06-222-6/+18
| | | | | | | | | specified, but TIRPC libs or headers aren't present then just throw a warning and disable it. If it was explicitly specified, then throw an error and exit if they aren't present. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: reverse order of librpcsecgss and libgssglue checksChuck Lever2009-04-151-5/+4
| | | | | | | | | | | | | The check that validates the version of librpcsecgss also needs to have libgssglue installed. Without libgssglue, ./configure complains that it can't find rpcsecgss, even though it's installed. It also turns out that the error message generated by pkg-config is more complete than the one we have in aclocal/rpcsec_vers.m4, so just let those PKG_CHECK_MODULES m4 macros use the default error message. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: fix AC_CHECK_FUNC calls in configure.acChuck Lever2009-04-031-1/+1
| | | | | | | | | | AC_CHECK_FUNC and AC_CHECK_FUNCS take 3 args. Any ones beyond that are ignored. In several places, we're passing the "action-if-not-found" in as the 4th arg so it's being ignored. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: clean up handling of libgssglue in gssd MakefileChuck Lever2009-03-161-3/+3
| | | | | | | | | | | | | | | | From: Jeff Layton <jlayton@redhat.com> Make the pkgconfig check for libgssglue conditional on tirpc being enabled. When it's disabled, the pkgconfig check for librpcsecgss will pull in the gssglue lib and include dir automatically. Also, make sure we include GSSGLUE_CFLAGS and the GSSGLUE_LIBS to the appropriate places in utils/gssd/Makefile.am so that we pick up the gssglue libs when tirpc is enabled. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: Include legacy or TI-RPC headers, not bothChuck Lever2009-03-163-9/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Data type incompatibilities between the legacy RPC headers and the TI-RPC headers mean we can't use libtirpc with code that was compiled against the legacy RPC headers. The definition of rpcprog_t for example is "unsigned long" in the legacy library, but it's "uint32_t" for TI-RPC. On 32-bit systems, these types happen to have the same width, but on 64-bit systems they don't, making more complex data structures that use these types in fields ABI incompatible. Adopt a new strategy to deal with this issue. When --enable-tirpc is set, append "-I/usr/include/tirpc" to the compilation steps. This should cause the compiler to grab the tirpc/ headers instead of the legacy headers. Now, for TI-RPC builds, the TI-RPC legacy functions and the TI-RPC headers will be used. On legacy systems, the legacy headers and legacy glibc RPC implementation will be used. A new ./configure option is introduced to allow system integrators to use TI-RPC headers in some other location than /usr/include/tirpc. /usr/include/tirpc remains the default setting for this new option. The gssd implementation presents a few challenges, but it turns out the gssglue library is similar to the auth_gss pieces of TI-RPC. To avoid similar header incompatibility issues, gssd now uses libtirpc instead of libgssglue if --enable-tirpc is specified. There may be other issues to tackle with gssd, but for now, we just make sure it builds with --enable-tirpc. Note also: svc_getcaller() is a macro in both cases that points to a sockaddr field in the svc_req structure. The legacy version points to a sockaddr_in type field, but the TI-RPC version points to a sockaddr_in6 type field. rpc.mountd unconditionally casts the result of svc_getcaller() to a sockaddr_in *. This should be OK for TI-RPC as well, since rpc.mountd still uses legacy RPC calls (provided by glibc, or emulated by TI-RPC) to set up its listeners, and therefore rpc.mountd callers will always be from AF_INET addresses for now. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure: move IPv6 feature checks into aclocalChuck Lever2009-03-161-0/+29
| | | | | | | | Clean up: for consistency with other local feature checks, move IPv6 feature checks into aclocal/ Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: don't need extra libs to do AC_CHECK_LIBS for librpcsecgssChuck Lever2009-03-161-5/+3
| | | | | | | | | | From: Jeff Layton <jlayton@redhat.com> The conftest should work without these extra libs being included. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure: Move rpcsecgss checking into aclocalChuck Lever2009-03-162-0/+25
| | | | | | | | Clean up: Introduce two more aclocal scripts for handling rpcsecgss dependency checking. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure: pull common nfsidmap and event checks into aclocal/Chuck Lever2009-03-162-0/+28
| | | | | | | | | Clean up: Create an aclocal script for the nfsidmap library and headers checks used for both --enable-gss and --enable-nfsv4. Move libevent checks out too. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* nfs-utils: replace function-specific switches with HAVE_LIBTIRPCChuck Lever2009-03-161-5/+0
| | | | | | | | | | | | | Instead of switching in TI-RPC-specific logic with a function-specific switch like HAVE_CLNT_VG_CREATE, let's use the more generic HAVE_LIBTIRPC macro everywhere. This simplifies ./configure (always a good thing), and makes it more clear in the source code exactly what the extra conditionally compiled code is for. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure: move TI-RPC checks into aclocalChuck Lever2009-03-161-0/+25
| | | | | | | | | | | | Define an aclocal test for TI-RPC headers and library, and move the TI-RPC checks earlier in our configure script so other feature checks can use the availability of TI-RPC to decide what to do. Since bindresvport_sa is required just for IPv6 support, move that check to the IPv6 feature tests. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* configure: fix AC_CACHE_VAL warnings on Fedora 10Chuck Lever2009-03-041-6/+5
| | | | | | | | | | | | | | | | | Autoconf 2.63 (and maybe earlier releases) complains about the cache variable name used in aclocal/libblkid.m4: configure.ac:217: warning: AC_CACHE_VAL(libblkid_is_recent, ...): suspicious cache-id, must contain _cv_ to be cached ../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... aclocal/libblkid.m4:2: AC_BLKID_VERS is expanded from... configure.ac:217: the top level This addresses https://bugzilla.redhat.com/attachment.cgi?bugid=481386 . Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* Detect version of libblkid and act accordingly.Neil Brown2007-05-031-0/+20
| | | | | | | libblkid earlier than 1.40 has a memory leak bug that make it unsuitable for use in mountd. So detect the version and default to not using it if too old. Give appropriate warnings in various cases.
* Always get addressless ticketsKevin Coffman2007-05-031-0/+4
| | | | | | | | Make sure we get addressless tickets so we can function behind a NAT. (Must use a different function to accomplish this with Heimdal.) Signed-off-by: Kevin Coffman <kwc@citi.umich.edu> Signed-off-by: Neil Brown <neilb@suse.de>
* Factor out error message printing differences between MIT and HeimdalKevin Coffman2007-04-201-0/+4
| | | | | | | | | | Use a common function that factors out differences between MIT and Heimdal in getting the right error message printed. Add an autoconf check to see if the newer error message function is available. Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
* Look in lib64 for gss libs aswell.Neil Brown2007-03-161-0/+2
| | | | | | On distros that support 32 and 64bit userspace, we need to look a bit more broadly for libraries (taken from Redhat sources for RHEL5 - thanks).
* Fix silly bug with tcp-wrappers checkNeil Brown2007-02-271-1/+1
| | | | | | A stray '$'. Signed-off-by: Neil Brown <neilb@suse.de>
* Touch up some of the autotools filesKevin Coffman2007-02-091-1/+8
| | | | | | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Kevin Coffman <kwc@citi.umich.edu> this patch touches up the autotool code a bit in nfs-utils: - run autogen.sh with -e so if something fails, it'll abort properly - set ACLOCAL_AMFLAGS so that when running autoreconf or when autotools re-runs itself, the m4 files are found properly - make sure we include bsdsignals.m4 in the final tarball - add some cross-compiling fallback logic to bsdsignals.m4 so that when cross-compiling nfs-utils, the configure is a bit more nice than simply: checking for BSD signal semantics... configure: error: cannot run test program while cross compiling Signed-off-by: Neil Brown <neilb@suse.de>
* Enable tcpwrappers by defaultNeil Brown2007-02-051-13/+11
| | | | This used to be the default but we lost it at about 1.0.8
* Only use -rpath for Kerberos libs when actually needed.Neil Brown2006-07-061-0/+12
| | | | Avoid usage of -rpath is generally safer, and is required by Debian policy.
* 2006-04-10 "Kevin Coffman" <kwc@citi.umich.edu>neilbrown2006-04-101-0/+4
| | | | | Update aclocal/tcp-wrappers.m4 to define HAVE_LIBWRAP and HAVE_TCP_WRAPPERS as appropriate.
* Find krb5-config on SuSE 10neilbrown2006-03-261-0/+2
| | | | | SuSE 10.0 puts krb5-config in yet another obscure location. Look for it there and use it if found.
* Autogen updateneilbrown2005-12-204-0/+189