Плагины ConnMan
Плагины ConnMan предназначены для расширения возможностей ConnMan, например, для реализации поддержки VPN-соединений.
| Подключение: | #include <connman/plugin.h> |
Макросы
- CONNMAN_PLUGIN_DEFINE(name, description, version, priority, init, exit)
Константы
Функции
Описание макросов
CONNMAN_PLUGIN_DEFINE(name, description, version, priority, init, exit)
Данный макрос предназначен для регистрации плагина в ConnMan. Он выполняется при загрузке бинарного файла плагина. Макросу передаются следующие параметры:
name— строка,const char *, имя плагина без кавычек, является уникальным идентификатором;description— строка,const char *, текстовое описание плагина;version— строка,const char *, версия плагина;priority— число,int, приоритет загрузки плагина. Следует использовать одну из соответствующих констант.init— ссылка на функцию инициализации,void *, которая вызывается при загрузке плагина;exit— ссылка на функцию,void *, которая вызывается при выгрузке плагина.
Описание констант
#define CONNMAN_PLUGIN_PRIORITY_LOW -100
Самый низкий приоритет для плагина.
#define CONNMAN_PLUGIN_PRIORITY_DEFAULT 0
Обычный приоритет для плагина.
#define CONNMAN_PLUGIN_PRIORITY_HIGH 100
Высокий приоритет для плагина.
Описание функций
static int init(void)
Функция загрузки плагина, которая передаётся макросу, выполняет инициализацию плагина. Она должна содержать в себе вызов функций для расширения соответствующих подсистем ConnMan.
При успешном выполнении должна возвращать 0.
static void exit(void)
Функция вызывается при выгрузке VPN-плагина из ConnMan. Данная функция должна отключать те подсистемы, которые были настроены в функции загрузки.