1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-03 08:13:14 +02:00

Close relay server sockets on /upgrade

This commit is contained in:
Sebastien Helleu
2010-09-18 09:36:50 +02:00
parent 43cc44abca
commit 5b04d4123c
3 changed files with 20 additions and 7 deletions
+10 -7
View File
@@ -142,13 +142,16 @@ relay_server_close_socket (struct t_relay_server *server)
{
close (server->sock);
server->sock = -1;
weechat_printf (NULL,
_("%s: socket closed for %s.%s (port %d)"),
RELAY_PLUGIN_NAME,
relay_protocol_string[server->protocol],
server->protocol_string,
server->port);
if (!relay_signal_upgrade_received)
{
weechat_printf (NULL,
_("%s: socket closed for %s.%s (port %d)"),
RELAY_PLUGIN_NAME,
relay_protocol_string[server->protocol],
server->protocol_string,
server->port);
}
}
}
+8
View File
@@ -79,6 +79,8 @@ int
relay_signal_upgrade_cb (void *data, const char *signal, const char *type_data,
void *signal_data)
{
struct t_relay_server *ptr_server;
/* make C compiler happy */
(void) data;
(void) signal;
@@ -87,6 +89,12 @@ relay_signal_upgrade_cb (void *data, const char *signal, const char *type_data,
relay_signal_upgrade_received = 1;
for (ptr_server = relay_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
relay_server_close_socket (ptr_server);
}
return WEECHAT_RC_OK;
}
+2
View File
@@ -25,6 +25,8 @@
extern struct t_weechat_plugin *weechat_relay_plugin;
extern int relay_signal_upgrade_received;
/* relay protocol */
enum t_relay_protocol