diff -r 51d326d5cb92 -r 66f7e2aa040c guard-xmpp-password.diff --- a/guard-xmpp-password.diff Fri Mar 04 15:57:04 2016 +0200 +++ b/guard-xmpp-password.diff Fri Dec 09 02:12:34 2016 +0200 @@ -1,19 +1,19 @@ # HG changeset patch -# Parent 6a07f127a10b06c5314e76713bebce46f40c602a +# Parent 904e7cbbc385aa65d4c5507cd6524245cb289011 Guard XMPP password with option guard * instead of filtering access to stored in public place restricted data, better store restricted data somewhere else * add xmpp_init() and xmpp_have_password (non-api) -diff -r 6a07f127a10b mcabber/mcabber/commands.c ---- a/mcabber/mcabber/commands.c Fri Mar 04 13:54:13 2016 +0200 -+++ b/mcabber/mcabber/commands.c Fri Mar 04 13:55:29 2016 +0200 +diff -r 904e7cbbc385 mcabber/mcabber/commands.c +--- a/mcabber/mcabber/commands.c Fri Dec 09 01:41:18 2016 +0200 ++++ b/mcabber/mcabber/commands.c Fri Dec 09 01:47:05 2016 +0200 @@ -2303,10 +2303,8 @@ static void list_option_cb(char *k, char *v, void *f) { -- if (strcmp(k, "password")) { +- if (strncmp(k, "password", 8) && strcmp(k, "pgp_passphrase")) { - GSList **list = f; - *list = g_slist_insert_sorted(*list, k, (GCompareFunc)strcmp); - } @@ -22,10 +22,10 @@ } static void do_set(char *arg) -diff -r 6a07f127a10b mcabber/mcabber/main.c ---- a/mcabber/mcabber/main.c Fri Mar 04 13:54:13 2016 +0200 -+++ b/mcabber/mcabber/main.c Fri Mar 04 13:55:29 2016 +0200 -@@ -451,6 +451,7 @@ +diff -r 904e7cbbc385 mcabber/mcabber/main.c +--- a/mcabber/mcabber/main.c Fri Dec 09 01:41:18 2016 +0200 ++++ b/mcabber/mcabber/main.c Fri Dec 09 01:47:05 2016 +0200 +@@ -460,6 +460,7 @@ scr_init_locale_charset(); ut_init_debug(); help_init(); @@ -33,7 +33,7 @@ /* Parsing config file... */ ret = cfg_read_file(configFile, TRUE); -@@ -472,19 +473,21 @@ +@@ -481,19 +482,21 @@ /* If no password is stored, we ask for it before entering ncurses mode -- unless the username is unknown. */ @@ -57,10 +57,10 @@ settings_set(SETTINGS_TYPE_OPTION, "password", pwd); g_free(pwd); } -diff -r 6a07f127a10b mcabber/mcabber/xmpp.c ---- a/mcabber/mcabber/xmpp.c Fri Mar 04 13:54:13 2016 +0200 -+++ b/mcabber/mcabber/xmpp.c Fri Mar 04 13:55:29 2016 +0200 -@@ -23,6 +23,8 @@ +diff -r 904e7cbbc385 mcabber/mcabber/xmpp.c +--- a/mcabber/mcabber/xmpp.c Fri Dec 09 01:41:18 2016 +0200 ++++ b/mcabber/mcabber/xmpp.c Fri Dec 09 01:47:05 2016 +0200 +@@ -21,6 +21,8 @@ */ #include #include @@ -69,7 +69,7 @@ #include "xmpp.h" #include "xmpp_helper.h" -@@ -58,6 +60,9 @@ +@@ -56,6 +58,9 @@ static enum imstatus mywantedstatus = available; gchar *mystatusmsg; @@ -79,7 +79,7 @@ char imstatus2char[imstatus_size+1] = { '_', 'o', 'f', 'd', 'n', 'a', 'i', '\0' }; -@@ -816,16 +821,15 @@ +@@ -814,16 +819,15 @@ GError *error = NULL; if (success) { @@ -98,7 +98,7 @@ connection_auth_cb, NULL, FALSE, &error)) { scr_LogPrint(LPRINT_LOGNORM, "Failed to authenticate: %s", error->message); -@@ -1765,13 +1769,37 @@ +@@ -1763,13 +1767,37 @@ } } @@ -137,7 +137,7 @@ char *dynresource = NULL; #ifndef LOUDMOUTH_USES_SHA256 char fpr[FINGERPRINT_LENGTH] = {0}; -@@ -1790,7 +1818,6 @@ +@@ -1788,7 +1816,6 @@ servername = settings_opt_get("server"); userjid = settings_opt_get("jid"); @@ -145,7 +145,7 @@ resource = settings_opt_get("resource"); proxy_host = settings_opt_get("proxy_host"); ssl_fpr = settings_opt_get("ssl_fingerprint"); -@@ -1799,7 +1826,7 @@ +@@ -1797,7 +1824,7 @@ scr_LogPrint(LPRINT_LOGNORM, "Your JID has not been specified!"); return -1; } @@ -154,9 +154,9 @@ scr_LogPrint(LPRINT_LOGNORM, "Your password has not been specified!"); return -1; } -diff -r 6a07f127a10b mcabber/mcabber/xmpp.h ---- a/mcabber/mcabber/xmpp.h Fri Mar 04 13:54:13 2016 +0200 -+++ b/mcabber/mcabber/xmpp.h Fri Mar 04 13:55:29 2016 +0200 +diff -r 904e7cbbc385 mcabber/mcabber/xmpp.h +--- a/mcabber/mcabber/xmpp.h Fri Dec 09 01:41:18 2016 +0200 ++++ b/mcabber/mcabber/xmpp.h Fri Dec 09 01:47:05 2016 +0200 @@ -34,7 +34,9 @@ extern LmConnection* lconnection; @@ -165,5 +165,5 @@ +void xmpp_init(void); /* private */ int xmpp_connect(void); - void xmpp_disconnect(void); + void xmpp_disconnect(const char *message); gboolean xmpp_is_online(void);