#
b4e7a879 |
| 02-Oct-2012 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
Fix __rpc_getconfip
__rpc_getconfip is supposed to return the first netconf entry supporting tcp or udp, respectively. The code will currently return the *last* entry, plus it will leak memory when
Fix __rpc_getconfip
__rpc_getconfip is supposed to return the first netconf entry supporting tcp or udp, respectively. The code will currently return the *last* entry, plus it will leak memory when there is more than one such entry.
This change matches the reference (OpenSolaris) implementation.
Tested by: David Wolfskill Obtained from: Bull GNU/linux NFSv4 Project (libtirpc) MFC after: 1 week
show more ...
|
#
06f13fb3 |
| 27-Sep-2012 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
Complete revert of r239963:
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 incon
Complete revert of r239963:
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
show more ...
|
#
24bf3585 |
| 04-Sep-2012 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Merge head r233826 through r240095.
|
#
43981b6c |
| 01-Sep-2012 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
Bring some changes from Bull's NFSv4 libtirpc implementation.
We especifically ignored the glibc compatibility changes but this should help interaction with Solaris and Linux. ____
Fixed infinite l
Bring some changes from Bull's NFSv4 libtirpc implementation.
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
show more ...
|
Revision tags: release/8.3.0_cvs, release/8.3.0, release/9.0.0, release/7.4.0_cvs, release/8.2.0_cvs, release/7.4.0, release/8.2.0, release/8.1.0_cvs, release/8.1.0 |
|
#
a4bf5fb9 |
| 28-Apr-2010 |
Kirk McKusick <mckusick@FreeBSD.org> |
Update to current version of head.
|
#
f5ccef8f |
| 22-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
MFC 204950,205020: Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a
MFC 204950,205020: Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a dedicated mutex (tsd_lock) to do this before. However, that is not always safe with more relaxed memory orders. There were also other bugs, such as one in __rpc_createrr() that caused a new key to be allocated each time __rpc_createrr() was invoked.
show more ...
|
Revision tags: release/7.3.0_cvs, release/7.3.0 |
|
#
f458b726 |
| 11-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
Fix a bug in the previous change: remove function-local definition of tcp_key and udp_key that shadows the global definition.
PR: threads/144558 Submitted by: Sam Robb
|
#
6f88d2a8 |
| 10-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a dedicated mutex (ts
Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a dedicated mutex (tsd_lock) to do this before. However, that is not always safe with more relaxed memory orders. There were also other bugs, such as one in __rpc_createrr() that caused a new key to be allocated each time __rpc_createrr() was invoked.
PR: threads/144558 Reported by: Sam Robb samrobb of averesystems com (key leak) MFC after: 1 week
show more ...
|
Revision tags: release/8.0.0_cvs, release/8.0.0, release/7.2.0_cvs, release/7.2.0, release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0 |
|
#
330e445c |
| 21-Sep-2007 |
Matteo Riondato <matteo@FreeBSD.org> |
Fix some improper handling of malloc failures
PR: bin/83344 , kern/81987 Reviewed by: alfred Approved by: re (kensmith) MFC after: 1 week
|
Revision tags: release/6.2.0_cvs, release/6.2.0, release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0 |
|
#
235baf26 |
| 27-Feb-2006 |
Daniel Eischen <deischen@FreeBSD.org> |
Staticize a couple of functions.
Remove a few unused locks.
Remove locks from application namespace.
|
Revision tags: release/6.0.0_cvs, release/6.0.0, release/5.4.0_cvs, release/5.4.0, release/4.11.0_cvs, release/4.11.0, release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0, release/5.2.1_cvs, release/5.2.1, release/5.2.0_cvs, release/5.2.0 |
|
#
74a48255 |
| 29-Oct-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Don't use NULL to compare against a char.
Obtained from: NetBSD
|
Revision tags: release/4.9.0_cvs, release/4.9.0, release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0 |
|
#
b951fbe4 |
| 27-Jan-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Free the correct buffer in error handling. Handle that malloc may return NULL.
NetBSD Rev. 1.8
Reviewed by: phk Obtained from: NetBSD
|
Revision tags: release/5.0.0_cvs, release/5.0.0 |
|
#
9790dbfc |
| 16-Jan-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Fix memleak.
Reviewed by: rwatson MFC after: 2 weeks
|
#
fb4c8061 |
| 16-Dec-2002 |
Martin Blapp <mbr@FreeBSD.org> |
Change the name for the local unix-socket based protocol from "unix" back to "local". Add some compat stuff so both ways work for some time.
Reviewed by: phk Approved by: imp (UPDATING) Reque
Change the name for the local unix-socket based protocol from "unix" back to "local". Add some compat stuff so both ways work for some time.
Reviewed by: phk Approved by: imp (UPDATING) Requested by: iedowse, lukem@netbsd.org
show more ...
|
Revision tags: release/4.7.0_cvs, release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
d3d20c82 |
| 23-Mar-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Fix the style of the SCM ID's. I believe have made all of libc .c's as consistent as possible.
|
#
c05ac53b |
| 21-Mar-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Remove __P() usage.
|
#
8d630135 |
| 06-Feb-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Fix cc -Wall, fix rcsid warnings, add missing prototypes, change prototypes to be the same as in the original sun tirpc code. Remove ()P macro in a file where the mayority had ()P already removed. Ad
Fix cc -Wall, fix rcsid warnings, add missing prototypes, change prototypes to be the same as in the original sun tirpc code. Remove ()P macro in a file where the mayority had ()P already removed. Add them if the mayority use ()P macros.
Submitted by: mbr Requested by: bde
show more ...
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
1a154a14 |
| 12-May-2001 |
Ian Dowse <iedowse@FreeBSD.org> |
Extract the path from an AF_LOCAL sockaddr_un in a way that correctly terminates the string in all cases, based on code from netstat(1). The path in a sockaddr_un is terminated either by a '\0', or b
Extract the path from an AF_LOCAL sockaddr_un in a way that correctly terminates the string in all cases, based on code from netstat(1). The path in a sockaddr_un is terminated either by a '\0', or by the end of the sockaddr as defined by sun_len.
Previously, the code could write the "safety" '\0' beyond the end of the sockaddr (sockaddr_un's need only be large enough to store sun_len bytes), and writing into the the supplied sockaddr is bad anyway.
show more ...
|
#
f2b95b20 |
| 26-Apr-2001 |
Ian Dowse <iedowse@FreeBSD.org> |
The function __rpc_uaddr2taddr_af() converts an RPC "universal address" string to a netbuf/sockaddr "transport address". In the case of an AF_LOCAL address, it was missing the code to actually point
The function __rpc_uaddr2taddr_af() converts an RPC "universal address" string to a netbuf/sockaddr "transport address". In the case of an AF_LOCAL address, it was missing the code to actually point the netbuf at the newly allocated sockaddr_un, so the caller ended up with a netbuf containing junk.
Submitted by: Martin Blapp <mb@imp.ch>
show more ...
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
e14f19f4 |
| 08-Apr-2001 |
Ian Dowse <iedowse@FreeBSD.org> |
The maximum RPC message size was set at 8k for UDP. This is lower than the default buffer size in the old RPC code (8800 bytes), and it could not be overriden by the application. This caused problems
The maximum RPC message size was set at 8k for UDP. This is lower than the default buffer size in the old RPC code (8800 bytes), and it could not be overriden by the application. This caused problems with CFS (/usr/port/security/cfs).
Change this default back to UDPMSGSIZE (8800 bytes), but more importantly, allow applications to use larger message sizes for all protocols if desired. Choose an arbitrary maximum message size of 256k instead of using the default as the maximum (which is silly).
Reported by: ache Reviewed by: alfred, Martin Blapp <mb@imp.ch>
show more ...
|
#
9f5afc13 |
| 02-Apr-2001 |
Ian Dowse <iedowse@FreeBSD.org> |
Move the #includes of reentrant.h to after the `#include "namespace.h"', so that the underscored versions of the pthread functions get declared. This removes around 300 lines of 'implicit declaratio
Move the #includes of reentrant.h to after the `#include "namespace.h"', 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
show more ...
|
#
8360efbd |
| 19-Mar-2001 |
Alfred Perlstein <alfred@FreeBSD.org> |
Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) and associated changes that had to happen to make this possible as well as bugs fixed along the way.
Bring in required TLI library
Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) and 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
show more ...
|
Revision tags: release/7.3.0_cvs, release/7.3.0 |
|
#
f458b726 |
| 11-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
Fix a bug in the previous change: remove function-local definition of tcp_key and udp_key that shadows the global definition.
PR: threads/144558 Submitted by: Sam Robb
|
#
6f88d2a8 |
| 10-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a dedicated mutex (ts
Use thr_once() with once_t controls to initialize various thread_key_t objects used to provide per-thread storage in the RPC code. Almost all of these used double-checking with a dedicated mutex (tsd_lock) to do this before. However, that is not always safe with more relaxed memory orders. There were also other bugs, such as one in __rpc_createrr() that caused a new key to be allocated each time __rpc_createrr() was invoked.
PR: threads/144558 Reported by: Sam Robb samrobb of averesystems com (key leak) MFC after: 1 week
show more ...
|
Revision tags: release/8.0.0_cvs, release/8.0.0, release/7.2.0_cvs, release/7.2.0, release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0 |
|
#
330e445c |
| 21-Sep-2007 |
Matteo Riondato <matteo@FreeBSD.org> |
Fix some improper handling of malloc failures
PR: bin/83344 , kern/81987 Reviewed by: alfred Approved by: re (kensmith) MFC after: 1 week
|