Annotation of embedaddon/php/ext/dba/libcdb/cdb.h, revision 1.1
1.1 ! misho 1: /*
! 2: +----------------------------------------------------------------------+
! 3: | PHP Version 5 |
! 4: +----------------------------------------------------------------------+
! 5: | Copyright (c) 1997-2010 The PHP Group |
! 6: +----------------------------------------------------------------------+
! 7: | This source file is subject to version 3.01 of the PHP license, |
! 8: | that is bundled with this package in the file LICENSE, and is |
! 9: | available through the world-wide-web at the following url: |
! 10: | http://www.php.net/license/3_01.txt |
! 11: | If you did not receive a copy of the PHP license and are unable to |
! 12: | obtain it through the world-wide-web, please send a note to |
! 13: | license@php.net so we can mail you a copy immediately. |
! 14: +----------------------------------------------------------------------+
! 15: | Author: Marcus Boerger <helly@php.net> |
! 16: +----------------------------------------------------------------------+
! 17: */
! 18:
! 19: /* $Id: cdb.h 293036 2010-01-03 09:23:27Z sebastian $ */
! 20:
! 21: /* incorporated from D.J.Bernstein's cdb-0.75 (http://cr.yp.to/cdb.html)*/
! 22:
! 23: #ifndef CDB_H
! 24: #define CDB_H
! 25:
! 26: #include "uint32.h"
! 27:
! 28: #define CDB_HASHSTART 5381
! 29:
! 30: struct cdb {
! 31: php_stream *fp;
! 32: uint32 loop; /* number of hash slots searched under this key */
! 33: uint32 khash; /* initialized if loop is nonzero */
! 34: uint32 kpos; /* initialized if loop is nonzero */
! 35: uint32 hpos; /* initialized if loop is nonzero */
! 36: uint32 hslots; /* initialized if loop is nonzero */
! 37: uint32 dpos; /* initialized if cdb_findnext() returns 1 */
! 38: uint32 dlen; /* initialized if cdb_findnext() returns 1 */
! 39: };
! 40:
! 41: uint32 cdb_hash(char *, unsigned int);
! 42:
! 43: void cdb_free(struct cdb * TSRMLS_DC);
! 44: void cdb_init(struct cdb *, php_stream *fp TSRMLS_DC);
! 45:
! 46: int cdb_read(struct cdb *, char *, unsigned int, uint32 TSRMLS_DC);
! 47:
! 48: void cdb_findstart(struct cdb * TSRMLS_DC);
! 49: int cdb_findnext(struct cdb *, char *, unsigned int TSRMLS_DC);
! 50: int cdb_find(struct cdb *, char *, unsigned int TSRMLS_DC);
! 51:
! 52: #define cdb_datapos(c) ((c)->dpos)
! 53: #define cdb_datalen(c) ((c)->dlen)
! 54:
! 55: char *cdb_version();
! 56:
! 57: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>