]>
git.wh0rd.org - dump.git/blob - common/indexer.h
2 #include <protocols/dumprestore.h>
9 #define QFA_MAGIC "495115637697"
10 #define QFA_VERSION "1.0"
14 #include <sys/cdefs.h>
17 /* state information when writing QFA file. */
18 typedef struct qfa_state
{
20 /* long maxntrecs = 300000000 / (ntrec * 1024); last tested: 50 000 000 */
25 /* methods used to write 'Indexer' file. */
26 typedef struct indexer
{
28 int (*open
) __P((const char *filename
, int mode
));
29 int (*close
) __P((void));
30 int (*foo
) __P((void)); // what does this function do?
31 int (*writerec
) __P((const void *dp
, int isspcl
));
32 int (*addInode
) __P((struct dinode
*dp
, dump_ino_t ino
, int metaonly
)); // dump entry
33 //int (*addDirEntry) __P((struct ext2_dir_entry *dirent, UNUSED(int offset), // dump inode
34 // UNUSED(int blocksize), UNUSED(char *buf), void *private));
35 int (*addDirEntry
) __P((struct direct
*dp
, dump_ino_t parent_ino
));
37 int (*openQfa
) __P(());
38 int (*closeQfa
) __P(());
39 int (*openQfaState
) __P((QFA_State
*state
));
40 int (*updateQfa
) __P((QFA_State
*state
));
41 int (*updateQfaState
) __P((QFA_State
*state
));
44 extern Indexer
*indexer
;
46 extern Indexer indexer_legacy
;
47 extern Indexer indexer_sqlite
;
49 //extern Indexer *indexer_legacy_factory();
52 //extern Indexer *indexer_sqlite_factory();
53 //#endif /* HAVE_SQLITE3 */