Go to the source code of this file.
Data Structures | |
| struct | _cnid_db |
| struct | cnid_open_args |
| struct | _cnid_module |
Macros | |
| #define | CNID_FLAG_PERSISTENT 0x01 |
| #define | CNID_FLAG_MANGLING 0x02 |
| #define | CNID_FLAG_SETUID 0x04 |
| #define | CNID_FLAG_BLOCK 0x08 |
| #define | CNID_FLAG_NODEV 0x10 |
| #define | CNID_FLAG_LAZY_INIT 0x20 |
| #define | CNID_FLAG_INODE 0x80 |
| #define | CNID_INVALID 0 |
| #define | CNID_START 17 |
| #define | CNID_ERR_PARAM 0x80000001 |
| #define | CNID_ERR_PATH 0x80000002 |
| #define | CNID_ERR_DB 0x80000003 |
| #define | CNID_ERR_CLOSE 0x80000004 |
| #define | CNID_ERR_MAX 0x80000005 |
Typedefs | |
| typedef struct _cnid_db | cnid_db |
| typedef struct _cnid_module | cnid_module |
Functions | |
| void | cnid_init (void) |
| void | cnid_register (struct _cnid_module *module) |
| struct _cnid_db * | cnid_open (struct vol *vol, char *type, int flags) |
| cnid_t | cnid_add (struct _cnid_db *cdb, const struct stat *st, const cnid_t did, const char *name, const size_t len, cnid_t hint) |
| int | cnid_delete (struct _cnid_db *cdb, cnid_t id) |
| cnid_t | cnid_get (struct _cnid_db *cdb, const cnid_t did, char *name, const size_t len) |
| int | cnid_getstamp (struct _cnid_db *cdb, void *buffer, const size_t len) |
| cnid_t | cnid_lookup (struct _cnid_db *cdb, const struct stat *st, const cnid_t did, char *name, const size_t len) |
| char * | cnid_resolve (struct _cnid_db *cdb, cnid_t *id, void *buffer, size_t len) |
| int | cnid_update (struct _cnid_db *cdb, const cnid_t id, const struct stat *st, const cnid_t did, char *name, const size_t len) |
| cnid_t | cnid_rebuild_add (struct _cnid_db *cdb, const struct stat *st, const cnid_t did, char *name, const size_t len, cnid_t hint) |
| int | cnid_find (struct _cnid_db *cdb, const char *name, size_t namelen, void *buffer, size_t buflen) |
| int | cnid_wipe (struct _cnid_db *cdb) |
| void | cnid_close (struct _cnid_db *db) |
This file contains all generic CNID related stuff declarations. Included:
| #define CNID_ERR_CLOSE 0x80000004 |
the db was not open
| #define CNID_ERR_DB 0x80000003 |
| #define CNID_ERR_MAX 0x80000005 |
| #define CNID_ERR_PARAM 0x80000001 |
| #define CNID_ERR_PATH 0x80000002 |
| #define CNID_FLAG_BLOCK 0x08 |
block signals in update.
| #define CNID_FLAG_INODE 0x80 |
in cnid_add the inode is authoritative
| #define CNID_FLAG_LAZY_INIT 0x20 |
| #define CNID_FLAG_MANGLING 0x02 |
This backend has name mangling feature.
| #define CNID_FLAG_NODEV 0x10 |
don't use device number only inode
| #define CNID_FLAG_PERSISTENT 0x01 |
This backend implements DID persistence
| #define CNID_FLAG_SETUID 0x04 |
Set db owner to parent folder owner.
| #define CNID_INVALID 0 |
| #define CNID_START 17 |
first valid ID
| typedef struct _cnid_module cnid_module |
| cnid_t cnid_add | ( | struct _cnid_db * | cdb, |
| const struct stat * | st, | ||
| const cnid_t | did, | ||
| const char * | name, | ||
| const size_t | len, | ||
| cnid_t | hint ) |
| void cnid_close | ( | struct _cnid_db * | db | ) |
Closes CNID database. Currently it's just a wrapper around db->cnid_close().
| int cnid_find | ( | struct _cnid_db * | cdb, |
| const char * | name, | ||
| size_t | namelen, | ||
| void * | buffer, | ||
| size_t | buflen ) |
| int cnid_getstamp | ( | struct _cnid_db * | cdb, |
| void * | buffer, | ||
| const size_t | len ) |
| void cnid_init | ( | void | ) |
| cnid_t cnid_lookup | ( | struct _cnid_db * | cdb, |
| const struct stat * | st, | ||
| const cnid_t | did, | ||
| char * | name, | ||
| const size_t | len ) |
Opens CNID database using particular back-end
| cnid_t cnid_rebuild_add | ( | struct _cnid_db * | cdb, |
| const struct stat * | st, | ||
| const cnid_t | did, | ||
| char * | name, | ||
| const size_t | len, | ||
| cnid_t | hint ) |
| void cnid_register | ( | struct _cnid_module * | module | ) |
Once module has been registered, it cannot be unregistered.
| int cnid_update | ( | struct _cnid_db * | cdb, |
| const cnid_t | id, | ||
| const struct stat * | st, | ||
| const cnid_t | did, | ||
| char * | name, | ||
| const size_t | len ) |
| int cnid_wipe | ( | struct _cnid_db * | cdb | ) |