History log of /netbsd-current/lib/libc/net/nsdispatch.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.39 19-Apr-2022 rillig

lib: remove CONSTCOND comment

Since 2021-01-31, lint doesn't need it anymore for the common pattern of
'do ... while (0)'.


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 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 pgoyette-compat-base 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 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.38 18-Sep-2014 christos

make more descriptors that we open as close-on-exec


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-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 agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6 tls-maxphys-base yamt-pagecache-base5 yamt-pagecache-base4
# 1.37 13-Mar-2012 christos

PR/45989: Martin Husemann: lint invocation does include -w only on i386

- turn lint -w for all the platforms after fixing the lint warnings.
- add _DIAGASSERTS() for casts that would assign values to types that
would not fit.
- change types, add casts
- change into ansii prototypes
- turn on _DIAGNOSTIC for libc (during current, to be eliminated for release
builds)

approved by core@


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 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 cherry-xenmp-base bouyer-quota2-nbase
# 1.36 22-Feb-2011 joerg

branches: 1.36.4;
Introduce __weakref_visible to handle the different required visibility
for weak references. GCC 4.2+ and Clang require static, older GCC wants
extern. Change __weak_reference to include sym. This requires changes
the existing users to not reuse the name of the symbol, but avoids
further differences between GCC 4.1 and GCC 4.2+/clang.


# 1.35 18-Feb-2011 joerg

Support the different weakref semantic in GCC 4.2 and clang.


Revision tags: bouyer-quota2-base matt-mips64-premerge-20101231 matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
# 1.34 05-Feb-2009 lukem

branches: 1.34.4;
sign-compare fix


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
# 1.33 17-Aug-2008 gmcgarry

branches: 1.33.6;
Changee __attribute(__weak__) to __weak_reference(). Produces same object code
and matches lib/csu/common_elf/common.h. Fixes linkage with PCC.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
# 1.32 28-Apr-2008 martin

branches: 1.32.2;
Remove clause 3 and 4 from TNF licenses


Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base wrstuden-fixsa-base netbsd-4-base
# 1.31 15-Oct-2006 christos

branches: 1.31.16;
fix incomplete initializers


Revision tags: abandoned-netbsd-4-base
# 1.30 29-Nov-2005 christos

WARNS=4


# 1.29 26-Jun-2005 thorpej

_nsdispatching needs to count, not just be 1 or 0. Also shuffle around
its use a little to eliminate some duplication.


Revision tags: netbsd-3-base
# 1.28 10-Nov-2004 lukem

branches: 1.28.2;
* Improve the comments in <nsswitch.h>
* Provide some more useful default ns_src arrays.


# 1.27 04-Oct-2004 lukem

* Re-number NS_FORCEALL from 1<<7 to 1<<8, moving it out of the "public"
bitrange for nsdispatch(3) return values.
* Tweak documentation comments in nsswitch.h
* Ensure the result from the back-end method is masked with
NS_STATUSMASK before nsdispatch(3) returns it.


# 1.26 29-Sep-2004 lukem

Implement NS_FORCEALL, which may be set in defaults[0].flags by a caller of
nsdispatch(3) to indicate that all available database methods for a source
will be invoked. This is useful for functions such as endgrent(3).


# 1.25 28-Sep-2004 lukem

also ensure defaults != NULL


# 1.24 08-Sep-2004 simonb

Fix non-ELF case in _nsloadmod().


# 1.23 02-Aug-2004 thorpej

Prevent a deadlock that could occur if we try to update the configuration
data structures during a recursive call to nsdispatch() by keeping a record
of which threads are inside nsdispatch() at any given time.


# 1.22 24-Jul-2004 thorpej

Add support for dynamically loading nsswitch modules on ELF platforms.
Adapted from FreeBSD. Maintains full backward API / ABI compatbility
with built-in-only nsdispatch().

While here, also make nsdispatch() itself thread-safe.


# 1.21 16-Jul-2004 thorpej

Use ANSI function decls.


# 1.20 24-May-2004 christos

remove stray NSUNLOCK(); pointed out by Brian Ginsbach.


# 1.19 23-May-2004 christos

make this thread-safe.


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 nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 1.18 26-May-2002 wiz

__STDC__ is always defined on NetBSD.


Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 1.17 20-Dec-2000 christos

branches: 1.17.2;
remove redundant declarations.


Revision tags: netbsd-1-5-PATCH003 netbsd-1-5-PATCH002 netbsd-1-5-PATCH001 netbsd-1-5-RELEASE netbsd-1-5-BETA2 netbsd-1-5-BETA netbsd-1-5-ALPHA2 netbsd-1-5-base minoura-xpg4dl-base
# 1.16 22-Jan-2000 mycroft

Delint.
Remove trailing ; from uses of __weak_alias(). The macro inserts this if
needed.


Revision tags: wrstuden-devbsize-19991221 wrstuden-devbsize-base
# 1.15 28-Nov-1999 lukem

don't use err(); instead pass an error condition back to a higher
layer to warn() about.


Revision tags: comdex-fall-1999-base
# 1.14 20-Sep-1999 lukem

branches: 1.14.4;
back out the #ifdef _DIAGNOSTIC argument checks; too many people complained.
_DIAGASSERT() is still retained.


# 1.13 16-Sep-1999 lukem

return NS_UNAVAIL if args are dodgy


# 1.12 16-Sep-1999 lukem

* use _DIAGASSERT() to check pointer arguments against NULL and file
descriptors against -1 (as appropriate).
* add actual checks which to detect stuff that would trigger_DIAGASSERT(),
and attempt to return a sane error condition.
* knf some code
* remove some `register' decls.

the first two items result in the addition of code similar to the
following in various functions:

_DIAGASSERT(path != NULL)
#ifdef _DIAGNOSTIC
if (path == NULL) {
errno = EFAULT;
return (-1);
}
#endif


# 1.11 03-May-1999 christos

sprinkle argsused till lint smiles at you.


# 1.10 18-Apr-1999 lukem

specifically include stdarg/varargs.h


Revision tags: netbsd-1-4-PATCH003 netbsd-1-4-PATCH002 netbsd-1-4-PATCH001 netbsd-1-4-RELEASE netbsd-1-4-base
# 1.9 25-Jan-1999 lukem

add rcsids


# 1.8 20-Jan-1999 lukem

minor knf; don't exceed 80 columns ;)


# 1.7 20-Jan-1999 christos

- add ARGSUSED
- remove unnecessary casts
- const poisoning


# 1.6 20-Jan-1999 lukem

weak_alias nsdispatch


# 1.5 19-Jan-1999 lukem

* support extra two arguments to nsdispatch():
const char *method /* method name for dynamic linking */
const ns_src defaults[] /* list of defaults */
* document above, and expand other docco.


# 1.4 17-Jan-1999 lukem

fix thinko introduced in last rototilling of nsdispatch; _nsdbtget()
would always return the entry for the first entry looked up. noted by
andrew gillham (manifesting itself as ftp failing to lookup names).


# 1.3 16-Jan-1999 lukem

remove debugging override of _PATH_NS_CONF


# 1.2 15-Jan-1999 lukem

merge nsswitch into main branch


# 1.1 06-Nov-1996 lukem

branches: 1.1.2; 1.1.4;
file nsdispatch.c was initially added on branch nsswitch.