Home | History | Annotate | Download | only in rpc
History log of /src/lib/libc/rpc/clnt_dg.c
RevisionDateAuthorComments
 1.33  23-Jan-2024  christos fix nested extern warnings
 1.32  24-Jan-2022  andvar s/begining/beginning/ in comments and messages.
 1.31  05-Dec-2021  msaitoh s/succesful/successful/ in comment.
 1.30  21-Aug-2021  andvar fix mainly same typos as in my previous commit but outside sys/dev/dm.
 1.29  07-May-2013  christos - add __clnt_sigfillset() that does not blindly block all signals but excludes
the tty generated ones (int, quit, tstp), plus term and hup. This makes
command line clients behave on connect(2) where before they would need
to be killed from a different tty. Much easier than making the file
descriptor non-blocking for the duration of connect and then using
pselect/pollts to detect when actual connection or timeout occured using
a different sigmask.
- factor out some of the error paths.
 1.28  11-Mar-2013  tron Replace previous Sun Microsystems, Inc. license with a standard
BSD 3-clause license granted by Oracle America, Inc..
This license change was approved by Wim Coekaerts, Senior Vice President,
Linux and Virtualization at Oracle Corporation.

This fixes PR lib/45293 by Pedro Giffuni.
 1.27  05-Mar-2013  christos make this usable from RUMP
 1.26  20-Mar-2012  matt branches: 1.26.2;
Use C89 definitions
Remove use of __P
 1.25  20-Jun-2011  mrg branches: 1.25.2; 1.25.4;
various build fixes for gcc 4.5. from chuq. XXX i'm not sure all of
these work properly wtf pointer aliasing, but there are no casts at
least...

the lib/libpuffs/puffs_priv.h is definately a real bug fix.

from chuq.
 1.24  08-Dec-2010  joerg branches: 1.24.4;
Use __isthreaded from reentrant.h and don't redeclare it.
 1.23  12-Feb-2009  lukem sign-compare fixes
 1.22  25-Apr-2008  christos branches: 1.22.8; 1.22.10;
- always check malloc results
- don't leak fds on error
- don't cast malloc
- don't cast NULL
 1.21  19-Feb-2007  chs branches: 1.21.10;
switch from kqueue() back to pollts() so that signals will be unblocked
while we're sleeping. keep the new timeout logic, though.
as discussed on source-changes some 15 months ago.
 1.20  03-Dec-2005  yamt branches: 1.20.4;
- constify and remove __UNCONST from caller of clnt_call().
- use __UNCONST where approproate.
 1.19  07-Nov-2005  christos remove _REENTRANT bogus signal mask code; pointed out by chuq.
 1.18  13-Oct-2005  rpaulo Use the kqueue(2) framework instead of the poll(2) system call to wait
for replies and timeouts in the conectionless (UDP) RPC client
code. Based on similar changes from FreeBSD in rev 1.15.

Reviewed by Christos Zoulas.
 1.17  10-Sep-2005  jmmv Fix build: maskp should be a pointer to a sigset_t. Hi, christos@!
 1.16  09-Sep-2005  christos PR/31264: Mark Davies: rup not interruptable
The cause of this is that in the re-entrant case we block all signals until
we timeout. Convert this to use pollts and then grab the pending signals
and sigsuspend them.
XXX: We should really convert this to use kqueue, like FreeBSD did.
 1.15  09-Jun-2005  yamt use malloc rather than mem_alloc (which is implemented using calloc)
for receive/send buffers to avoid unnecessarily anonymous memory bloat.
 1.14  30-Dec-2004  christos branches: 1.14.2;
cast to socklen_t/size_t
 1.13  22-Oct-2003  drochner -don't update the RPC server address with the reply's sender address;
this breaks server failover under some circumstances, and Solaris doesn't
seem to do it either
-minor cleanup
approved by fvdl
 1.12  09-Sep-2003  itojun __RCSID police
 1.11  09-Sep-2003  itojun use niels provos' random sequence number generator to initialize RPC XID.
 1.10  06-Jun-2003  yamt add a missing release_fd_lock.
 1.9  18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.8  08-Nov-2002  fvdl * Adapt include files for rpc_com.h/rpc_internal.h split.
