summaryrefslogtreecommitdiffstats
path: root/usr.sbin/rpc.statd
Commit message (Collapse)AuthorAgeFilesLines
* MFC r277352:rstone2015-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | When mountd is creating sockets, it iterates over all addresses specified in the "hosts" array and eventually looks up the network address with getaddrinfo(). At one point it checks for a numeric address and if it sees one, it sets a hint parameter to force getaddrinfo to interpret the host as a numeric address. However that hint is not cleared for subsequent iterations of the loop and if any hosts seen after this point are host names, getaddrinfo will fail on the name. The result of this bug is that you cannot pass a host name to the -h flag. Unfortunately, the first iteration will either process ::1 or 127.0.0.1, so the flag is set on the first iteration and all host names will fail to be processed. The same bug applies to rpc.lockd and rpc.statd, so fix them too. Differential Revision: https://reviews.freebsd.org/D1507 Reported by: Dylan Martin MFC after: 1 week Sponsored by: Sandvine Inc.
* Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessordim2012-02-071-1/+1
| | | | | | set via ${CPP} is used, instead of always using hardcoded /usr/bin/cpp. MFC after: 1 week
* Fix the nfs related daemons so that they don't intermittentlyrmacklem2011-06-021-28/+212
| | | | | | | | | | | | | | | | | | | | | | | | fail with "bind: address already in use". This problem was reported to the freebsd-stable@ mailing list on Feb. 19 under the subject heading "statd/lockd startup failure" by george+freebsd at m5p dot com. The problem is that the first combination of {udp,tcp X ipv4,ipv6} would select a port# dynamically, but one of the other three combinations would have that port# already in use. The patch is somewhat involved because it was requested by dougb@ that the four combinations use the same port# wherever possible. The patch splits the create_service() function into two functions. The first goes as far as bind(2) in a loop for up to GETPORT_MAXTRY - 1 times, attempting to use the same port# for all four cases. If these attempts fail, the last attempt allows the 4 cases to use different port #s. After this function has succeeded, the second function, called complete_service(), does the rest of what create_service() did. The three daemons mountd, rpc.lockd and rpc.statd all have a create_service() function that is patched in a similar way. However, create_service() has non-trivial differences for the three daemons that made it impractical to share the same functions between them. Reviewed by: jhb MFC after: 2 weeks
* The last big commit: let usr.sbin/ use WARNS=6 by default.ed2010-01-021-1/+1
|
* Re-implement the client side of rpc.lockd in the kernel. This implementationdfr2008-06-261-0/+30
| | | | | | | | | | | | provides the correct semantics for flock(2) style locks which are used by the lockf(1) command line tool and the pidfile(3) library. It also implements recovery from server restarts and ensures that dirty cache blocks are written to the server before obtaining locks (allowing multiple clients to use file locking to safely share data). Sponsored by: Isilon Systems PR: 94256 MFC after: 2 weeks
* Fix apparent mis-paste in previous check-in by author.kan2008-04-061-1/+1
|
* Call listen(2) on bound tcp sockets before passing them to svc_tli_create.dfr2008-04-061-0/+3
|
* Check the correct variables for malloc failures.matteo2007-11-071-1/+1
| | | | Submitted by: Michiel Boland <michiel@boland.org>
* Add the -h <bindip> option to rpc.statd, similar to the one in nfsd(8)matteo2007-11-012-91/+335
| | | | | | | | | | | | | | | | and in mountd(8) -h bindip Specify specific IP addresses to bind to for TCP and UDP requests. This option may be specified multiple times. If no -h option is specified, rpc.statd will bind to INADDR_ANY. Note that when specifying IP addresses with -h, rpc.statd will automatically add 127.0.0.1 and if IPv6 is enabled, ::1 to the list. (coming for rpc.lockd too) PR: bin/98500 MFC after: 1 week
* If the mmap() call in rpc.statd fails, rpc.statd prints a warningtruckman2007-08-131-1/+1
| | | | | | | | | | | | message and then dumps core because the subsequent code assumes that mmap() succeeded. Since rpc.statd does not have fallback code to implement the functionality needed to operate on the status file if it is not memory mapped, rpc.statd should use err() to force the process to exit if the mmap() call fails. PR: bin/115430 (mmap() failure previously fixed in statd.c 1.15) Approved by: re (kensmith) MFC after: 1 week
* The call to init_file() needs to be moved outside the loop in statd.c,truckman2007-08-051-1/+1
| | | | | | | | otherwise mmap() gets called multiple times, which eventually fails due to address space exhaustion on i386. Approved by: re (kensmith) MFC after: 1 week
* Add the "-p" option, which allows to specify a port which the daemonmatteo2007-04-032-9/+119
| | | | | | | | should bind to. PR: bin/94920 Reviewed by: alfred@ MFC after: 1 week
* Make rpc.statd INET* indipendent by converting sockaddr_in structuresmatteo2007-04-021-6/+18
| | | | | | | | to sockaddr ones and using svc_getrpccaller instead of svc_getcaller. A similar patch was committed to rpc.lockd back in 2002 . PR: bin/42004 MFC after: 1 week
* compile under WARNS=6charnier2006-09-132-5/+3
|
* (sm_mon_1_svc): Fix debugging output: when establising a monitoringthomas2006-08-111-2/+3
| | | | | | | | | request, correctly report the location (usually localhost) to which a callback will be made when a notification is received for the monitored host. Previsouly, the name of the monitored host was reported instead. MFC after: 2 weeks
* Sort sections.ru2005-01-181-3/+3
|
* Mechanically kill hard sentence breaks.ru2004-07-021-8/+15
|
* Add FBSDID. Use getopt(3).charnier2004-04-041-11/+15
|
* Deal with xdrproc_t casts. Make these compile cleanly with WARNS=2peter2003-10-263-3/+5
| | | | (but I haven't turned it on)
* style.Makefile(5)obrien2003-04-041-3/+0
|
* Implement nonblocking tpc-connections. rpcgen -m does stillmbr2003-01-161-0/+4
| | | | | | | | produce backcompatible code. Reviewed by: rwatson Obtained from: NetBSD MFC after: 1 day
* use getaddrinfo() instead of gethostbyname().alfred2002-07-151-5/+11
| | | | Submitted by: Jean-Luc Richier <Jean-Luc.Richier@imag.fr>
* Nuke unused variable.alfred2002-07-151-1/+0
|
* Port to TI/RPC and/or IPV6.alfred2002-07-151-11/+3
| | | | Submitted by: Jean-Luc Richier <Jean-Luc.Richier@imag.fr>
* The .Nm utilitycharnier2002-07-141-3/+7
|
* mark unused variable.alfred2002-07-111-1/+1
|
* conditionally set WARNS via ?=.alfred2002-07-111-2/+2
|
* make mostly WARNS=4 clean.alfred2002-07-115-9/+12
| | | | constify, mark unsued args, fixup prototypes.
* Log the IP of the machine if an invalid host is passed over the wire.alfred2002-07-111-1/+4
| | | | PR: bin/29406
* Fix return values in the sm_notify_1 service routine to return an answeralfred2002-07-111-3/+3
| | | | | | | | | most of the time (unless fork fails). This should fix the problem where FreeBSD won't respond to a remote host and therefor the remote hosts tries indefinitely to contact the FreeBSD hosts thereby irritating the system administrator. PR: misc/27810
* Fix syslog format errors introduced in 1.6.alfred2002-07-111-3/+3
|
* add includes for inet_ntoa prototype.alfred2002-07-111-0/+4
|
* include string.h for strcmp(3) prototype.alfred2002-07-111-0/+1
|
* include stdlib.h for exit(3) prototype.alfred2002-07-111-0/+1
|
* Do not allow unsafe characters in monitored hostnames.alfred2002-07-112-38/+95
| | | | | | | This is modified version of the fix posted in the PR, I've taken Wollman's advice and used strvis(3) to properly show invalid hostnames. PR: bin/39815
* rename 'enum res' and 'struct status' to 'enum sm_res' and 'struct sm_status'alfred2002-03-221-3/+3
| | | | to avoid -Wshadow warnings in consumers of its generated header files.
* Perform a major cleanup of the usr.sbin Makefiles.obrien2001-07-201-5/+5
| | | | | These are not perfectly in agreement with each other style-wise, but they are orders of orders of magnitude more consistent style-wise than before.
* Remove whitespace at EOL.dd2001-07-151-1/+1
|
* - Backout botched attempt to introduce MANSECT feature.ru2001-03-261-0/+1
| | | | - MAN[1-9] -> MAN.
* Set the default manual section for usr.sbin/ to 8.ru2001-03-201-1/+0
|
* Included in the updated version of tirpc's sm_inter.x Sun added thealfred2001-03-201-23/+2
| | | | | | | | | | | | SM_NOTIFY procedure. Remove our hand-coded one as it was causing world breakage for worlds compiled with NOSHARED=yes because the static linker is a bit less forgiving (or not as broken as) our dynamic linker. Add $FreeBSD$ while I'm here. Pointed out by: bde
* Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) andalfred2001-03-191-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | associated changes that had to happen to make this possible as well as bugs fixed along the way. Bring in required TLI library routines to support this. Since we don't support TLI we've essentially copied what NetBSD has done, adding a thin layer to emulate direct the TLI calls into BSD socket calls. This is mostly from Sun's tirpc release that was made in 1994, however some fixes were backported from the 1999 release (supposedly only made available after this porting effort was underway). The submitter has agreed to continue on and bring us up to the 1999 release. Several key features are introduced with this update: Client calls are thread safe. (1999 code has server side thread safe) Updated, a more modern interface. Many userland updates were done to bring the code up to par with the recent RPC API. There is an update to the pthreads library, a function pthread_main_np() was added to emulate a function of Sun's threads library. While we're at it, bring in NetBSD's lockd, it's been far too long of a wait. New rpcbind(8) replaces portmap(8) (supporting communication over an authenticated Unix-domain socket, and by default only allowing set and unset requests over that channel). It's much more secure than the old portmapper. Umount(8), mountd(8), mount_nfs(8), nfsd(8) have also been upgraded to support TI-RPC and to support IPV6. Umount(8) is also fixed to unmount pathnames longer than 80 chars, which are currently truncated by the Kernel statfs structure. Submitted by: Martin Blapp <mb@imp.ch> Manpage review: ru Secure RPC implemented by: wpaul
* Prepare for mdoc(7)NG.ru2000-12-271-2/+2
|
* mdoc(7) police: use the new features of the Nm macro.ru2000-11-201-1/+1
|
* Undo previous change.marcel1999-10-051-1/+1
| | | | Submitted by: bde
* sigset_t change (part 5 of 5)marcel1999-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------- Most of the userland changes are in libc. For both the alpha and the i386 setjmp has been changed to accomodate for the new sigset_t. Internally, libc is mostly rewritten to use the new syscalls. The exception is in compat-43/sigcompat.c The POSIX thread library has also been rewritten to use the new sigset_t. Except, that it currently only handles NSIG signals instead of the maximum _SIG_MAXSIG. This should not be a problem because current applications don't use any signals higher than NSIG. There are version bumps for the following libraries: libdialog libreadline libc libc_r libedit libftpio libss These libraries either a) have one of the modified structures visible in the interface, or b) use sigset_t internally and may cause breakage if new binaries are used against libraries that don't have the sigset_t change. This not an immediate issue, but will be as soon as applications start using the new range to its fullest. NOTE: libncurses already had an version bump and has not been given one now. NOTE: doscmd is a real casualty and has been disconnected for the moment. Reconnection will eventually happen after doscmd has been fixed. I'm aware that being the last one to touch it, I'm automaticly promoted to being maintainer. According to good taste this means that I will receive a badge which either will be glued or mechanically stapled, drilled or otherwise violently forced onto me :-) NOTE: pcvt/vttest cannot be compiled with -traditional. The change cause sys/types to be included along the way which contains the const and volatile modifiers. I don't consider this a solution, but more a workaround.
* $Id$ -> $FreeBSD$peter1999-08-285-5/+5
|
* Add $Id$, to make it simpler for members of the translation teams tonik1999-07-121-0/+1
| | | | | | | | | | | | | | | | | track. The Id line is normally at the bottom of the main comment block in the man page, separated from the rest of the manpage by an empty comment, like so; .\" $Id$ .\" If the immediately preceding comment is a @(#) format ID marker than the the $Id$ will line up underneath it with no intervening blank lines. Otherwise, an additional blank line is inserted. Approved by: bde
* Removed bogus dependencies of generated .c files on generated headers.bde1998-05-101-2/+2
|
* Don't use the FreeBSD misfeature DPSRCS or give explicit dependenciesbde1998-03-061-3/+2
| | | | | on generated headers. Just put generated headers in SRCS so that bsd.*.mk can generate better dependencies.
OpenPOWER on IntegriCloud