summaryrefslogtreecommitdiff
path: root/epan
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2016-01-03 13:48:39 +0100
committerStig Bjørlykke <stig@bjorlykke.org>2016-01-11 07:43:36 +0000
commitebdaace0025749dd68a1cef7d0fd83b596861edf (patch)
treea89e4dadb12d879f9391b8959cf2b46d80457ac5 /epan
parent515502fd9b76228d5f82ccfae761b4f9e75e7ceb (diff)
downloadwireshark-ebdaace0025749dd68a1cef7d0fd83b596861edf.tar.gz
Lua: Added reload_lua_plugins
This makes it possible to trigger reloading Lua plugins from within a Lua plugin. This can be used when having a plugin to update local plugins from a external source. Renamed reload() to reload_packets() to clarify what's reloaded, and added a alias (marked as obsoleted) from reload(). Change-Id: I4e529992af5f651613950329e73718dbda317d2e Reviewed-on: https://code.wireshark.org/review/13024 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Diffstat (limited to 'epan')
-rw-r--r--epan/funnel.h3
-rw-r--r--epan/wslua/wslua_gui.c32
2 files changed, 31 insertions, 4 deletions
diff --git a/epan/funnel.h b/epan/funnel.h
index 1d1c7365d7..04a31b87f1 100644
--- a/epan/funnel.h
+++ b/epan/funnel.h
@@ -91,7 +91,8 @@ typedef struct _funnel_ops_t {
void (*set_filter)(funnel_ops_id_t *ops_id, const char* filter);
void (*set_color_filter_slot)(guint8 flit_nr, const gchar* filter);
gboolean (*open_file)(funnel_ops_id_t *ops_id, const char* fname, const char* filter, char** error);
- void (*reload)(funnel_ops_id_t *ops_id);
+ void (*reload_packets)(funnel_ops_id_t *ops_id);
+ void (*reload_lua_plugins)(funnel_ops_id_t *ops_id);
void (*apply_filter)(funnel_ops_id_t *ops_id);
gboolean (*browser_open_url)(const gchar *url);
diff --git a/epan/wslua/wslua_gui.c b/epan/wslua/wslua_gui.c
index 1fc3baeee7..ab091092cb 100644
--- a/epan/wslua/wslua_gui.c
+++ b/epan/wslua/wslua_gui.c
@@ -824,14 +824,40 @@ WSLUA_FUNCTION wslua_apply_filter(lua_State* L) { /* Apply the filter in the mai
}
-WSLUA_FUNCTION wslua_reload(lua_State* L) { /* Reload the current capture file. */
+WSLUA_FUNCTION wslua_reload(lua_State* L) { /* Reload the current capture file. Obsolete, use reload_packets() */
- if (!ops->reload) {
+ if (!ops->reload_packets) {
WSLUA_ERROR(reload, "GUI not available");
return 0;
}
- ops->reload(ops->ops_id);
+ ops->reload_packets(ops->ops_id);
+
+ return 0;
+}
+
+
+WSLUA_FUNCTION wslua_reload_packets(lua_State* L) { /* Reload the current capture file. */
+
+ if (!ops->reload_packets) {
+ WSLUA_ERROR(reload, "GUI not available");
+ return 0;
+ }
+
+ ops->reload_packets(ops->ops_id);
+
+ return 0;
+}
+
+
+WSLUA_FUNCTION wslua_reload_lua_plugins(lua_State* L) { /* Reload all Lua plugins. */
+
+ if (!ops->reload_lua_plugins) {
+ WSLUA_ERROR(reload_lua_plugins, "GUI not available");
+ return 0;
+ }
+
+ ops->reload_lua_plugins(ops->ops_id);
return 0;
}