1 /*
2  * ufdbdb.h - URLfilterDB
3  *
4  * ufdbGuard is copyrighted (C) 2005-2020 by URLfilterDB B.V. and others with all rights reserved.
5  *
6  * RCS $Id: ufdbdb.h,v 1.9 2020/08/20 09:59:01 root Exp root $
7  */
8 
9 #ifndef UFDB_UFDBDB_H_INCLUDED
10 #define UFDB_UFDBDB_H_INCLUDED
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 #include "ufdb.h"
17 #include "ufdb_globals.h"
18 
19 #include <time.h>
20 #include <stdio.h>
21 #include <sys/times.h>
22 
23 #if UFDB_DBFORMAT_3
24 #include "ufdbdb3.h"
25 #endif
26 
27 UFDBrevURL * UFDBgenRevURL( UFDBthreadAdmin * admin, unsigned char * URL );
28 UFDBrevURL * UFDBgenRevURL4table( UFDBthreadAdmin * admin, unsigned char * URL );
29 
30 void UFDBprintRevURL( UFDBrevURL * revURL );
31 void UFDBfreeRevURL( UFDBthreadAdmin * admin, UFDBrevURL * revURL );
32 
33 int  UFDBparseTableHeader( struct UFDBmemTable * memTable );
34 void UFDBparseTable( struct UFDBmemTable * memTable );
35 void UFDBfreeTableIndex_1_2( struct UFDBtable * t );
36 
37 int  UFDBlookup( UFDBthreadAdmin * admin, struct UFDBmemTable * mt, char * request );
38 int  UFDBlookupRevUrl( struct UFDBtable * t, UFDBrevURL * revUrl );
39 
40 int  UFDBloadDatabase( struct ufdbGV * gv, struct UFDBmemTable * mtable, char * file );
41 
42 const char * ufdbCategoryName( const char * domain );
43 
44 #ifdef __cplusplus
45 }
46 #endif
47 
48 #endif
49 
50