summaryrefslogtreecommitdiff
path: root/include/gsmd/vendorplugin.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/gsmd/vendorplugin.h')
-rw-r--r--include/gsmd/vendorplugin.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/gsmd/vendorplugin.h b/include/gsmd/vendorplugin.h
new file mode 100644
index 0000000..c3843b2
--- /dev/null
+++ b/include/gsmd/vendorplugin.h
@@ -0,0 +1,27 @@
+#ifndef _GSMD_VENDORPLUGIN_H
+#define _GSMD_VENDORPLUGIN_H
+
+#ifdef __GSMD__
+
+#include <common/linux_list.h>
+#include <gsmd/gsmd.h>
+
+struct gsmd;
+struct gsmd_unsolicit;
+
+struct gsmd_vendor_plugin {
+ struct llist_head list;
+ unsigned char *name;
+ unsigned int num_unsolicit;
+ const struct gsmd_unsolicit *unsolicit;
+ int (*detect)(struct gsmd *g);
+ int (*initsettings)(struct gsmd *g);
+};
+
+extern int gsmd_vendor_plugin_register(struct gsmd_vendor_plugin *pl);
+extern void gsmd_vendor_plugin_unregister(struct gsmd_vendor_plugin *pl);
+extern int gsmd_vendor_plugin_find(struct gsmd *g);
+
+#endif /* __GSMD__ */
+
+#endif
personal git repositories of Harald Welte. Your mileage may vary