Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

cdbr_close(3) [netbsd man page]

CDBR(3) 						   BSD Library Functions Manual 						   CDBR(3)

NAME
cdbr cdbr_open, cdbr_entries, cdbr_get, cdbr_find, cdbr_close, cdbr_write -- constant database access methods SYNOPSIS
struct cdbr * cdbr_open(const char *path, int flags); uint32_t cdbr_entries(struct cdbr *cdbr); int cdbr_get(struct cdbr *cdbr, uint32_t index, const void **data, size_t *datalen); int cdbr_find(struct cdbr *cdbr, const void *key, size_t keylen, const void **data, size_t *datalen); void cdbr_close(struct cdbr *cdbr); DESCRIPTION
The cdbr library provides a space efficient (key,value) database based on perfect hashing. A cdb database is opened for reading by calling cdbr_open(). The only supported value for flags is CDBR_DEFAULT. The function returns a handle to pass to the other functions. The database is closed by invoking cdbr_close(). All resources associated with the handle are freed and the memory returned by cdbr_get() and cdbr_find() is invalidated. The number of records in the database can be obtained by calling cdbr_entries(). Records can be obtained by record number using cdbr_get() or by key using cdbr_find(). Both functions return 0 on success and update data and datalen accordingly. The location *data remains valid until cdbr_close() is called. It is the responsibility of the caller of cdbr_find() to ensure that the key matches the returned data. The function returns the only possible match, but the database doesn't store the keys to minimize overhead. SEE ALSO
nbperf(1), cdbw(3), db(3), cdb(5) HISTORY
Support for the cdb format first appeared in NetBSD 6.0. AUTHORS
The cdbr and cdbw functions have been written by Joerg Sonnenberger <joerg@NetBSD.org>. BSD
March 3, 2010 BSD

Check Out this Related Man Page

CDBW(3) 						   BSD Library Functions Manual 						   CDBW(3)

NAME
cdbw_open, cdbw_put, cdbw_put_data, cdbw_put_key, cdbw_stable_seeder, cdbw_output, cdbw_close -- create constant databases SYNOPSIS
#include <archive_entry.h> struct cdbw * cdbw_open(void); int cdbw_put(struct cdbw *cdbw, const void *key, size_t keylen, const void *data, size_t datalen); int cdbw_put_data(struct cdbw *cdbw, const void *data, size_t datalen, uint32_t *index); int cdbw_put_key(struct cdbw *cdbw, const void *key, size_t keylen, uint32_t index); uint32_t cdbw_stable_seeder(void); int cdbw_output(struct cdbw *cdbw, int output, const char descr[16], uint32_t (*seedgen)(void)); void cdbw_close(struct cdbw *cdbw); DESCRIPTION
The cdbw functions are used to create a constant databases for use with cdbr(3). Details about the file format, including overhead and limi- tations, can be found in cdb(5). cdbw_open() prepares a new cdb writer. The function returns a handle to pass to the other functions. cdbw_close() frees all resources associated with the handle. cdbw_put() adds the given (key,value) pair after checking for a duplicate key. cdbw_put_data() adds the given value to the writer without adding a key reference. The returned index can be used in subsequent calls to cdbw_put_key() to add one or more keys pointing to this value. cdbw_put_key() checks for duplicate keys and valid index arguments. On success it adds the given key. cdbw_output() computes the database file and writes it to the given descriptor. The function returns an error if the file cannot be written correctly. The descr() parameter provides a human readable description of the database content. The seedgen() parameter can be used to override the default PRNG. The bitwise layout of the output depends on the chosen seed. The function should return a different value for each invocation. The cdbw_stable_seeder() can be used to create reproducible output. It may be slower than the default. SEE ALSO
cdbr(3), cdb(5) HISTORY
Support for the cdb format first appeared in NetBSD 6.0. AUTHORS
The cdbr and cdbw functions have been written by Joerg Sonnenberger <joerg@NetBSD.org>. BSD
June 3, 2012 BSD
Man Page