DESCRIPTION
This command is used to perform checks on the key database or an Elektra plugin.
Where the option argument, plugin is the plugin that a user wants to check. Use -c to pass options to that plugin. If no plugin argument is provided a check will be performed on the key database itself. Special values are returned upon exit to represent the outcome of a check.
OPTIONS
- -H, --help: Show the man page.
- -V, --version: Print version info.
- -f, --force: The user can also use this tool to perform write tests. Please note that this can result in configuration files being changed!
- -v, --verbose: Explain what is happening.
- -c, --plugins-config: Add a plugin configuration.
RETURN VALUES
Their are two different types of checks, a check on a plugin (by specifying the name of a plugin as an argument) or a check on the key database itself.
The outcome of a check on the key database is returned as an exit status. This integer represents an 8-bit pattern. Each bit represents a specific outcome as described below:
- 0: No errors (no output)
- Bit 1: Warning on opening the key database.
- Bit 2: Error on opening the key database.
- Bit 3: Warning on getting the value of a key.
- Bit 4: Error on getting the value of a key.
- Bit 5: Warning on setting the value of a key. (only checked when -f is used)
- Bit 6: Error on setting the value of a key (only checked when -f is used)
- Bit 7: Warning on closing the key database.
- Bit 8: Error on closing the key database.
So if the following number was returned 9 the user could figure out more detail by considering the bits: 00001001 The user would know that their was a warning on open and an error on get.
If a plugin name is given, checks will only be done on the given plugin. The returned values for a check on a plugin are returned as much simpler numbers.
Return values on plugin checking:
- 0: Everything ok. (no output)
- 1: No such plugin found or plugin could not be opened.
- 2: Plugin did not pass checks.
- 3: Plugin has warnings.
Please report any output caused by official plugins to http://git.libelektra.org/issues.
Since the error code is a return value, it is not automatically displayed to the shell. If the user wants to have the value printed, they must do so manually (by running a command such as echo $?.
EXAMPLES
To check the Key Database: kdb check
To check the Key Database and then print the result: kdb check followed by: echo $?
To check the Key Database including write checks: kdb check -f Note that this type of check may change configuration files.
To check the line plugin: kdb check line