Internals of mount functionality.
More...
|
int | mountOpen (KDB *kdb, KeySet *config, KeySet *modules, Key *errorKey) |
| Creates a trie from a given configuration. More...
|
|
int | mountDefault (KDB *kdb, KeySet *modules, int inFallback, Key *errorKey) |
| Reopens the default backend and mounts the default backend if needed. More...
|
|
int | elektraMountGlobalsLoadPlugin (Plugin **plugin, KeySet *referencePlugins, Key *cur, KeySet *global, KeySet *system, KeySet *modules, Key *errorKey) |
| Loads global plugin. More...
|
|
int | mountModules (KDB *kdb, KeySet *modules, Key *errorKey) |
| Mount all module configurations. More...
|
|
int | mountVersion (KDB *kdb, Key *errorKey) |
| Mount the version backend. More...
|
|
int | mountBackend (KDB *kdb, Backend *backend, Key *errorKey) |
| Mounts a backend into the trie. More...
|
|
Key * | mountGetMountpoint (KDB *handle, const char *where) |
| Lookup a mountpoint in a handle for a specific key. More...
|
|
Backend * | mountGetBackend (KDB *handle, const char *where) |
| Lookup a backend handle for a specific key. More...
|
|
Internals of mount functionality.
- Copyright
- BSD License (see LICENSE.md or https://www.libelektra.org)
◆ elektraMountGlobalsLoadPlugin()
int elektraMountGlobalsLoadPlugin |
( |
Plugin ** |
plugin, |
|
|
KeySet * |
referencePlugins, |
|
|
Key * |
cur, |
|
|
KeySet * |
global, |
|
|
KeySet * |
system, |
|
|
KeySet * |
modules, |
|
|
Key * |
errorKey |
|
) |
| |
Loads global plugin.
- Return values
-
-1 | on failure |
0 | on empty plugin name (nothing configured at given position) |
1 | on success |
◆ mountBackend()
int mountBackend |
( |
KDB * |
kdb, |
|
|
Backend * |
backend, |
|
|
Key * |
errorKey |
|
) |
| |
Mounts a backend into the trie.
- Precondition
- user must pass correctly allocated backend
- Postcondition
- sets reference counter of backend
- Warning
- in case of init and default backends, the reference counter needs to be modified after calling mountBackend.
- Parameters
-
kdb | the handle to work with |
backend | the backend to mount |
errorKey | the key used to report warnings |
- Return values
-
◆ mountDefault()
int mountDefault |
( |
KDB * |
kdb, |
|
|
KeySet * |
modules, |
|
|
int |
inFallback, |
|
|
Key * |
errorKey |
|
) |
| |
Reopens the default backend and mounts the default backend if needed.
- Precondition
- Default Backend is closed. mountOpen was executed before.
- Parameters
-
kdb | the handle to work with |
modules | the current list of loaded modules |
errorKey | the key used to report warnings |
- Return values
-
◆ mountGetBackend()
Backend* mountGetBackend |
( |
KDB * |
handle, |
|
|
const char * |
where |
|
) |
| |
Lookup a backend handle for a specific key.
The required canonical name is ensured by using a key as parameter, which will transform the key to canonical representation.
Will return handle when no more specific KDB could be found.
If key is 0 or invalid the default backend will be returned.
- Parameters
-
handle | is the data structure, where the mounted directories are saved. |
where | the key name, that should be looked up. |
- Returns
- the backend handle associated with the key
◆ mountGetMountpoint()
Key* mountGetMountpoint |
( |
KDB * |
handle, |
|
|
const char * |
where |
|
) |
| |
Lookup a mountpoint in a handle for a specific key.
Will return a key representing the mountpoint or null if there is no appropriate mountpoint e.g. its the root mountpoint.
- Example:
Key *mountpoint=0;
mountpoint=kdbGetMountpoint(handle, "system:/template");
printf("The backend I am using is %s mounted in %s\n",
KDB * kdbOpen(const KeySet *contract, Key *errorKey)
Opens the session with the Key database.
Definition: kdb.c:417
int kdbClose(KDB *handle, Key *errorKey)
Closes the session with the Key database.
Definition: kdb.c:590
const char * keyName(const Key *key)
Returns a pointer to the abbreviated real internal key name.
Definition: elektra/keyname.c:254
const void * keyValue(const Key *key)
Return a pointer to the real internal key value.
Definition: keyvalue.c:164
- Parameters
-
handle | is the data structure, where the mounted directories are saved. |
where | the key name, that should be looked up. |
- Returns
- the mountpoint associated with the key
◆ mountModules()
int mountModules |
( |
KDB * |
kdb, |
|
|
KeySet * |
modules, |
|
|
Key * |
errorKey |
|
) |
| |
Mount all module configurations.
- Parameters
-
kdb | the handle to work with |
modules | the current list of loaded modules |
errorKey | the key used to report warnings |
- Return values
-
-1 | if not rootkey was found |
0 | otherwise |
◆ mountOpen()
int mountOpen |
( |
KDB * |
kdb, |
|
|
KeySet * |
config, |
|
|
KeySet * |
modules, |
|
|
Key * |
errorKey |
|
) |
| |
Creates a trie from a given configuration.
The config will be deleted within this function.
- Note
- mountDefault is not allowed to be executed before
- Parameters
-
kdb | the handle to work with |
modules | the current list of loaded modules |
config | the configuration which should be used to build up the trie. |
errorKey | the key used to report warnings |
- Return values
-
◆ mountVersion()
int mountVersion |
( |
KDB * |
kdb, |
|
|
Key * |
errorKey |
|
) |
| |
Mount the version backend.
- Parameters
-
kdb | the handle to work with |
errorKey | the key used to report warnings |
- Return values
-