summaryrefslogtreecommitdiffstats
path: root/aclocal/rpcsec_vers.m4
Commit message (Collapse)AuthorAgeFilesLines
* Switch to use standard GSSAPI by defaultSimo Sorce2013-03-261-1/+6
| | | | | | | | Make libgssglue configurable still but disabled by default. There is no reason to use libgssglue anymore, and modern gssapi supports all needed features for nfs-utils. Signed-off-by: Simo Sorce <simo@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>
* 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: 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-161-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 rpcsecgss checking into aclocalChuck Lever2009-03-161-0/+9
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>