* Add rpc_control to svc.c
* Implement non-blocking connections.
 1.7  04-Jan-2001  lukem branches: 1.7.2; 1.7.4;
sprinkle _DIAGASSERT() appropriately. minor other cleanups
 1.6  20-Dec-2000  christos oops fix previous typos.
 1.5  20-Dec-2000  christos appease lint casts
 1.4  14-Jul-2000  fvdl Use explicit int32 get/put macros. Needed for 64bit big-endian systems.
 1.3  06-Jul-2000  christos remove register
adjust types to match functions
elide non-portable casts
cast to proper types
 1.2  04-Jun-2000  thorpej branches: 1.2.2; 1.2.4;
Get <string.h> so this builds on LP64.
 1.1  02-Jun-2000  fvdl Add new RPC code, based on Sun's TI-RPC code. Adapted to not use XTI,
but sockets instead, internally. Old, backward compatible interfaces
maintained.
 1.2.4.2  23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2.4.1  04-Jun-2000  minoura file clnt_dg.c was added on branch minoura-xpg4dl on 2000-06-23 16:17:40 +0000
 1.2.2.1  14-Jul-2000  fvdl Pullup from trunk: use explicit 32 bit operations and types where
appropriate, to make things work on 64bit BE systems.
 1.7.4.1  06-Jan-2003  jmc Pull up revisions 1.7-1.8 (requested by fvdl in ticket #1037)
* Adapt include files for rpc_com.h/rpc_internal.h split.
* Implement non-blocking connections.
* Add rpc_control to svc.c
 1.7.2.4  11-Nov-2002  nathanw Catch up to -current
 1.7.2.3  18-Dec-2001  nathanw Delint by changing an int variable to size_t.
 1.7.2.2  16-Nov-2001  thorpej clnt_dg_call(): delete unused variable "dtbsize".
 1.7.2.1  08-Aug-2001  nathanw Convert to our threading style.
__REENT -> _REENTRANT
Statically initialize mutexes.
Use pthread thread-specific data semantics and once_t instead of Sun thread
semantics.
Use __isthreaded to detect presence of thread universe instead of _thr_main().
 1.14.2.3  21-Nov-2005  tron Pull up following revision(s) (requested by chs in ticket #964):
lib/libc/rpc/clnt_dg.c: revision 1.17
Fix build: maskp should be a pointer to a sigset_t. Hi, christos@!
 1.14.2.2  21-Nov-2005  tron Pull up following revision(s) (requested by chs in ticket #964):
lib/libc/rpc/clnt_dg.c: revision 1.16
PR/31264: Mark Davies: rup not interruptable
The cause of this is that in the re-entrant case we block all signals until
we timeout. Convert this to use pollts and then grab the pending signals
and sigsuspend them.
XXX: We should really convert this to use kqueue, like FreeBSD did.
 1.14.2.1  21-Nov-2005  tron Pull up following revision(s) (requested by chs in ticket #964):
lib/libc/rpc/svc_dg.c: revision 1.11
lib/libc/rpc/clnt_dg.c: revision 1.15
lib/libc/rpc/svc_raw.c: revision 1.18
lib/libc/rpc/xdr_rec.c: revision 1.25
lib/libc/rpc/clnt_raw.c: revision 1.26
use malloc rather than mem_alloc (which is implemented using calloc)
for receive/send buffers to avoid unnecessarily anonymous memory bloat.
 1.20.4.1  10-Mar-2007  bouyer Pull up following revision(s) (requested by chs in ticket #505):
lib/libc/rpc/clnt_dg.c: revision 1.21
switch from kqueue() back to pollts() so that signals will be unblocked
while we're sleeping. keep the new timeout logic, though.
as discussed on source-changes some 15 months ago.
 1.21.10.1  18-May-2008  yamt sync with head.
 1.22.10.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.22.8.2  25-Apr-2008  christos - always check malloc results
- don't leak fds on error
- don't cast malloc
- don't cast NULL
 1.22.8.1  25-Apr-2008  christos file clnt_dg.c was added on branch christos-time_t on 2008-04-25 17:44:45 +0000
 1.24.4.1  23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.25.4.1  14-Mar-2013  riz Pull up following revision(s) (requested by tron in ticket #843):
lib/libc/rpc/clnt_dg.c: revision 1.28
lib/libc/rpc/xdr_sizeof.c: revision 1.5
lib/libc/rpc/pmap_getport.c: revision 1.19
lib/libc/rpc/xdr_mem.c: revision 1.19
lib/libc/rpc/svc_run.c: revision 1.22
lib/libc/rpc/bindresvport.c: revision 1.25
lib/libc/rpc/svc_raw.c: revision 1.24
lib/libc/rpc/svc_dg.c: revision 1.17
lib/libc/rpc/getnetconfig.c: revision 1.21
lib/libc/rpc/auth_unix.c: revision 1.25
lib/libc/rpc/svc_auth.c: revision 1.17
lib/libc/rpc/clnt_vc.c: revision 1.21
lib/libc/rpc/svc_auth_unix.c: revision 1.21
lib/libc/rpc/rpcb_st_xdr.c: revision 1.10
lib/libc/rpc/pmap_getmaps.c: revision 1.18
lib/libc/rpc/getnetpath.c: revision 1.17
lib/libc/rpc/clnt_simple.c: revision 1.32
lib/libc/rpc/authunix_prot.c: revision 1.16
lib/libc/rpc/svc_dg.h: revision 1.2
lib/libc/rpc/svc_generic.c: revision 1.15
lib/libc/rpc/clnt_raw.c: revision 1.32
lib/libc/rpc/xdr_array.c: revision 1.19
lib/libc/rpc/pmap_prot.c: revision 1.12
lib/libc/rpc/clnt_bcast.c: revision 1.26
lib/libc/rpc/xdr_rec.c: revision 1.35
lib/libc/rpc/svc.c: revision 1.34
lib/libc/rpc/DISCLAIMER: revision 1.3
lib/libc/rpc/clnt_generic.c: revision 1.30
lib/libc/rpc/xdr.c: revision 1.33
lib/libc/rpc/auth_none.c: revision 1.16
lib/libc/rpc/pmap_rmt.c: revision 1.34
lib/libc/rpc/rpc_callmsg.c: revision 1.20
lib/libc/rpc/clnt_perror.c: revision 1.30
lib/libc/rpc/xdr_stdio.c: revision 1.19
lib/libc/rpc/rpc_commondata.c: revision 1.9
lib/libc/rpc/pmap_prot2.c: revision 1.17
lib/libc/rpc/pmap_clnt.c: revision 1.19
lib/libc/rpc/svc_simple.c: revision 1.33
lib/libc/rpc/rpcb_clnt.c: revision 1.29
lib/libc/rpc/rpc_prot.c: revision 1.21
lib/libc/rpc/rpc_dtablesize.c: revision 1.16
lib/libc/rpc/rpc_generic.c: revision 1.28
lib/libc/rpc/xdr_reference.c: revision 1.18
lib/libc/rpc/rpc_soc.c: revision 1.18
lib/libc/rpc/svc_vc.c: revision 1.30
lib/libc/rpc/getrpcent.c: revision 1.23
lib/libc/rpc/xdr_float.c: revision 1.38
lib/libc/rpc/rpcb_prot.c: revision 1.11
lib/libc/rpc/getrpcport.c: revision 1.18
Replace previous Sun Microsystems, Inc. license with a standard
BSD 3-clause license granted by Oracle America, Inc..
This license change was approved by Wim Coekaerts, Senior Vice President,
Linux and Virtualization at Oracle Corporation.
This fixes PR lib/45293 by Pedro Giffuni.
 1.25.2.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.25.2.1  17-Apr-2012  yamt sync with head
 1.26.2.1  23-Jun-2013  tls resync from head

RSS XML Feed