History log of /netbsd-current/lib/libc/rpc/clnt_dg.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.33 23-Jan-2024 christos

fix nested extern warnings


Revision tags: netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
# 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.


Revision tags: netbsd-9-3-RELEASE cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
# 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.


Revision tags: agc-symver-base
# 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


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 yamt-pagecache-base5 yamt-pagecache-base4
# 1.26 20-Mar-2012 matt

branches: 1.26.2;
Use C89 definitions
Remove use of __P


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
# 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.


Revision tags: cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.24 08-Dec-2010 joerg

branches: 1.24.4;
Use __isthreaded from reentrant.h and don't redeclare it.


Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
# 1.23 12-Feb-2009 lukem

sign-compare fixes


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 christos-time_t-nbase christos-time_t-base netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
# 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


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking cube-autoconf-base matt-armv6-base matt-mips64-base hpcarm-cleanup-base
# 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.


Revision tags: abandoned-netbsd-4-base netbsd-4-base
# 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.


Revision tags: netbsd-3-0-RC1 netbsd-3-base
# 1.14 30-Dec-2004 christos

branches: 1.14.2;
cast to socklen_t/size_t


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 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.


Revision tags: nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 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.


Revision tags: netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 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


Revision tags: netbsd-1-5-base
# 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.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.


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
# 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.


Revision tags: agc-symver-base
# 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


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 yamt-pagecache-base5 yamt-pagecache-base4
# 1.26 20-Mar-2012 matt

branches: 1.26.2;
Use C89 definitions
Remove use of __P


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
# 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.


Revision tags: cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.24 08-Dec-2010 joerg

branches: 1.24.4;
Use __isthreaded from reentrant.h and don't redeclare it.


Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
# 1.23 12-Feb-2009 lukem

sign-compare fixes


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 christos-time_t-nbase christos-time_t-base netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
# 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


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking cube-autoconf-base matt-armv6-base matt-mips64-base hpcarm-cleanup-base
# 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.


Revision tags: abandoned-netbsd-4-base netbsd-4-base
# 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.


Revision tags: netbsd-3-0-RC1 netbsd-3-base
# 1.14 30-Dec-2004 christos

branches: 1.14.2;
cast to socklen_t/size_t


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 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.


Revision tags: nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 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.


Revision tags: netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 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


Revision tags: netbsd-1-5-base
# 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.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.


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
# 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.


Revision tags: agc-symver-base
# 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


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 yamt-pagecache-base5 yamt-pagecache-base4
# 1.26 20-Mar-2012 matt

branches: 1.26.2;
Use C89 definitions
Remove use of __P


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
# 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.


Revision tags: cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.24 08-Dec-2010 joerg

branches: 1.24.4;
Use __isthreaded from reentrant.h and don't redeclare it.


Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
# 1.23 12-Feb-2009 lukem

sign-compare fixes


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 christos-time_t-nbase christos-time_t-base netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
# 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


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking cube-autoconf-base matt-armv6-base matt-mips64-base hpcarm-cleanup-base
# 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.


Revision tags: abandoned-netbsd-4-base netbsd-4-base
# 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.


Revision tags: netbsd-3-0-RC1 netbsd-3-base
# 1.14 30-Dec-2004 christos

branches: 1.14.2;
cast to socklen_t/size_t


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 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.


Revision tags: nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 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.


Revision tags: netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 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


Revision tags: netbsd-1-5-base
# 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.30 21-Aug-2021 andvar

fix mainly same typos as in my previous commit but outside sys/dev/dm.


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
# 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.


Revision tags: agc-symver-base
# 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


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 yamt-pagecache-base5 yamt-pagecache-base4
# 1.26 20-Mar-2012 matt

branches: 1.26.2;
Use C89 definitions
Remove use of __P


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
# 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.


Revision tags: cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.24 08-Dec-2010 joerg

branches: 1.24.4;
Use __isthreaded from reentrant.h and don't redeclare it.


Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
# 1.23 12-Feb-2009 lukem

sign-compare fixes


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 christos-time_t-nbase christos-time_t-base netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
# 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


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking cube-autoconf-base matt-armv6-base matt-mips64-base hpcarm-cleanup-base
# 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.


Revision tags: abandoned-netbsd-4-base netbsd-4-base
# 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.


Revision tags: netbsd-3-0-RC1 netbsd-3-base
# 1.14 30-Dec-2004 christos

branches: 1.14.2;
cast to socklen_t/size_t


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 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.


Revision tags: nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 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.


Revision tags: netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 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


Revision tags: netbsd-1-5-base
# 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.