summaryrefslogtreecommitdiff
path: root/src/plugins/relay
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/relay')
-rw-r--r--src/plugins/relay/api/relay-api-protocol.c14
-rw-r--r--src/plugins/relay/relay-config.c50
-rw-r--r--src/plugins/relay/relay-config.h3
-rw-r--r--src/plugins/relay/weechat/relay-weechat-protocol.c14
4 files changed, 26 insertions, 55 deletions
diff --git a/src/plugins/relay/api/relay-api-protocol.c b/src/plugins/relay/api/relay-api-protocol.c
index fb1983422..f04264125 100644
--- a/src/plugins/relay/api/relay-api-protocol.c
+++ b/src/plugins/relay/api/relay-api-protocol.c
@@ -480,7 +480,7 @@ error:
RELAY_API_PROTOCOL_CALLBACK(input)
{
cJSON *json_body, *json_buffer, *json_command;
- const char *ptr_buffer_name, *ptr_command, *ptr_weechat_commands;
+ const char *ptr_buffer_name, *ptr_command, *ptr_commands;
struct t_gui_buffer *ptr_buffer;
struct t_hashtable *options;
@@ -541,15 +541,9 @@ RELAY_API_PROTOCOL_CALLBACK(input)
return WEECHAT_RC_OK;
}
- ptr_weechat_commands = weechat_config_string (
- relay_config_weechat_commands);
- if (ptr_weechat_commands && ptr_weechat_commands[0])
- {
- weechat_hashtable_set (
- options,
- "commands",
- weechat_config_string (relay_config_weechat_commands));
- }
+ ptr_commands = weechat_config_string (relay_config_network_commands);
+ if (ptr_commands && ptr_commands[0])
+ weechat_hashtable_set (options, "commands", ptr_commands);
/*
* delay the execution of command after we go back in the WeeChat
diff --git a/src/plugins/relay/relay-config.c b/src/plugins/relay/relay-config.c
index b0f6beeca..b9c4422ec 100644
--- a/src/plugins/relay/relay-config.c
+++ b/src/plugins/relay/relay-config.c
@@ -47,7 +47,6 @@ struct t_config_section *relay_config_section_look = NULL;
struct t_config_section *relay_config_section_color = NULL;
struct t_config_section *relay_config_section_network = NULL;
struct t_config_section *relay_config_section_irc = NULL;
-struct t_config_section *relay_config_section_weechat = NULL;
struct t_config_section *relay_config_section_port = NULL;
struct t_config_section *relay_config_section_path = NULL;
@@ -74,6 +73,7 @@ struct t_config_option *relay_config_network_allowed_ips = NULL;
struct t_config_option *relay_config_network_auth_timeout = NULL;
struct t_config_option *relay_config_network_bind_address = NULL;
struct t_config_option *relay_config_network_clients_purge_delay = NULL;
+struct t_config_option *relay_config_network_commands = NULL;
struct t_config_option *relay_config_network_compression = NULL;
struct t_config_option *relay_config_network_ipv6 = NULL;
struct t_config_option *relay_config_network_max_clients = NULL;
@@ -96,10 +96,6 @@ struct t_config_option *relay_config_irc_backlog_since_last_message = NULL;
struct t_config_option *relay_config_irc_backlog_tags = NULL;
struct t_config_option *relay_config_irc_backlog_time_format = NULL;
-/* relay config, weechat section */
-
-struct t_config_option *relay_config_weechat_commands = NULL;
-
/* other */
int relay_config_auto_open_buffer[RELAY_NUM_PROTOCOLS];
@@ -1288,6 +1284,22 @@ relay_config_init ()
"clients immediately, -1 = never purge)"),
NULL, -1, 60 * 24 * 30, "0", NULL, 0,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+ relay_config_network_commands = weechat_config_new_option (
+ relay_config_file, relay_config_section_network,
+ "commands", "string",
+ N_("comma-separated list of commands allowed/denied when input "
+ "data (text or command) is received from a client (weechat "
+ "and api protocols); "
+ "\"*\" means any command, a name beginning with \"!\" is "
+ "a negative value to prevent a command from being executed, "
+ "wildcard \"*\" is allowed in names; this option should be set "
+ "if the relay client is not safe (someone could use it to run "
+ "commands); for example \"*,!exec,!quit\" allows any command "
+ "except /exec and /quit"),
+ NULL, 0, 0, "", NULL, 0,
+ NULL, NULL, NULL,
+ NULL, NULL, NULL,
+ NULL, NULL, NULL);
relay_config_network_compression = weechat_config_new_option (
relay_config_file, relay_config_section_network,
"compression", "integer",
@@ -1478,34 +1490,6 @@ relay_config_init ()
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
}
- /* section weechat */
- relay_config_section_weechat = weechat_config_new_section (
- relay_config_file, "weechat",
- 0, 0,
- NULL, NULL, NULL,
- NULL, NULL, NULL,
- NULL, NULL, NULL,
- NULL, NULL, NULL,
- NULL, NULL, NULL);
- if (relay_config_section_weechat)
- {
- relay_config_weechat_commands = weechat_config_new_option (
- relay_config_file, relay_config_section_weechat,
- "commands", "string",
- N_("comma-separated list of commands allowed/denied when input "
- "data (text or command) is received from a client; "
- "\"*\" means any command, a name beginning with \"!\" is "
- "a negative value to prevent a command from being executed, "
- "wildcard \"*\" is allowed in names; this option should be set "
- "if the relay client is not safe (someone could use it to run "
- "commands); for example \"*,!exec,!quit\" allows any command "
- "except /exec and /quit"),
- NULL, 0, 0, "", NULL, 0,
- NULL, NULL, NULL,
- NULL, NULL, NULL,
- NULL, NULL, NULL);
- }
-
/* section port */
relay_config_section_port = weechat_config_new_section (
relay_config_file, "port",
diff --git a/src/plugins/relay/relay-config.h b/src/plugins/relay/relay-config.h
index bc49aca01..de5697341 100644
--- a/src/plugins/relay/relay-config.h
+++ b/src/plugins/relay/relay-config.h
@@ -45,6 +45,7 @@ extern struct t_config_option *relay_config_network_allowed_ips;
extern struct t_config_option *relay_config_network_auth_timeout;
extern struct t_config_option *relay_config_network_bind_address;
extern struct t_config_option *relay_config_network_clients_purge_delay;
+extern struct t_config_option *relay_config_network_commands;
extern struct t_config_option *relay_config_network_compression;
extern struct t_config_option *relay_config_network_ipv6;
extern struct t_config_option *relay_config_network_max_clients;
@@ -65,8 +66,6 @@ extern struct t_config_option *relay_config_irc_backlog_since_last_message;
extern struct t_config_option *relay_config_irc_backlog_tags;
extern struct t_config_option *relay_config_irc_backlog_time_format;
-extern struct t_config_option *relay_config_weechat_commands;
-
extern int relay_config_auto_open_buffer[];
extern int relay_config_display_clients[];
extern regex_t *relay_config_regex_allowed_ips;
diff --git a/src/plugins/relay/weechat/relay-weechat-protocol.c b/src/plugins/relay/weechat/relay-weechat-protocol.c
index acc16b2dc..a7d47e3af 100644
--- a/src/plugins/relay/weechat/relay-weechat-protocol.c
+++ b/src/plugins/relay/weechat/relay-weechat-protocol.c
@@ -612,7 +612,7 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(input)
{
struct t_gui_buffer *ptr_buffer;
struct t_hashtable *options;
- const char *ptr_weechat_commands;
+ const char *ptr_commands;
char *pos;
RELAY_WEECHAT_PROTOCOL_MIN_ARGS(1);
@@ -648,15 +648,9 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(input)
return WEECHAT_RC_OK;
}
- ptr_weechat_commands = weechat_config_string (
- relay_config_weechat_commands);
- if (ptr_weechat_commands && ptr_weechat_commands[0])
- {
- weechat_hashtable_set (
- options,
- "commands",
- weechat_config_string (relay_config_weechat_commands));
- }
+ ptr_commands = weechat_config_string (relay_config_network_commands);
+ if (ptr_commands && ptr_commands[0])
+ weechat_hashtable_set (options, "commands", ptr_commands);
/*
* delay the execution of command after we go back in the WeeChat