Home | History | Annotate | only in /src/lib/libc/db/btree
History log of /src/lib/libc/db/btree
RevisionDateAuthorComments
 1.6 03-May-1996  cgd merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 01-Aug-1993  mycroft Add RCS identifiers.
 1.2 14-Jun-1993  cgd update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.2 17-Aug-1994  cgd update to db 1.79
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file Makefile.inc was added on branch netbsd-1-0 on 1994-08-18 00:39:33 +0000
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 14-Jun-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.17 24-Sep-2016  christos remove mpool_getf
 1.16 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.15 31-Aug-2016  christos don't shortcut closing if the metadata is dirty (from the krb5 tree)
 1.14 11-Sep-2008  joerg branches: 1.14.6; 1.14.44;
Consistently include "nbtool_config.h" when cross-compiling.
 1.13 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.12 03-Feb-2007  christos branches: 1.12.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.11 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.10 22-Jan-2002  thorpej Don't pull in <sys/param.h> if we don't have to.
 1.9 21-Jul-1997  jtc branches: 1.9.14;
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.
 1.7 03-May-1996  cgd branches: 1.7.2;
merge DB 1.85 changes
 1.6 27-Feb-1995  cgd add unintrusive Ids
 1.5 18-Aug-1994  cgd branches: 1.5.2; 1.5.4;
clean up import
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.5.4.1 02-May-1995  jtc #include "namespace.h"
 1.5.2.2 18-Aug-1994  cgd clean up import
 1.5.2.1 18-Aug-1994  cgd file bt_close.c was added on branch netbsd-1-0 on 1994-08-18 00:39:36 +0000
 1.7.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.9.14.1 28-Jan-2002  nathanw Catch up to -current.
 1.12.12.1 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.14.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.14.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.14.6.1 11-Sep-2008  joerg file bt_close.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.15 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.14 10-Sep-2008  joerg branches: 1.14.6; 1.14.44;
In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.13 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.12 03-Feb-2007  christos branches: 1.12.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.11 20-Jun-2004  jmc Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
 1.10 07-Aug-2003  agc branches: 1.10.2;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.9 22-Jan-2002  thorpej Don't pull in <sys/param.h> if we don't have to.
 1.8 09-Dec-1998  christos branches: 1.8.12;
delint
 1.7 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.6 03-May-1996  cgd merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_conv.c was added on branch netbsd-1-0 on 1994-08-18 00:39:38 +0000
 1.8.12.1 28-Jan-2002  nathanw Catch up to -current.
 1.10.2.1 22-Jun-2004  tron Pull up revision 1.11 (requested by jmc in ticket #527):
Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')
Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).
Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.
Fixes PR's: PR#17762 PR#25944
 1.12.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.12.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.14.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.14.6.2 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.14.6.1 10-Sep-2008  joerg file bt_conv.c was added on branch christos-time_t on 2008-09-10 17:52:36 +0000
 1.19 09-Oct-2016  joerg Fix syntax for currently not compiled in code. From Henning Petersen in
PR lib/51538.
 1.18 24-Sep-2016  christos remove mpool_getf
 1.17 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.16 17-Jul-2011  christos branches: 1.16.24;
fix type punned warnings in debugging code.
 1.15 10-Sep-2008  joerg branches: 1.15.6;
In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.14 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.13 03-Feb-2007  christos branches: 1.13.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.12 24-Jan-2006  christos appease lint and gcc. (compile with -DDEBUG)
 1.11 20-Jun-2004  jmc Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
 1.10 07-Aug-2003  agc branches: 1.10.2;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.9 22-Jan-2002  thorpej Don't pull in <sys/param.h> if we don't have to.
 1.8 12-Jan-2002  aymeric fix printf(3) warnings when defined(DEBUG)
 1.7 13-Jul-1997  christos branches: 1.7.14;
Fix RCSID's
Fix gcc warnings.
 1.6 03-May-1996  cgd branches: 1.6.2;
merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_debug.c was added on branch netbsd-1-0 on 1994-08-18 00:39:42 +0000
 1.6.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.7.14.1 28-Jan-2002  nathanw Catch up to -current.
 1.10.2.1 22-Jun-2004  tron Pull up revision 1.11 (requested by jmc in ticket #527):
Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')
Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).
Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.
Fixes PR's: PR#17762 PR#25944
 1.13.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.13.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.15.6.2 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.15.6.1 10-Sep-2008  joerg file bt_debug.c was added on branch christos-time_t on 2008-09-10 17:52:36 +0000
 1.16.24.1 04-Nov-2016  pgoyette Sync with HEAD
 1.19 24-Sep-2016  christos remove mpool_getf
 1.18 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.17 29-Jan-2009  lukem branches: 1.17.30;
sign-compare fixes
 1.16 11-Sep-2008  joerg branches: 1.16.6;
Consistently include "nbtool_config.h" when cross-compiling.
 1.15 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.14 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.13 03-Feb-2007  christos branches: 1.13.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.12 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.11 16-Mar-1999  christos Adding missing braces that gcc-2.8.1 likes.
 1.10 09-Dec-1998  christos delint
 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.
 1.7 03-May-1996  cgd branches: 1.7.2;
merge DB 1.85 changes
 1.6 27-Feb-1995  cgd add unintrusive Ids
 1.5 18-Aug-1994  cgd branches: 1.5.2;
clean up import
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.5.2.2 18-Aug-1994  cgd clean up import
 1.5.2.1 18-Aug-1994  cgd file bt_delete.c was added on branch netbsd-1-0 on 1994-08-18 00:39:46 +0000
 1.7.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.13.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.13.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.16.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.16.6.1 11-Sep-2008  joerg file bt_delete.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.17.30.1 04-Nov-2016  pgoyette Sync with HEAD
 1.13 11-Sep-2008  joerg branches: 1.13.6;
Consistently include "nbtool_config.h" when cross-compiling.
 1.12 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.11 03-Feb-2007  christos branches: 1.11.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.10 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 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.
 1.7 03-May-1996  cgd branches: 1.7.2;
merge DB 1.85 changes
 1.6 27-Feb-1995  cgd add unintrusive Ids
 1.5 18-Aug-1994  cgd branches: 1.5.2;
clean up import
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.5.2.2 18-Aug-1994  cgd clean up import
 1.5.2.1 18-Aug-1994  cgd file bt_get.c was added on branch netbsd-1-0 on 1994-08-18 00:39:49 +0000
 1.7.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.11.12.1 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.13.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.13.6.1 11-Sep-2008  joerg file bt_get.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.29 24-Sep-2016  christos remove mpool_getf
 1.28 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.27 01-Dec-2013  christos branches: 1.27.8;
- centralize opening of regular and temp files to avoid code duplication
- don't cast malloc
- use malloc sizeof(*var) instead of sizeof(type)
 1.26 13-Mar-2012  christos branches: 1.26.2;
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@
 1.25 17-Apr-2011  christos branches: 1.25.4;
Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD.
(the bt one was ok, but set errno and make it the same for consistency).
[to be pulled up]
 1.24 11-Sep-2008  joerg branches: 1.24.4; 1.24.6; 1.24.10; 1.24.14;
Consistently include "nbtool_config.h" when cross-compiling.
 1.23 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.22 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.21 03-Feb-2007  christos branches: 1.21.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.20 03-Nov-2006  christos branches: 1.20.2;
use FD_CLOEXEC instead of 1.
 1.19 26-Mar-2006  rtr set close-on-exec flag for fd to database like type DB_HASH does
approved by christos@
 1.18 19-Jan-2005  mycroft hash already uses FD_CLOEXEC -- pay attention to the return value and make it
a hard failure.

Also make btree and recno uses FD_CLOEXEC.
 1.17 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.16 11-Nov-2002  thorpej Fix signed/unsigned comparison warnings.
 1.15 16-Apr-2002  groo Do not respect TMPDIR when s[ug]id.
