aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/rpc/key_call.c
Commit message (Collapse)AuthorAgeFilesLines
* General further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-201-0/+2
| | | | | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Notes: svn path=/head/; revision=326025
* Use proper function prototypes.Craig Rodrigues2015-10-071-3/+3
| | | | | | | Eliminates -Wstrict-prototypes warning Notes: svn path=/head/; revision=288995
* Use ANSI C prototypes.Craig Rodrigues2015-09-011-31/+11
| | | | | | | Eliminates gcc 4.9 warnings. Notes: svn path=/head/; revision=287341
* Replace Sun RPC license in TI-RPC library with a 3-clause BSD license,Hiroki Sato2013-11-251-26/+25
| | | | | | | with the explicit permission of Sun Microsystems in 2009. Notes: svn path=/head/; revision=258578
* Use thr_once() with once_t controls to initialize various thread_key_tJohn Baldwin2010-03-101-7/+13
| | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=204950
* Eliminate more dead stores.Garrett Wollman2009-11-251-1/+1
| | | | | | | | Found by: Clang static analyzer MFC after: 7 days Notes: svn path=/head/; revision=199784
* Staticize a couple of functions.Daniel Eischen2006-02-271-1/+1
| | | | | | | | | Remove a few unused locks. Remove locks from application namespace. Notes: svn path=/head/; revision=156090
* Try to bring some sanity to the SCM ID's.David E. O'Brien2004-10-161-1/+0
| | | | | | | | | + spell LIBC_SCCS consistently + enable builds with LIBC_SCCS defined to not syntax error + minor SCM reformatting to try to have some consistency Notes: svn path=/head/; revision=136581
* Cast function args to silence warning.Alfred Perlstein2002-07-141-1/+2
| | | | | | | Submitted by: mbr Notes: svn path=/head/; revision=99998
* Spell void * as void * rather than caddr_t. This is complicated by theDag-Erling Smørgrav2002-04-281-21/+21
| | | | | | | | | fact that caddr_t is often misspelled as char *. Sponsored by: DARPA, NAI Labs Notes: svn path=/head/; revision=95658
* Fix the style of the SCM ID's.David E. O'Brien2002-03-221-4/+2
| | | | | | | I believe have made all of libc .c's as consistent as possible. Notes: svn path=/head/; revision=92990
* Remove __P() usage.David E. O'Brien2002-03-211-1/+1
| | | | Notes: svn path=/head/; revision=92905
* Remove 'register' keyword.David E. O'Brien2002-03-211-1/+1
| | | | Notes: svn path=/head/; revision=92889
* Fix cc -Wall, fix rcsid warnings, add missing prototypes,Alfred Perlstein2002-02-051-3/+2
| | | | | | | | | | | | 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 Notes: svn path=/head/; revision=90271
* Move the #includes of reentrant.h to after the `#include "namespace.h"',Ian Dowse2001-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 Notes: svn path=/head/; revision=75094
* Fix rcsid/$FreeBSD$.David E. O'Brien2001-03-241-2/+15
| | | | | | | Reduce diff from what I think is the original sources. Notes: svn path=/head/; revision=74712
* fix Alpha supportAlfred Perlstein2001-03-241-10/+0
| | | | Notes: svn path=/head/; revision=74710
* Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) andAlfred Perlstein2001-03-191-21/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=74462
* Remove _THREAD_SAFE and make libc thread-safe by default byDaniel Eischen2001-01-241-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | adding (weak definitions to) stubs for some of the pthread functions. If the threads library is linked in, the real pthread functions will pulled in. Use the following convention for system calls wrapped by the threads library: __sys_foo - actual system call _foo - weak definition to __sys_foo foo - weak definition to __sys_foo Change all libc uses of system calls wrapped by the threads library from foo to _foo. In order to define the prototypes for _foo(), we introduce namespace.h and un-namespace.h (suggested by bde). All files that need to reference these system calls, should include namespace.h before any standard includes, then include un-namespace.h after the standard includes and before any local includes. <db.h> is an exception and shouldn't be included in between namespace.h and un-namespace.h namespace.h will define foo to _foo, and un-namespace.h will undefine foo. Try to eliminate some of the recursive calls to MT-safe functions in libc/stdio in preparation for adding a mutex to FILE. We have recursive mutexes, but would like to avoid using them if possible. Remove uneeded includes of <errno.h> from a few files. Add $FreeBSD$ to a few files in order to pass commitprep. Approved by: -arch Notes: svn path=/head/; revision=71579
* Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(),Jason Evans2000-01-271-1/+1
| | | | | | | | | | | | | | | | | | | | just use _foo() <-- foo(). In the case of a libpthread that doesn't do call conversion (such as linuxthreads and our upcoming libpthread), this is adequate. In the case of libc_r, we still need three names, which are now _thread_sys_foo() <-- _foo() <-- foo(). Convert all internal libc usage of: aio_suspend(), close(), fsync(), msync(), nanosleep(), open(), fcntl(), read(), and write() to _foo() instead of foo(). Remove all internal libc usage of: creat(), pause(), sleep(), system(), tcdrain(), wait(), and waitpid(). Make thread cancellation fully POSIX-compliant. Suggested by: deischen Notes: svn path=/head/; revision=56698
* Add three-tier symbol naming in support of POSIX thread cancellationJason Evans2000-01-121-1/+3
| | | | | | | | | points. For library functions, the pattern is __sleep() <-- _libc_sleep() <-- sleep(). The arrows represent weak aliases. For system calls, the pattern is _read() <-- _libc_read() <-- read(). Notes: svn path=/head/; revision=55837
* Now the biggest step: import the changes to the main RPC code.Bill Paul1997-05-281-0/+425
Note: you'll need to rinstalkl all your includes before compiling libc the next time you update your sources in order for all this to work. Reviewed by: Mark Murray Notes: svn path=/cvs2svn/branches/WPAUL/dist/; revision=26219