+Sun Oct 27 11:44:32 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Merged c0ffee's /set heartbeat patch to Irssi SILC client.
+ Affected files irssi/src/silc/core/silc-core, silc-server.c.
+
Thu Oct 24 12:22:35 EEST 2002 Pekka Riikonen <priikone@silcnet.org>
* Fixed channel key packet processing bug on backup router
settings_add_int("server", "key_exchange_timeout_secs", 120);
settings_add_int("server", "key_exchange_rekey_secs", 3600);
settings_add_int("server", "connauth_request_secs", 2);
+ settings_add_int("server", "heartbeat", 300);
/* Requested Attributes settings */
settings_add_bool("silc", "attr_allow", TRUE);
silc_free(message);
}
+void silc_send_heartbeat(SilcSocketConnection sock,
+ void *hb_context)
+{
+ SILC_SERVER_REC *server = SILC_SERVER(hb_context);
+
+ if (server == NULL)
+ return;
+
+ silc_client_packet_send(silc_client, sock, SILC_PACKET_HEARTBEAT, 0,
+ NULL, 0, FALSE);
+
+}
+
static void sig_connected(SILC_SERVER_REC *server)
{
SilcClientConnection conn;
/* Put default attributes */
silc_query_attributes_default(silc_client, conn);
+ /* initialize heartbeat sending */
+ if (settings_get_int("heartbeat") > 0)
+ silc_socket_set_heartbeat(conn->sock, settings_get_int("heartbeat"),
+ (void *)server,
+ (SilcSocketConnectionHBCb)silc_send_heartbeat,
+ silc_client->schedule);
+
server->ftp_sessions = silc_dlist_init();
server->isnickflag = isnickflag_func;
server->ischannel = ischannel_func;