from xs@kittenz.org
 1.14 22-Jan-2002  thorpej Don't pull in <sys/param.h> if we don't have to.
 1.13 09-Dec-1998  christos branches: 1.13.10; 1.13.12;
delint
 1.12 07-May-1998  kleink Change the file mode argument to dbopen() and the db backends from int to
mode_t.
 1.11 07-Apr-1998  fair /tmp to _PATH_TMP from paths.h
 1.10 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.9 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.8 03-May-1996  cgd branches: 1.8.2;
merge DB 1.85 changes
 1.7 27-Feb-1995  cgd add unintrusive Ids
 1.6 18-Aug-1994  cgd branches: 1.6.2; 1.6.4;
clean up import
 1.5 17-Sep-1993  cgd version 1.71 of new db code
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.6.4.1 02-May-1995  jtc #include "namespace.h"
 1.6.2.2 18-Aug-1994  cgd clean up import
 1.6.2.1 18-Aug-1994  cgd file bt_open.c was added on branch netbsd-1-0 on 1994-08-18 00:39:51 +0000
 1.8.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.13.12.3 11-Nov-2002  nathanw Catch up to -current
 1.13.12.2 25-Apr-2002  nathanw Catch up to -current.
 1.13.12.1 28-Jan-2002  nathanw Catch up to -current.
 1.13.10.1 17-Apr-2002  he Pull up revision 1.15 (via patch, requested by groo):
