• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/netatalk-3.0.5/libatalk/cnid/cdb/
1/*
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.
4 */
5
6#ifndef _ATALK_CNID_CDB__H
7#define _ATALK_CNID_CDB__H 1
8
9#include <sys/stat.h>
10#include <unistd.h>
11#include <string.h>
12
13#include <atalk/cnid.h>
14
15/* cnid_open.c */
16extern struct _cnid_module cnid_cdb_module;
17extern struct _cnid_db *cnid_cdb_open (struct cnid_open_args *args);
18
19/* cnid_close.c */
20extern void cnid_cdb_close (struct _cnid_db *);
21
22/* cnid_add.c */
23extern cnid_t cnid_cdb_add (struct _cnid_db *, const struct stat *, cnid_t,
24                            const char *, size_t, cnid_t);
25extern int cnid_cdb_getstamp (struct _cnid_db *, void *, const size_t );
26
27/* cnid_get.c */
28extern cnid_t cnid_cdb_get (struct _cnid_db *, cnid_t, const char *, size_t);
29extern char *cnid_cdb_resolve (struct _cnid_db *, cnid_t *, void *, size_t );
30extern cnid_t cnid_cdb_lookup (struct _cnid_db *, const struct stat *, cnid_t,
31                               const char *, size_t);
32
33/* cnid_update.c */
34extern int cnid_cdb_update (struct _cnid_db *, cnid_t, const struct stat *,
35                            cnid_t, const char *, size_t);
36
37/* cnid_delete.c */
38extern int cnid_cdb_delete (struct _cnid_db *, const cnid_t);
39
40/* cnid_nextid.c */
41extern cnid_t cnid_cdb_nextid (struct _cnid_db *);
42
43extern int cnid_cdb_lock   (void *);
44extern int cnid_cdb_unlock (void *);
45
46extern cnid_t cnid_cdb_rebuild_add (struct _cnid_db *, const struct stat *,
47                                    cnid_t, const char *, size_t, cnid_t);
48
49
50#endif /* include/atalk/cnid_cdb.h */
51
52