| Elektra 0.11.0

Functions
elektra/plugin.c File Reference

Interna of plugin functionality. More...

`#include <kdbassert.h>`
`#include <kdberrors.h>`
`#include <kdbinternal.h>`
`#include <kdbversion.h>`

## Functions
Plugin * | elektraPluginOpen (const char *name, KeySet *modules, KeySet *config, Key *errorKey)
| Opens a plugin.
size_t | elektraPluginGetFunction (Plugin *plugin, const char *name)
| Retrieves a function exported by a plugin.
const char * | elektraPluginPhaseName (ElektraKdbPhase phase)
| Gets a string with the name of the given constant for a plugin phase.

## Detailed Description

Interna of plugin functionality.

Copyright
  BSD License (see LICENSE.md or https://www.libelektra.org)

## Function Documentation

## ◆ elektraPluginGetFunction()

size_t elektraPluginGetFunction | ( | Plugin * | plugin,
|  | const char * | name
| ) |  |

Retrieves a function exported by a plugin.

Parameters

  plugin | Plugin handle
  name | Function name. Must be a valid key name suffix. May not contain the sequence '..'

Returns
  Pointer to function. NULL if function not found or not enough memory available

## ◆ elektraPluginOpen()

Plugin * elektraPluginOpen | ( | const char * | name,
|  | KeySet * | modules,
|  | KeySet * | config,
|  | Key * | errorKey
| ) |  |

Opens a plugin.

The config will be used as is. So be sure to transfer ownership of the config to it, with e.g. ksDup(). elektraPluginClose() will delete the config.

Returns
  a pointer to a new created plugin or 0 on error

## ◆ elektraPluginPhaseName()

const char * elektraPluginPhaseName | ( | ElektraKdbPhase | phase | ) |

Gets a string with the name of the given constant for a plugin phase.

Parameters

  phase | The ElektraKdbPhase value for which a string representation should be returned

Returns
  A string with the name of the given phase. The returned string is a constant value and must never be freed!

Return values

  ??? | if an unknown value for the phase was given