Do not respect TMPDIR when setuid or setgid.
 1.20.2.1 08-May-2011  bouyer Pull up following revision(s) (requested by christos in ticket #1428):
lib/libc/db/hash/hash_page.c: revision 1.24
lib/libc/db/btree/bt_open.c: revision 1.25
Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD.
(the bt one was ok, but set errno and make it the same for consistency).
[to be pulled up]
 1.21.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.21.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.24.14.1 19-May-2011  bouyer Pull up following revision(s) (requested by christos in ticket #1602):
lib/libc/db/hash/hash_page.c: revision 1.24
lib/libc/db/btree/bt_open.c: revision 1.25
Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD.
(the bt one was ok, but set errno and make it the same for consistency).
[to be pulled up]
 1.24.10.1 19-May-2011  bouyer Pull up following revision(s) (requested by christos in ticket #1602):
lib/libc/db/hash/hash_page.c: revision 1.24
lib/libc/db/btree/bt_open.c: revision 1.25
Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD.
(the bt one was ok, but set errno and make it the same for consistency).
[to be pulled up]
 1.24.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.24.6.1 11-Sep-2008  joerg file bt_open.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.24.4.1 19-May-2011  bouyer Pull up following revision(s) (requested by christos in ticket #1602):
lib/libc/db/hash/hash_page.c: revision 1.24
lib/libc/db/btree/bt_open.c: revision 1.25
Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD.
(the bt one was ok, but set errno and make it the same for consistency).
[to be pulled up]
 1.25.4.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.4.1 17-Apr-2012  yamt sync with head
 1.26.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.27.8.1 04-Nov-2016  pgoyette Sync with HEAD
 1.22 24-Sep-2016  christos remove mpool_getf
 1.21 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.20 14-Dec-2013  christos branches: 1.20.8;
It's been many years since realloc(NULL, size) == malloc(size). Also don't
destroy pointers on allocation errors so someone can free them later.
 1.19 01-Dec-2013  christos - centralize opening of regular and temp files to avoid code duplication
- don't cast malloc
- use malloc sizeof(*var) instead of sizeof(type)
 1.18 13-Mar-2012  christos branches: 1.18.2;
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@
 1.17 26-Jun-2011  christos branches: 1.17.2;
- use sizeof(var) instead of sizeof(type)
- remove useless cast
 1.16 11-Sep-2008  joerg branches: 1.16.6;
Consistently include "nbtool_config.h" when cross-compiling.
 1.15 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.14 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.13 03-Feb-2007  christos branches: 1.13.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.12 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.11 20-Jan-2003  simonb Grrr. So much for my ability to use grep(1) effectively. Pointed out
by Stephen Degler in private mail.
 1.10 20-Jan-2003  simonb The Double-Semi-Colon Police.
 1.9 09-Dec-1998  christos delint
 1.8 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.7 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.6 03-May-1996  cgd branches: 1.6.2;
merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_overflow.c was added on branch netbsd-1-0 on 1994-08-18 00:39:54 +0000
 1.6.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.13.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.13.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.16.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.16.6.1 11-Sep-2008  joerg file bt_overflow.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.17.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.17.2.1 17-Apr-2012  yamt sync with head
 1.18.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.20.8.1 04-Nov-2016  pgoyette Sync with HEAD
 1.15 24-Sep-2016  christos remove mpool_getf
 1.14 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.13 11-Sep-2008  joerg branches: 1.13.6; 1.13.44;
Consistently include "nbtool_config.h" when cross-compiling.
 1.12 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.11 03-Feb-2007  christos branches: 1.11.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.10 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.9 10-Oct-1997  is Bug fixes from Sleepycat Software for db_btree databases; for some corner
cases in splitting pages, and for correctly updating data base metadata.
 1.8 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.7 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.6 03-May-1996  cgd branches: 1.6.2;
merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_page.c was added on branch netbsd-1-0 on 1994-08-18 00:39:57 +0000
 1.6.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.11.12.1 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.13.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.13.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.13.6.1 11-Sep-2008  joerg file bt_page.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.22 24-Sep-2016  christos remove mpool_getf
 1.21 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.20 26-Jun-2011  christos branches: 1.20.24;
- use sizeof(var) instead of sizeof(type)
- remove useless cast
 1.19 12-Feb-2009  lukem fix -Wsign-compare issues
 1.18 11-Sep-2008  joerg branches: 1.18.6; 1.18.8;
Consistently include "nbtool_config.h" when cross-compiling.
 1.17 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.16 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.15 03-Feb-2007  christos branches: 1.15.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.14 30-Dec-2003  martin When storing data size as 32bit int in an overflow page, copy the
length to a temporary u_int32_t variable and memmove from there to the
final destination - instead of copying the first four 0 bytes from a
64bit variable directly on big endian 64 bit platforms.

This makes sparc64 pass regress/lib/libc/db.
 1.13 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.12 09-Dec-1998  christos delint
 1.11 18-Aug-1998  thorpej Add some braces to make egcs happy.
 1.10 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.9 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.8 03-May-1996  cgd branches: 1.8.2;
merge DB 1.85 changes
 1.7 27-Feb-1995  cgd add unintrusive Ids
 1.6 18-Aug-1994  cgd branches: 1.6.2;
clean up import
 1.5 17-Sep-1993  cgd version 1.71 of new db code
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.6.2.2 18-Aug-1994  cgd clean up import
 1.6.2.1 18-Aug-1994  cgd file bt_put.c was added on branch netbsd-1-0 on 1994-08-18 00:39:59 +0000
 1.8.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.15.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.15.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.18.8.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.18.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.18.6.1 11-Sep-2008  joerg file bt_put.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.20.24.1 04-Nov-2016  pgoyette Sync with HEAD
 1.19 24-Sep-2016  christos remove mpool_getf
 1.18 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.17 11-Sep-2008  joerg branches: 1.17.6; 1.17.44;
Consistently include "nbtool_config.h" when cross-compiling.
 1.16 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.15 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.14 03-Feb-2007  christos branches: 1.14.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.13 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.12 30-Dec-2001  thorpej __bt_search(): Rename the local variable "index" to "idx" to avoid
shadowing a global declaration.
 1.11 09-Dec-1998  christos branches: 1.11.12;
delint
 1.10 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.9 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.8 03-May-1996  cgd branches: 1.8.2;
merge DB 1.85 changes
 1.7 27-Feb-1995  cgd add unintrusive Ids
 1.6 18-Aug-1994  cgd branches: 1.6.2;
clean up import
 1.5 24-Jan-1994  cgd update to 1.73 from UCB. I didn't even notice this was out!
 1.4 17-Sep-1993  cgd version 1.71 of new db code
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.6.2.2 18-Aug-1994  cgd clean up import
 1.6.2.1 18-Aug-1994  cgd file bt_search.c was added on branch netbsd-1-0 on 1994-08-18 00:40:03 +0000
 1.8.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.11.12.1 28-Jan-2002  nathanw Catch up to -current.
 1.14.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.14.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.17.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.17.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.17.6.1 11-Sep-2008  joerg file bt_search.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.20 24-Sep-2016  christos remove mpool_getf
 1.19 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.18 04-Sep-2013  ryoon branches: 1.18.8;
Fix typos from FreeMiNT's db-1.86 patch.
 1.17 11-Sep-2008  joerg branches: 1.17.2; 1.17.6; 1.17.26;
Consistently include "nbtool_config.h" when cross-compiling.
 1.16 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.15 03-Feb-2007  christos branches: 1.15.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.14 19-Mar-2006  christos Coverity CID 45: Don't try to deref NULL on error.
 1.13 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.12 30-Dec-2001  thorpej Rename the local variable "index" to "idx" to avoid shadowing a global
declaration.
 1.11 09-Dec-1998  christos branches: 1.11.12;
delint
 1.10 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.9 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.8 17-May-1997  pk NULL => 0 (Arne Juul; PR#3629)
 1.7 03-May-1996  cgd branches: 1.7.2;
merge DB 1.85 changes
 1.6 27-Feb-1995  cgd add unintrusive Ids
 1.5 18-Aug-1994  cgd branches: 1.5.2;
clean up import
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.5.2.2 18-Aug-1994  cgd clean up import
 1.5.2.1 18-Aug-1994  cgd file bt_seq.c was added on branch netbsd-1-0 on 1994-08-18 00:40:07 +0000
 1.7.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.11.12.1 28-Jan-2002  nathanw Catch up to -current.
 1.15.12.1 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.17.26.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.17.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.17.6.1 11-Sep-2008  joerg file bt_seq.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.17.2.1 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.18.8.1 04-Nov-2016  pgoyette Sync with HEAD
 1.22 24-Sep-2016  christos remove mpool_getf
 1.21 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.20 20-Jun-2011  mrg branches: 1.20.24;
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.19 22-Apr-2009  christos branches: 1.19.4;
Avoid information leaks by zeroing memory, from FreeBSD (we had done some
already)
 1.18 12-Feb-2009  lukem fix -Wsign-compare issues
 1.17 11-Sep-2008  joerg branches: 1.17.4; 1.17.6; 1.17.8;
Consistently include "nbtool_config.h" when cross-compiling.
 1.16 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.15 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.14 03-Feb-2007  christos branches: 1.14.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.13 07-Aug-2003  agc branches: 1.13.16; 1.13.20;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.12 23-Jan-2000  mycroft Delint.
 1.11 29-Jul-1999  mycroft Fix a condition where the hole would be inserted in the wrong place during a
split.
 1.10 09-Dec-1998  christos delint
 1.9 10-Oct-1997  is Bug fixes from Sleepycat Software for db_btree databases; for some corner
cases in splitting pages, and for correctly updating data base metadata.
 1.8 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.7 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.6 03-May-1996  cgd branches: 1.6.2;
merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_split.c was added on branch netbsd-1-0 on 1994-08-18 00:40:11 +0000
 1.6.2.1 16-Sep-1996  jtc snapshot namespace cleanup
 1.13.20.1 23-Apr-2009  snj Pull up following revision(s) (requested by christos in ticket #1310):
lib/libc/db/btree/bt_split.c: revision 1.19
lib/libc/db/hash/hash_buf.c: revision 1.15
lib/libc/db/mpool/mpool.c: revision 1.19
Avoid information leaks by zeroing memory, from FreeBSD (we had done some
already)
 1.13.16.1 23-Apr-2009  snj Pull up following revision(s) (requested by christos in ticket #1310):
lib/libc/db/mpool/mpool.c: revision 1.19
lib/libc/db/hash/hash_buf.c: revision 1.15
lib/libc/db/btree/bt_split.c: revision 1.19
Avoid information leaks by zeroing memory, from FreeBSD (we had done some
already)
 1.14.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.14.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.17.8.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.17.6.2 11-Sep-2008  joerg Consistently include "nbtool_config.h" when cross-compiling.
 1.17.6.1 11-Sep-2008  joerg file bt_split.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
 1.17.4.1 23-Apr-2009  snj Pull up following revision(s) (requested by christos in ticket #719):
lib/libc/db/btree/bt_split.c: revision 1.19
lib/libc/db/hash/hash_buf.c: revision 1.15
lib/libc/db/mpool/mpool.c: revision 1.19
Avoid information leaks by zeroing memory, from FreeBSD (we had done some
already)
 1.19.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.20.24.1 04-Nov-2016  pgoyette Sync with HEAD
 1.6 03-May-1996  cgd merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file bt_stack.c was added on branch netbsd-1-0 on 1994-08-18 00:40:17 +0000
 1.16 14-Dec-2013  christos It's been many years since realloc(NULL, size) == malloc(size). Also don't
destroy pointers on allocation errors so someone can free them later.
 1.15 01-Dec-2013  christos - centralize opening of regular and temp files to avoid code duplication
- don't cast malloc
- use malloc sizeof(*var) instead of sizeof(type)
 1.14 04-Sep-2013  ryoon Fix typos from FreeMiNT's db-1.86 patch.
 1.13 10-Sep-2008  joerg branches: 1.13.2; 1.13.6; 1.13.26;
In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.12 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.11 03-Feb-2007  christos branches: 1.11.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.10 20-Jun-2004  jmc Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
 1.9 07-Aug-2003  agc branches: 1.9.2;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.8 13-Jul-1997  christos Fix RCSID's
Fix gcc warnings.
 1.7 03-May-1996  cgd merge DB 1.85 changes
 1.6 27-Feb-1995  cgd add unintrusive Ids
 1.5 18-Aug-1994  cgd branches: 1.5.2;
clean up import
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 26-Aug-1993  jtc Declare rcsid strings so they are stored in text segment.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.5.2.2 18-Aug-1994  cgd clean up import
 1.5.2.1 18-Aug-1994  cgd file bt_utils.c was added on branch netbsd-1-0 on 1994-08-18 00:40:19 +0000
 1.9.2.1 22-Jun-2004  tron Pull up revision 1.10 (requested by jmc in ticket #527):
Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')
Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).
Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.
Fixes PR's: PR#17762 PR#25944
 1.11.12.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.11.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.13.26.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.13.6.2 10-Sep-2008  joerg In preparation for providing a db fallback in libnbcompat, remove
sccsid and conditionals around __RCSID. lint understands __RCSID enough
to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT.
No functional changes.
 1.13.6.1 10-Sep-2008  joerg file bt_utils.c was added on branch christos-time_t on 2008-09-10 17:52:36 +0000
 1.13.2.1 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.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 14-Jun-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.18 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)'.
 1.17 04-Sep-2013  ryoon Fix typos from FreeMiNT's db-1.86 patch.
 1.16 26-Aug-2008  joerg branches: 1.16.2; 1.16.6; 1.16.26;
Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.15 03-Feb-2007  christos branches: 1.15.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.14 27-Oct-2003  lukem Overhaul how `build.sh tools' are used:

* Rename "config.h" to "nbtool_config.h" and
HAVE_CONFIG_H to HAVE_NBTOOL_CONFIG_H.
This makes in more obvious in the source when we're using
tools/compat/config.h versus "standard autoconf" config.h

* Consistently move the inclusion of nbtool_config.h to before
<sys/cdefs.h> so that the former can provide __RCSID() (et al),
and there's no need to protect those macros any more.

These changes should make it easier to "tool-ify" a program by adding:
#if HAVE_NBTOOL_CONFIG_H
#include "nbtool_config.h"
#endif
to the top of the source files (for the general case).
 1.13 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.12 21-Jan-2002  tv Add hooks for reachover builds from src/tools/compat.
 1.11 09-Dec-1998  christos branches: 1.11.12;
delint
 1.10 06-Nov-1998  christos s/LALIGN/BTLALIGN
 1.9 03-May-1996  cgd merge DB 1.85 changes
 1.8 27-Feb-1995  cgd add unintrusive Ids
 1.7 18-Aug-1994  cgd branches: 1.7.2;
clean up import
 1.6 24-Jan-1994  cgd update to 1.73 from UCB. I didn't even notice this was out!
 1.5 17-Sep-1993  cgd version 1.71 of new db code
 1.4 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.3 01-Aug-1993  mycroft Add RCS identifiers.
 1.2 14-Jun-1993  cgd update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.2 17-Aug-1994  cgd update to db 1.79
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7.2.2 18-Aug-1994  cgd clean up import
 1.7.2.1 18-Aug-1994  cgd file btree.h was added on branch netbsd-1-0 on 1994-08-18 00:40:22 +0000
 1.11.12.1 28-Jan-2002  nathanw Catch up to -current.
 1.15.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.16.26.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.16.6.2 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.16.6.1 26-Aug-2008  joerg file btree.h was added on branch christos-time_t on 2008-08-26 21:18:39 +0000
 1.16.2.1 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.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 14-Jun-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.13 24-Sep-2016  christos Merge the recursive tree traversal changes from the mit kerberos tree. This
Also make the tracefile customizable. Unfortunately we can't merge any of
the hash changes because they have a different on-disk format. That does not
matter really because we've fixed most of the problems...
 1.12 26-Sep-2008  tsutsui branches: 1.12.6; 1.12.44;
unsigned int32_t -> uint32_t
 1.11 26-Aug-2008  joerg Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
 1.10 03-Feb-2007  christos branches: 1.10.12;
cleanup:
- remove __P
- remove unneeded casts
- add _DIAGASSERT
- add more diagnostics for integer overflow
- fix size_t/int confusion
- make debugging and statistics code compile
 1.9 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.8 12-Jan-2002  aymeric add missing prototype when defined(DEBUG)
 1.7 20-Dec-2000  christos branches: 1.7.2;
protect against multiple inclusions.
 1.6 03-May-1996  cgd merge DB 1.85 changes
 1.5 27-Feb-1995  cgd add unintrusive Ids
 1.4 18-Aug-1994  cgd branches: 1.4.2;
clean up import
 1.3 09-Sep-1993  cgd upgrade new DB code to version 1.7
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 14-Jun-1993  cgd branches: 1.1.1;
update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
 1.1.1.2 03-May-1996  cgd Import of Berkeley DB version 1.85
 1.1.1.1 17-Aug-1994  cgd update to db 1.79
 1.4.2.2 18-Aug-1994  cgd clean up import
 1.4.2.1 18-Aug-1994  cgd file extern.h was added on branch netbsd-1-0 on 1994-08-18 00:40:24 +0000
 1.7.2.1 28-Jan-2002  nathanw Catch up to -current.
 1.10.12.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.12.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.12.6.2 26-Sep-2008  tsutsui unsigned int32_t -> uint32_t
 1.12.6.1 26-Sep-2008  tsutsui file extern.h was added on branch christos-time_t on 2008-09-26 11:41:07 +0000
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 14-Jun-1993  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 01-Mar-1995  mycroft Clean up deleted files.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources

RSS XML Feed