* Take MAINTAINERship, ok by schmonz@.
* Libtoolized.
* Fix typo in variable name.
* Set LICENSE as public-domain.
Changelog:
tinycdb-0.78 2012-05-11
- bugfix release:
o fixed >2Gb file size prob on 32bit platform
o fixed handling of files >=4Gb
o fixed a few compiler warnings
- introduce $(LD) and $(LDFLAGS), and also $(CDEFS) in Makefile
pkgsrc changes:
* simplify subst with SUBST_VARS.
* build and install shared library.
* install pkgconfig file.
package changes:
tinycdb-0.77
- bugfix release: manpage typos, portability fixes and the like
- bugfix: improper logic in EINTR handling in _cdb_make_full_write
routine which may lead to corruped .cdb file.
* manpage spelling fixes, from Claus Assmann <ca+tinycdb (at) esmtp.org>.
* little mods to allow compiling tinycdb by C++ compiler,
from Olly Betts <olly (at) survex.com>.
* use program_invocation_short_name on GLIBC, (modified) patch
from Dmitry V. Levin <ldv (at) altlinux.org>
* manpage fix (cdb_findnext() prototype),
from Dmitry V. Levin <ldv (at) altlinux.org>
* (somewhat silly) GCC-4.x "signedness" warnings fix, modified patch
from Dmitry V. Levin <ldv (at) altlinux.org>
* more signed vs unsigned char* fixes in various places
* Makefile: always build libnss_cdb.so with libcdb_pic.a, no nss-shared
target: to avoid extra dependency from /usr/lib/.
* Makefile: use map files for lib*.so, with explicit list of exported
symbols. This, in particular, avoids exporting of libcdb symbols by
libnss_cdb.so.
* mark all internal routines as internal_function (defined as
__attribute__((visibility("hidden"))) for GCC)
* Makefile: add tests-shared, to use cdb-shared for testing
* Makefile: allow to specify which binary (shared vs static) to install
in install target, by using INSTALLPROG variable
* Makefile: pass -DNSSCDB_DIR=... to compiler when building .lo files,
to allow setting of system config dir (/etc by default) on command line.
For nss_cdb module.
* Makefile: use $(CP) instead of cp, to be able to specify `cp' options
(CP="cp -p")
* Use unlink(tmpname) + open(O_CREAT|O_EXCL) instead of
open(O_CREAT|O_TRUNC) when creating the new CDB file.
And use O_NOFOLLOW if defined.
This also works around some (probably) possible symlink attacks.
* Add -p perms option for cdb utility, to specify mode (permission bits)
for newly created .cdb file (default is 0666&umask(), -p forces the given
mode).
* allow tmpname (cdb -t) to be `-', to mean no temp file gets created.
Also check if tmpname is the same as database name and don't try to
rename() if it is.
* rewrite nss_cdb-Makefile a bit: simplify it, and use more sane
permission scheme for /etc/shadow
* fixed a typo in cdb_seek.c, -- it segfaulted if passed NULL dlenp
pointer. Thanks Daiki for the patch. Closes: #383417
* use MAP_FAILED to test mmap() return value, instead of hardcoded -1.
* libcdb-dev replaces tinycdb<0.76
creating and reading constant data bases, a data structure introduced
by Dan J. Bernstein in his cdb package. It may be used to speed up
searches in a sequence of (key,value) pairs with very big number
of records. Example usage is indexing a big list of users - where
a search will require linear reading of a large /etc/passwd file,
and for many other tasks. It's usage/API is similar to ones found
in BerkeleyDB, gdbm and traditional *nix dbm/ndbm libraries, and
is compatible in great extent to cdb-0.75 package by Dan Bernstein.
CDB is a constant database, that is, it cannot be updated at a
runtime, only rebuilt. Rebuilding is atomic operation and is very
fast - much faster than of many other similar packages. Once created,
CDB may be queried, and a query takes very little time to complete.