From 69ef042b64ac1cb2f771d3ae02f27a7e64951222 Mon Sep 17 00:00:00 2001 From: Sven Moritz Hallberg Date: Sun, 1 May 2011 18:22:35 +0200 Subject: add otr reconnect command --- doc/user-guide/commands.xml | 19 ++++++++++++++++++- otr.c | 8 ++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/doc/user-guide/commands.xml b/doc/user-guide/commands.xml index 2baed9d0..7a36083f 100644 --- a/doc/user-guide/commands.xml +++ b/doc/user-guide/commands.xml @@ -392,7 +392,7 @@ - Available subcommands: connect, disconnect, smp, smpq, trust, info, keygen, and forget. See help otr <subcommand> for more information. + Available subcommands: connect, disconnect, reconnect, smp, smpq, trust, info, keygen, and forget. See help otr <subcommand> for more information. @@ -423,6 +423,23 @@ + + otr reconnect <nick> + + + + + Breaks and re-establishes the encrypted connection with the specified user. Useful if something got desynced. + + + + Equivalent to otr disconnect followed by otr connect. + + + + + + otr smp <nick> <secret> diff --git a/otr.c b/otr.c index b034eae8..1bea9c44 100644 --- a/otr.c +++ b/otr.c @@ -85,6 +85,7 @@ const char *op_account_name(void *opdata, const char *account, const char *proto static void cmd_otr(irc_t *irc, char **args); void cmd_otr_connect(irc_t *irc, char **args); void cmd_otr_disconnect(irc_t *irc, char **args); +void cmd_otr_reconnect(irc_t *irc, char **args); void cmd_otr_smp(irc_t *irc, char **args); void cmd_otr_smpq(irc_t *irc, char **args); void cmd_otr_trust(irc_t *irc, char **args); @@ -95,6 +96,7 @@ void cmd_otr_forget(irc_t *irc, char **args); const command_t otr_commands[] = { { "connect", 1, &cmd_otr_connect, 0 }, { "disconnect", 1, &cmd_otr_disconnect, 0 }, + { "reconnect", 1, &cmd_otr_reconnect, 0 }, { "smp", 2, &cmd_otr_smp, 0 }, { "smpq", 3, &cmd_otr_smpq, 0 }, { "trust", 6, &cmd_otr_trust, 0 }, @@ -693,6 +695,12 @@ const char *op_account_name(void *opdata, const char *account, const char *proto /*** OTR sub-command handlers ***/ +void cmd_otr_reconnect(irc_t *irc, char **args) +{ + cmd_otr_disconnect(irc, args); + cmd_otr_connect(irc, args); +} + void cmd_otr_disconnect(irc_t *irc, char **args) { irc_user_t *u; -- cgit v1.2.3