summaryrefslogtreecommitdiffstats
path: root/support
Commit message (Collapse)AuthorAgeFilesLines
* Try to make sure that clientid used for NFSv4 is reliable.Neil Brown2006-06-232-4/+12
| | | | | | | | | | | | | We need to give an IP address to identify this client to the server. The current code does a gethostbyname of the hostname. One some systems this returns 127.0.0.1 or similar, which is not useful. Instead, use getsockname of the sock used to connect to the server to confirm that the server is working. This gives the address on the interface that was chosen to talk to that server, which is the best address we can find (if there is a NAT in the way, it might still not work, but in that case there is nothing we can do).
* multiple threads for mountdGreg Banks2006-06-161-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | How about the attached patch against nfs-utils tot? It adds a -t option to set the number of forked workers. Default is 1 thread, i.e. the old behaviour. I've verified that showmount -e, the Ogata mount client, and a real mount from Linux and IRIX boxes work with and without the new option. I've verified that you can manually kill any of the workers without the portmap registration going away, that killing all the workers causes the manager process to wake up and unregister, and killing the manager process causes the workers to be killed and portmap unregistered. I've verified that all the workers have file descriptors for the udp socket and the tcp rendezvous socket, that connections are balanced across all the workers if service times are sufficiently long, and that performance is improved by that parallelism, at least for small numbers of threads. For example, with 60 parallel MOUNT calls and a testing patch to make DNS lookups take 100 milliseconds time to perform all mounts (averaged over 5 runs) is: num elapsed threads time (sec) ------ ---------- 1 13.125 2 6.859 3 4.836 4 3.841 5 3.303 6 3.100 7 3.078 8 3.018 Greg. -- Greg Banks, R&D Software Engineer, SGI Australian Software Group. I don't speak for SGI.
* Move NFS mount code from util-linux to nfs-utils - part 2Amit Gud2006-06-1614-68/+1303
| | | | | | | | | Adds the support functions needed for mount and umount. This functionality will someday be available in the form of shared mount library. Signed-off-by: Amit Gud <agud@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
* Only treat '#' as starting a comment when at the start of a tokenNeil Brown2006-06-051-2/+5
| | | | otherwise '#' in filenames cannot be read.
* escape hashes in exportsNeil Brown2006-06-051-1/+1
| | | | | | | Makes sure any # signs in the printed-out exports file are escaped (as with quotes, spaces, etc.), so they won't be treated as a comment when they're read back in again. "Steinar H. Gunderson" <sesse@debian.org>
* fix exportfs with multiple matchesNeil Brown2006-06-051-1/+1
| | | | | | | Fixes a problem with exportfs -o and multiple entries of the same type for the same patch that matches a given client. The entire rationale and problem description can be found at http://bugs.debian.org/245449 (fumihiko kakuma <kakmy@mvh.biglobe.ne.jp>)
* Remove **/Makefile.in, aclocal.m4, configure, andNeil Brown2006-04-1710-4713/+0
| | | | | | support/include/config.h.in from source control These are auto autogenerated by aclocal -I aclocal ; autoheader ; automake ; autoconf
* 2006-04-10 "Kevin Coffman" <kwc@citi.umich.edu>neilbrown2006-04-109-0/+18
| | | | | Check for sufficient version of librpcsecgss and libgssapi in configure.in
* 2006-04-10 "Kevin Coffman" <kwc@citi.umich.edu>neilbrown2006-04-1010-0/+24
| | | | | Update aclocal/tcp-wrappers.m4 to define HAVE_LIBWRAP and HAVE_TCP_WRAPPERS as appropriate.
* Add checking for innetgr back to configure.inneilbrown2006-04-101-0/+3
|
* 2006-04-10 kwc@citi.umich.eduneilbrown2006-04-091-0/+31
| | | | Fix support/include/config.h.in such as would be done be running autoheader.
* aclocal/autoconf/automake, properly this time.neilbrown2006-03-2810-31/+36
|
* Use PKGCONFIG to locate gssapi and rpcsecgss header filesneilbrown2006-03-2816-3126/+0
| | | | | | | | | | | Instead of having separate copies of the gssapi and rpcsecgss header files, or depending on the Kerberos gssapi header, locate the headers now installed with the libgssapi and librpcsecgss libraries. Remove local copies of the gssapi and rpcsecgss header files. This depends on the configure_use_autotools patch.
* Remove all the Makefilesneilbrown2005-12-206-99/+0
|
* More automake stuffneilbrown2005-12-209-0/+4232
|
* Autogen updateneilbrown2005-12-2034-81/+585
|
* Set default hostname to '*' rather than leaving it emptyneilbrown2005-12-201-4/+8
|
* Updates from Kevin Coffman at UMichneilbrown2005-12-161-0/+3
|
* Fix rpc_init so it isn't confused by sshneilbrown2005-12-121-4/+11
|
* Assorted changes from Steve Dicksonneilbrown2005-10-065-3/+36
|
* rpc and gssapi not longer exist in support, so remove them from Makefileneilbrown2005-08-261-1/+1
|
* Remove the rpcsec_gss code and rely on an external library instead.neilbrown2005-08-2618-4172/+5
|
* remove some files.neilbrown2005-08-2638-5911/+0
|
* 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>neilbrown2005-08-261-24/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *utils/mountd/mountd.c: mountd currently always returns AUTH_NULL and AUTH_SYS as the allowable flavors in mount replies. We want it to also return gss flavors when appropriate. For now as a hack we just have it always return the KRB5 flavors as well. *utils/mountd/cache.c: When attempting to mount an NFSv4 pseudofilesystem (fsid=0) and the actual exported directory does not exist on the server, rpc.mountd doesn't check the directory exists (when fsidtype=1, i.e. using fsid, but does check for fsidtype=0, i.e. using dev/ino). The non-existent exported directory path with fsid=0 is written to the kernel via /proc/net/rpc/nfsd.export/channel, which leads to path_lookup() to return ENOENT (seems appropriate). Unfortunately, the new_cache approach ignores errors returned when writing via the channel file so that particular error is lost and the mount request is silently ignored. Assuming it doesn't make sense to revamp the new_cache/up-call method to not ignore returned errors, it seems appropriate to fix the case where rpc.mountd doesn't check for the existence of an exported directory with fsid= semantics. The following patch does this by moving the stat() up so it is done for both fsidtype's. I'm not certain whether the other tests need to be executed for fsidtype=1, but it doesn't appear to hurt [Not exactly true: the comparison of inode numbers caused problems so now it's kept for fsidtype=0 only]. Would it be also desirable to log a warning for every error, if any, returned by a write to any of the /proc/net/rpc/*/channel files which would otherwise be ignored (maybe under a debug flag)? * gssd/mountd/svcgssd: Changes gssd, svcgssd, and mountd to ignore a SIGHUP rather than dying. * many: Remove the gssapi code and rely on an external library instead.
* 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>neilbrown2005-08-261-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * utils/exportfs/exports.man: Document the "crossmnt" export export option * utils/gssd/krb5_util.c: Add better debugging and partially revert the function check for gss_krb5_ccache_name. For MIT Kerberos releases up to and including 1.3.1, we *must* use the routine gss_krb5_ccache_name to get the K5 gssapi code to use a different credentials cache. For releases 1.3.2 and on, we want to use the KRB5CCNAME environment variable to tell it what to use. (A problem was reported where 1.3.5 was being used, our code was using gss_krb5_ccache_name, but the underlying code continued to use the first (or default?) credentials cache. Switching to using the env variable fixed the problem. I cannot recreate this problem. *utils/gssd/krb5_util.c: Andrew Mahone <andrew.mahone@gmail.com> reported that reiser4 always has DT_UNKNOWN. He supplied patch to move the check for regular files after the stat() call to correctly find ccache files in reiser4 filesystem. Also change the name comparison so that the wrong file is not selected when the substring comparison is done. *utils/gssd/krb5_util.c: Limit the set of encryption types that can be negotiated by the Kerberos library to those that the kernel code currently supports. This should eventually query the kernel for the list of supported enctypes. *utils/gssd/gss_util.c, utils/svcgssd/svcgssd_main_loop.c: Print more information in error messages to help debugging failures. *utils/svcgssd/svcgssd_proc.c: Increase token buffer size and update error handling so that a response is always sent. *utils/svcgssd/svcgssd_proc.c: Add support to retrieve supplementary groups.
* 2005-08-26 Kevin Coffman <kwc@citi.umich.edu>neilbrown2005-08-261-23/+3
| | | | | | | | | | | | | | | | | | | | | | | | * configure.in etc Consolidate some of the Kerberos checking instead of repeating the same things for MIT and Heimdal. Also adds more checks to distinguish 32-bit from 64-bit (mainly for gssapi.h) Fix svcgssd Makefile so make TOP=../../ works correctly there. Enable running a modern autoheader. * utils/gssd/gss_oids.c: Use correct OID value for SPKM-3 * utils/gssd/gss_util.c: Fix build with older MIT releases that do not define GSS_C_NT_HOSTBASED_SERVICE * utils/gssd/write_bytes.h, support/include/gssapi/gssapi.h: Length of gss_buffer_desc is a size_t which is 64-bits on a 64-bit machine. Kernel code expects 32-bit integer for length. Coerce length value into a 32-bit value when reading from or writing to the kernel. Change gssapi.h to use datatype size values obtained from configure rather than hard-coded values. * utils/idmapd/idmapd.c: The EV_INIT check here was wrong, and was causing idmapd to become unresponsive to server requests after receiving a sighup. * utils/idmapd/idmapd.c: Idmapd should flush the server id<->name caches when its started.
* From: Kevin Coffman <kwc@citi.umich.edu>neilbrown2005-08-261-0/+18
| | | | | | | | | | | Consolidate some of the Kerberos checking instead of repeating the same things for MIT and Heimdal. Also adds more checks to distinguish 32-bit from 64-bit (mainly for gssapi.h) Fix svcgssd Makefile so make TOP=../../ works correctly there. Enable running a modern autoheader. (Requires that autoconf be run to regenerate configure script.)
* Added TOP, as needed, for easier compile in subdirectoriesgmorris2005-04-128-3/+9
|
* Don't use cast as lvaluechip2005-04-061-1/+1
|
* Support "acl" and "no_acl" export options.chip2005-04-061-0/+6
|
* Sanitise stderr logging.neilbrown2005-03-142-45/+50
|
* treat N.N.N.N as a special case of MCL_SUBNETWORK instead ofneilbrown2005-03-141-1/+10
| | | | MCL_FQDN
* Fix bug [ 1157791 ] Segfault in mountd.gmorris2005-03-061-5/+6
|
* release 1.0.7-pre2neilbrown2004-12-101-1/+1
|
* ha-callout ands sigchldneilbrown2004-12-101-1/+12
|
* HA statd updatesneilbrown2004-12-061-1/+1
|
* Add gss support from citi @ umichneilbrown2004-10-1972-2/+13257
|
* Prepare to support gss authentication and idmap looks for nfsv4neilbrown2004-09-154-1/+9
|
* Support --ha-callout for high-availability calloutsneilbrown2004-09-061-0/+52
|
* Fix cache flushing problem.neilbrown2004-06-081-1/+7
|
* Makefile changes.neilbrown2003-09-141-0/+3
|
* * support/export/hostname.c (get_reliable_hostbyaddr): Fix crashchip2003-09-091-23/+22
| | | | on invalid reverse DNS.
* Change CROSSMNT to CROSSMOUNTneilbrown2003-08-062-7/+5
|
* /proc/fs/nfsd as an alternate to /proc/fs/nfsdneilbrown2003-08-044-2/+9
|
* Open channel files O_WRONLY, and improve mountlist support.neilbrown2003-08-041-2/+2
|
* * support/nfs/xlog.c (xlog): Revise buffer-overflow fix tochip2003-07-251-6/+4
| | | | use Debian security team's cleaner approach.
* Release 1.0.5neilbrown2003-07-171-1/+1
|
* Assorted fixesneilbrown2003-07-141-1/+2
|
* allow compilation against 2.5 headersneilbrown2003-07-031-2/+13
|
* rpc.nfsd to write to /proc/fs/nfs/threads if availableneilbrown2003-07-031-0/+21
|