Home | History | Annotate | Download | only in rpc
History log of /src/lib/libc/rpc/svc_run.c
RevisionDateAuthorComments
 1.30  31-Jul-2025  joe release read locks on fdset read failures to avoid blocking threads waiting on write locks

also, clear trailing whitespace
 1.29  23-Jan-2024  christos branches: 1.29.2;
fix nested extern warnings
 1.28  10-Jan-2017  christos use correct type for poll
 1.27  10-Nov-2015  christos branches: 1.27.2;
fix compilation/lint
 1.26  10-Nov-2015  christos CID 1338515: Make it clear that the pfd variable can't be NULL
 1.25  07-Nov-2015  christos PR/50408: Pedro Giffuni: Provide a way for rpc to use poll(2) instead of
select(2), and the linux svc_pollfd and svc_maxpollfd members. Our select(2)
implementation does not suffer from the FD_SETSIZE limitation so this is
not turned on by default.
 1.24  07-Nov-2015  christos check for errors and recover instead of core-dumping.
 1.23  06-Nov-2015  christos - Provide multi-threaded fdset's for everyone not just rump if requested.
- Abstract fd_set access, and don't limit the fd_set size.
- Maintain binary compatibility by keeping the old global variables around.
 1.22  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.21  05-Mar-2013  christos make this usable from RUMP
 1.20  24-Jun-2012  christos branches: 1.20.2;
fix old style definitions; XXX: gcc should have picked them up but it did not.
 1.19  18-Jan-2003  thorpej branches: 1.19.56; 1.19.58;
Merge the nathanw_sa branch.
 1.18  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.17  06-Jul-2000  christos branches: 1.17.2; 1.17.4;
add __RPC_GETXID macro
don't const castway __rpc_getconf and __rpc_getconfig. It might try to
write const strings
fix non-portable casts
remove duplicated prototypes
cast things to proper types
remove extraneous casts to NULL
fix variable cast mismatches
remove register var declarations
 1.16  04-Jun-2000  thorpej Need <string.h> for LP64 systems.
 1.15  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.14  22-Jan-2000  mycroft branches: 1.14.2;
Delint.
Remove trailing ; from uses of __weak_alias(). The macro inserts this if
needed.
 1.13  20-Jan-1999  lukem * ensure memory is released if operations fail (in authunix_create(),
xdr_callmsg(), xprt_register(), svc_tcp(), svc_udp(), etc)
* don't attempt to close a socket filedescriptor if it's -1 (some from
freebsd, some i found)
* make the initial xid a little more random (from freebsd)
* fix some spelos and tyops in comments (some from freebsd)
* use warn() instead of warnx() for many errors; the user probably
wants to know what the error code was.
* knf & whitespace nitpicks
 1.12  13-Feb-1998  lukem * in get_myaddress(); always return sockaddr_in containing localhost:PMAP_PORT.
(as recommended in Weiste Venema's portmap5_beta distribution)
* deprecate register
* use memmove instead of bcopy
* KNF includes
* use err/warn() instead of perror/fprintf(stderr,)
* fix some typos
 1.11  12-Feb-1998  lukem revert; we can't break the existing ABI and API
 1.10  10-Feb-1998  lukem major cleanup (to sync with changes made in include/rpc/*.h):
* use int32_t, size_t, in_port_t instead of long, u_int, u_short as appropriate
* use uid_t and gid_t instead of int
* KNF, fix typos and spellos
* use const as appropriate
* deprecate register
* use memmove instead of bcopy
* use err/warn()
 1.9  21-Jul-1997  jtc If port provides __weak_alias(), provide an Standard C and POSIX pure
identifier namespace by renaming non standard functions and variables
such that they have a leading underscore. The library will use those
names internally. Weak aliases are used to provide the original names
to the API.

This is only the first part of this change. It is most of the functions
which are implemented in C for all NetBSD ports. Subsequent changes are
to add the same support to the remaining C files, to assembly files, and
to the automagically generated assembly source used for system calls.
When all of the above is done, ports with weak alias support should add
a definition for __weak_alias to <sys/cdefs.h>.
 1.8  13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
Add missing prototypes
 1.7  20-Dec-1996  cgd unistd.h for prototypes, fix a couple of bogus casts to select()'s args
 1.6  25-Feb-1995  cgd branches: 1.6.4;
save my sanity; stop using Id.
 1.5  04-Jan-1995  mycroft branches: 1.5.2;
Remove local definitions of svc_maxfd.
 1.4  04-Dec-1994  cgd be much more careful with types, and add prototype everything.
 1.3  23-Aug-1994  deraadt branches: 1.3.2;
fix my dumb bug
 1.2  20-Aug-1994  deraadt rpc library no longer uses _rpc_dtablesize() internally -- keeps track
of highest active file descriptor. limit fd usage to FD_SETSIZE, until
a better solution is found. remove non-FD_SETSIZE code.
 1.1  07-Oct-1993  cgd move the rpc code into libc
 1.3.2.2  23-Aug-1994  deraadt fix my dumb bug
 1.3.2.1  23-Aug-1994  deraadt file svc_run.c was added on branch netbsd-1-0 on 1994-08-23 18:42:13 +0000
 1.5.2.1  02-May-1995  jtc #include "namespace.h"
 1.6.4.1  16-Sep-1996  jtc snapshot namespace cleanup: rpc & xdr
 1.14.2.1  23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.17.4.1  06-Jan-2003  jmc Pull up revisions 1.17-1.18 (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.17.2.2  11-Nov-2002  nathanw Catch up to -current
 1.17.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.19.58.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.19.56.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.19.56.1  30-Oct-2012  yamt sync with head
 1.20.2.1  23-Jun-2013  tls resync from head
 1.27.2.1  20-Mar-2017  pgoyette Sync with HEAD
 1.29.2.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed