2 * interface for database access to cnids. i do it this way to abstract
3 * things a bit in case we want to change the underlying implementation.
6 #ifndef _ATALK_CNID_CDB__H
7 #define _ATALK_CNID_CDB__H 1
14 #include <netatalk/endian.h>
15 #include <atalk/cnid.h>
18 extern struct _cnid_module cnid_cdb_module;
19 extern struct _cnid_db *cnid_cdb_open (struct cnid_open_args *args);
22 extern void cnid_cdb_close (struct _cnid_db *);
25 extern cnid_t cnid_cdb_add (struct _cnid_db *, const struct stat *, const cnid_t,
26 char *, const size_t, cnid_t);
27 extern int cnid_cdb_getstamp (struct _cnid_db *, void *, const size_t );
30 extern cnid_t cnid_cdb_get (struct _cnid_db *, const cnid_t, char *, const size_t);
31 extern char *cnid_cdb_resolve (struct _cnid_db *, cnid_t *, void *, size_t );
32 extern cnid_t cnid_cdb_lookup (struct _cnid_db *, const struct stat *, const cnid_t,
33 char *, const size_t);
36 extern int cnid_cdb_update (struct _cnid_db *, const cnid_t, const struct stat *,
37 const cnid_t, char *, size_t);
40 extern int cnid_cdb_delete (struct _cnid_db *, const cnid_t);
43 extern cnid_t cnid_cdb_nextid (struct _cnid_db *);
45 extern int cnid_cdb_lock (void *);
46 extern int cnid_cdb_unlock (void *);
48 extern cnid_t cnid_cdb_rebuild_add (struct _cnid_db *, const struct stat *,
49 const cnid_t, char *, const size_t, cnid_t);
52 #endif /* include/atalk/cnid_cdb.h */