Haka: include/haka/module.h File Reference

Haka

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Enumerations | Functions
module.h File Reference
`#include <wchar.h>`
`#include <haka/thread.h>`
`#include <haka/version.h>`
`#include <haka/parameters.h>`

Go to the source code of this file.

## Data Structures
struct | module

## Enumerations

## Functions
struct module * | module_load (const char *module_name, struct parameters *args)
void | module_addref (struct module *module)
void | module_release (struct module *module)
void | module_set_path (const char *path, bool c)
bool | module_set_default_path ()
void | module_add_path (const char *path, bool c)
const char * | module_get_path (bool c)

## Detailed Description

Generic module.

## Enumeration Type Documentation

enum module_type

Module type.

Enumerator
MODULE_UNKNOWN | Invalid module type.
MODULE_PACKET | Packet capture module.
MODULE_LOG | Logging module type.
MODULE_ALERT | Alert backend module type.
MODULE_REGEXP | Regular expression module type.
MODULE_EXTENSION | Abstract extension module type.

## Function Documentation

void module_add_path | ( | const char * | path,
|  | bool | c
| ) |  |

Add a path to the Lua module search path.

void module_addref | ( | struct module * | module | ) |

Keep the module. Must match with a call to module_release() otherwise the module will not be able to be removed correctly when unused.

const char* module_get_path | ( | bool | c | ) |

Get the modules search path.

struct module* module_load | ( | const char * | module_name,
|  | struct parameters * | args
| ) |  |

Load a module given its name. It is not needed to call module_addref() on the result as this is done before returning.

Returns
  The loaded module structure or NULL in case of an error.

void module_release | ( | struct module * | module | ) |

Decrement the module ref count and unload the module if needed.

bool module_set_default_path | ( |  | ) |

Set the module path using the env variable HAKA_PATH.

void module_set_path | ( | const char * | path,
|  | bool | c
| ) |  |

Set the path used to load haka modules. This path must be in the form: `path/to/modules/*;another/path/*`