#ifndef MPLIB1_GDBM_UTIL_H #define MPLIB1_GDBM_UTIL_H /* ******************************************************************************* * Copyright (c) 1996 Martin Poole * ******************************************************************************* ** ** WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! ** ** Any changes to be made to this file should first be checked with ** mplib1 source control for library integrity. ** ** mplib1 source control can be reached at mplib1@quatermass.co.uk ** * * System : * Subsystem : * Module : * $Source: /home/cvs/cvsroot/onelan/onelan/src/mplib1/mplib1/gdbm_util.h,v $ * $Author: mpoole $ * $Date: 2002/10/07 09:37:44 $ * $Revision: 1.2 $ * Purpose : * ******************************************************************************* * * Change History * * $Log: gdbm_util.h,v $ * Revision 1.2 2002/10/07 09:37:44 mpoole * Initial checkin of mplib1-3.1.0 * * Revision 1.1 2002/10/07 09:37:00 mpoole * Initial checkin of mplib1-3.1.0 * * ******************************************************************************* */ #ident "$Header: /home/cvs/cvsroot/onelan/onelan/src/mplib1/mplib1/gdbm_util.h,v 1.2 2002/10/07 09:37:44 mpoole Exp $" #ifdef CXREF #include #include #include #endif /* ------------------------------------------------------------------ defines ------------------------------------------------------------------ */ /* ------------------------------------------------------------------ structures ------------------------------------------------------------------ */ /* a quick structure to help open GDBM files */ struct gdbm_help { const char *name; const char *def_name; const char *blocksize; const char *cachesize; const char *fast; const char *conditional; void (*fatal_func) (const char *); GDBM_FILE *file_ptr; void *user_ptr; }; #define GDBM_IDUMP_SORT BIT(0) #define GDBM_IDUMP_NOCASE BIT(1) #define GDBM_IDUMP_DATA BIT(2) #define GDBM_IDUMP_HDR BIT(3) #define GDBM_IDUMP_KEEP_DATA BIT(0) typedef int (* gdbm_index_dump_t)(FILE *, char *, void *); /* ------------------------------------------------------------------ function definitions ------------------------------------------------------------------ */ extern int gdbm_db_open( struct gdbm_help *gptr, int force_new ); extern int gdbm_db_close( struct gdbm_help *gptr ); extern int gdbm_db_sync_set( struct gdbm_help *gptr, int sync_mode ); extern char * gdbm_key_gen( char *buf, const char *format, ... ); extern int store_some_record( GDBM_FILE file, const void *ptr, size_t psize, const char *format, ... ); extern void * fetch_some_record( GDBM_FILE file, const char *format, ... ); extern int delete_some_record( GDBM_FILE file, const char *format, ... ); extern int gdbm_index_dump( FILE *fp, struct gdbm_help *gptr, int flags, gdbm_index_dump_t dfunc ); #endif /* -- End of File -- */