Query: cdb_find
OS: debian
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
cdb_find(3) Library Functions Manual cdb_find(3)NAMEcdb_find - look up a key in a constant databaseSYNTAX#include <cdb.h> #include <uint32.h> int cdb_find(struct cdb *c,char *key,unsigned long int keylen); int cdb_datalen(struct cdb *c); int cdb_datapos(struct cdb *c); int cdb_findnext(struct cdb *c,char *key,unsigned long int keylen);DESCRIPTIONcdb_find looks for key. If cdb_find returns 0, the database does not contain that key; stop. If cdb_find returns -1, there was a read error; abort. cdb_datalen returns the length of the data associated with the key. Use it to allocate a pointer p with enough space to hold the data. cdb_datapos returns the position of the data inside the file. Use it as argument to cdb_read to retrieve the data. There may be several records under a single key. You can use cdb_findnext to find the next record under this key.EXAMPLEstatic struct c; if (cdb_find(&c,key,strlen(key)>0) { char *buf=alloca(cdb_datalen(&c)); cdb_read(&c,buf,cdb_datalen(&c),cdb_datapos(&c)); write(1,buf,cdb_datalen(&c)); }SEE ALSOcdb_read(3), cdb_init(3), cdb_free(3), cdbmake(1) cdb_find(3)