summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Sommerseth <dazo@users.sourceforge.net>2013-05-28 15:37:42 +0200
committerDavid Sommerseth <dazo@users.sourceforge.net>2013-05-28 15:51:12 +0200
commit9e13dcd2922ff1057a9eb955c3e8ceab68c2f673 (patch)
treea00f2cfceebdfe9bb97d3ce89fb5aaa164cea9a7
parent85ad4bbb21e478b5b3699dfa14c97dccfd336f10 (diff)
downloadeurephia-9e13dcd2922ff1057a9eb955c3e8ceab68c2f673.tar.gz
eurephia-9e13dcd2922ff1057a9eb955c3e8ceab68c2f673.tar.xz
eurephia-9e13dcd2922ff1057a9eb955c3e8ceab68c2f673.zip
Add the eDBadminPlugins() function in the database API
This function will be used by the admin interface to configure eurephia plug-ins. Signed-off-by: David Sommerseth <dazo@users.sourceforge.net>
-rw-r--r--database/eurephiadb.c1
-rw-r--r--database/eurephiadb_driver.h30
2 files changed, 31 insertions, 0 deletions
diff --git a/database/eurephiadb.c b/database/eurephiadb.c
index 701b8d1..7046dae 100644
--- a/database/eurephiadb.c
+++ b/database/eurephiadb.c
@@ -118,6 +118,7 @@ int eDBlink_init(eurephiaCTX *ctx, const char *dbdriver, const int minver)
case 4:
eDBauth_GetAuthMethod = eGetSym(ctx, ctx->eurephia_driver, "eDBauth_GetAuthMethod");
eDBget_plugins = eGetSym(ctx, ctx->eurephia_driver, "eDBget_plugins");
+ eDBadminPlugins = eGetSym(ctx, ctx->eurephia_driver, "eDBadminPlugins");
case 3:
eDBregister_vpnclientaddr = eGetSym(ctx, ctx->eurephia_driver, "eDBregister_vpnclientaddr");
diff --git a/database/eurephiadb_driver.h b/database/eurephiadb_driver.h
index fef6499..fa0cf35 100644
--- a/database/eurephiadb_driver.h
+++ b/database/eurephiadb_driver.h
@@ -700,6 +700,36 @@ xmlDoc * EUREPHIA_DRIVERAPI_FUNC(eDBadminFirewallProfiles)(eurephiaCTX *ctx, xml
/**
+ * Query or modify the eurephia plug-ins setup.
+ *
+ * @version API version level 4
+ * @param ctx eurephiaCTX
+ * @param xmlqry XML document with the operation and information.
+ *
+ * The XML format skeleton
+ * @code
+ * <eurephia format="1">
+ * <plugins mode="{search|register|unregister|modify}"
+ * [plugin-id="{ID}"] [plugin-dso="{FILENAME}]">
+ * <fieldMapping table="plugins">
+ * <{field name}>{value}</{field name}>
+ * </fieldMapping>
+ * </plugins>
+ * </eurephia>
+ * @endcode
+ * It can be several field name tags to narrow the search even more.
+ * For the register and unregister mode, either the plugin or plugin-id field name tag
+ * must be present. For modify mode one of the plugin-id or plugin-dso attributes
+ * must be present.
+ *
+ * @return Returns a valid XML document with the result on success, otherwise either
+ * NULL or an XML error document is returned.
+ * @see eurephiaXML_CreateDoc(), eurephiaXML_getRoot()
+ */
+xmlDoc * EUREPHIA_DRIVERAPI_FUNC(eDBadminPlugins)(eurephiaCTX *ctx, xmlDoc *xmlqry);
+
+
+/**
* Retrieve the eurephia lastlog
*
* @version API version level 2