summaryrefslogtreecommitdiffstats
path: root/lib/libc/rpc/rpcb_clnt.c
Commit message (Collapse)AuthorAgeFilesLines
* MFC r301734:ngie2016-12-031-1/+1
| | | | | | r301734 (by kevlo): Fix the rpcb_getaddr() definition to match its declaration.
* MFC r287341,r287342,r287348:ngie2016-12-031-48/+20
| | | | | | | | | | | | | | | | | | r287341 (by rodrigc): Use ANSI C prototypes. Eliminates gcc 4.9 warnings. r287342 (by rodrigc): Mark unused parameters to reduce gcc 4.9 warnings. r287348 (by rodrigc): Use correct function prototype for signal handler. Eliminates gcc 4.9 warning.
* MFC r288113:ngie2016-12-031-17/+16
| | | | | | r288113 (by rodrigc): Use ANSI C prototypes. Eliminates -Wold-style-definition warnings.
* MFC r287350:ngie2016-12-031-1/+1
| | | | | | | | r287350 (by rodrigc): Use ANSI C prototypes. Eliminates gcc 4.9 warnings.
* MFC r300387,r300388,r300389:ngie2016-06-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | r300387: getnetid(..): consistently fclose fd at the end of the function This mutes a false positive with cppcheck, but also helps eliminate future potential issues with this variable r300388: Call endnetconfig on nc_handle sooner to avoid leaking nc_handle if tmpnconf was NULL This would theoretically happen if the netconfig protocol family and protocol semantics were never matched. CID: 978179 r300389: nis_rpcent: don't leak resultbuf from yp_first(..)/yp_next(..) If the buffer couldn't be adequately resized to accomodate an additional "\n", it would leak resultbuf by breaking from the loop early CID: 1016702
* MFC r293705:ngie2016-01-181-2/+2
| | | | | | | | | Similar to r293704, fix theoretical leak of netconfig(3) resources in __rpcbind_is_up(..) if getnetconfig(3) is partly successful in allocating resources, but not completely successful by moving the endnetconfig(3) call up before we return from the function if nconf == NULL. Submitted by: Miles Ohlrich <miles.ohlrich@isilon.com>
* MFC r290253:ngie2015-11-161-16/+8
| | | | | | | Remove unnecessary `if (x)` tests before calling `free(x)`; free(3) already employs this check Sponsored by: EMC / Isilon Storage Division
* MFC r258578, r258580, r258581 (by hrs):mav2014-01-221-47/+24
| | | | | Replace Sun RPC license in TI-RPC library with a 3-clause BSD license with the explicit permissions.
* Complete revert of r239963:pfg2012-09-271-7/+0
| | | | | | | | | | | | | | | The attempt to merge changes from the linux libtirpc caused rpc.lockd to exit after startup under unclear conditions. After many hours of selective experiments and inconsistent results the conclusion is that it's better to just revert everything and restart in a future time with a much smaller subset of the changes. ____ MFC after: 3 days Reported by: David Wolfskill Tested by: David Wolfskill
* Bring some changes from Bull's NFSv4 libtirpc implementation.pfg2012-09-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We especifically ignored the glibc compatibility changes but this should help interaction with Solaris and Linux. ____ Fixed infinite loop in svc_run() author Steve Dickson Tue, 10 Jun 2008 12:35:52 -0500 (13:35 -0400) Fixed infinite loop in svc_run() ____ __rpc_taddr2uaddr_af() assumes the netbuf to always have a non-zero data. This is a bad assumption and can lead to a seg-fault. This patch adds a check for zero length and returns NULL when found. author Steve Dickson Mon, 27 Oct 2008 11:46:54 -0500 (12:46 -0400) ____ Changed clnt_spcreateerror() to return clearer and more concise error messages. author Steve Dickson Thu, 20 Nov 2008 08:55:31 -0500 (08:55 -0500) ____ Converted all uid and gid variables of the type uid_t and gid_t. author Steve Dickson Wed, 28 Jan 2009 12:44:46 -0500 (12:44 -0500) ____ libtirpc: set r_netid and r_owner in __rpcb_findaddr_timed These fields in the rpcbind GETADDR call are being passed uninitialized to CLNT_CALL. In the case of x86_64 at least, this usually leads to a segfault. On x86, it sometimes causes segfaults and other times causes garbage to be sent on the wire. rpcbind generally ignores the r_owner field for calls that come in over the wire, so it really doesn't matter what we send in that slot. We just need to send something. The reference implementation from Sun seems to send a blank string. Have ours follow suit. author Jeff Layton Fri, 13 Mar 2009 11:44:16 -0500 (12:44 -0400) ____ libtirpc: be sure to free cl_netid and cl_tp When creating a client with clnt_tli_create, it uses strdup to copy strings for these fields if nconf is passed in. clnt_dg_destroy frees these strings already. Make sure clnt_vc_destroy frees them in the same way. author Jeff Layton Fri, 13 Mar 2009 11:47:36 -0500 (12:47 -0400) Obtained from: Bull GNU/Linux NFSv4 Project MFC after: 3 weeks
* Fix some improper handling of malloc failuresmatteo2007-09-201-4/+9
| | | | | | | PR: bin/83344 , kern/81987 Reviewed by: alfred Approved by: re (kensmith) MFC after: 1 week
* Sync with NetBSD rev. 1.20 + 1.21mbr2006-09-091-6/+11
| | | | | | | Coverity CID 2284: Fix multiple memory leaks. Coverity CID 710: Remove unreachable code. MFC after: 1 month
* Staticize a couple of functions.deischen2006-02-271-3/+2
| | | | | | Remove a few unused locks. Remove locks from application namespace.
* Try to bring some sanity to the SCM ID's.obrien2004-10-161-1/+1
| | | | | | + spell LIBC_SCCS consistently + enable builds with LIBC_SCCS defined to not syntax error + minor SCM reformatting to try to have some consistency
* Don't compare NULL against a character.mbr2003-10-291-3/+3
| | | | Obtained from: NetBSD
* Add missing __rpc_fixup_addr. This is needed to makembr2003-01-271-0/+3
| | | | | | | | | mount_nfs -T work for scoped addresses. NetBSD Rev 1.11 Reviewed by: phk Obtained from: NetBSD
* Revert part of revision 1.10, as it broke portmap lookups for IPv4iedowse2002-07-261-9/+3
| | | | | | | | | | | | | TCP clients. The problem was that a struct netconfig returned by getnetconfigent() was being treated as a handle for __rpc_getconf(), which certainly isn't right. The tirpc-99 code uses __rpc_setconf("udp")/__rpc_getconf() to find the IPv4 udp netconfig, but our implementation of these functions seem happy to return IPv6 entries, so we can't use them. By reverting to the old version, we are hard-coding the name of the udp4 netid. Tracked down by: Bakul Shah <bakul@bitblocks.com>
* Add functions allowing for the user to specify a timeout for rpc functions.alfred2002-07-111-37/+112
| | | | | | Update copyrights to reflect where this code was lifted from. (tirpc '99) Submitted by: mbr
* Fix the style of the SCM ID's.obrien2002-03-221-3/+2
| | | | I believe have made all of libc .c's as consistent as possible.
* Remove multi-line __P() usage.obrien2002-03-221-6/+3
|
* Remove __P() usage.obrien2002-03-211-4/+4
|
* Fix two file descriptor leaks in the internal function local_rpcb()iedowse2002-02-161-1/+8
| | | | | | | | that is used by a number of rpcbind-related library functions. Also fix a rpc client leak in rpcb_set(). Submitted by: mbr Obtained from: NetBSD
* Do not call addrinfo on local transport adresses, if returning aalfred2002-02-051-5/+25
| | | | | | | | | server handle (for reuse or whatever). We just return now a handle connected to the local rpcbind. Do not try to call checkcache, if host = NULL; Submitted by: mbr
* In getclnthandle(), if the address is found in the cache we neediedowse2001-08-021-2/+5
| | | | | | | | | | to strdup() the address string before returning it via *targaddr because the caller will free the string. Change the comment at the top of getclnthandle() to clarify that the caller is responsible for freeing *targaddr. Noticed by: sobomax
* Fix a memory leak in __rpcb_findaddr(), avoid compiler warnings.iedowse2001-07-141-1/+4
| | | | Submitted by: Martin Blapp <mb@imp.ch>
* Move the #includes of reentrant.h to after the `#include "namespace.h"',iedowse2001-04-021-1/+1
| | | | | | | | so that the underscored versions of the pthread functions get declared. This removes around 300 lines of 'implicit declaration of XXX' warnings from the output of a libc build with -Wall. Reviewed by: Martin Blapp <mb@imp.ch>, alfred
* Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) andalfred2001-03-191-0/+1253
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
OpenPOWER on IntegriCloud