guard-xmpp-password
author Myhailo Danylenko <isbear@ukrpost.net>
Fri, 02 Apr 2010 02:29:43 +0300
changeset 0 633272cbb544
child 13 ce6711e64d02
permissions -rw-r--r--
Initial experimental branch commit * fifo-use-guard * modularize-fifo * separate-extcmd * modularize-extcmd * guard-xmpp-password * guardize-colors * roster-state-colors * direct-invite * muc-multiple-statuses
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     1
diff -r cc9cb758d7ae mcabber/mcabber/commands.c
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     2
--- a/mcabber/mcabber/commands.c	Fri Apr 02 00:51:29 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     3
+++ b/mcabber/mcabber/commands.c	Fri Apr 02 01:05:03 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     4
@@ -2087,10 +2087,8 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     5
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     6
 static void list_option_cb(char *k, char *v, void *f)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     7
 {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     8
-  if (strcmp(k, "password")) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     9
-    GSList **list = f;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    10
-    *list = g_slist_insert_sorted(*list, k, (GCompareFunc)strcmp);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    11
-  }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    12
+  GSList **list = f;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    13
+  *list = g_slist_insert_sorted(*list, k, (GCompareFunc)strcmp);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    14
 }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    15
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    16
 static void do_set(char *arg)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    17
diff -r cc9cb758d7ae mcabber/mcabber/main.c
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    18
--- a/mcabber/mcabber/main.c	Fri Apr 02 00:51:29 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    19
+++ b/mcabber/mcabber/main.c	Fri Apr 02 01:05:03 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    20
@@ -379,6 +379,7 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    21
   scr_init_locale_charset();
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    22
   ut_init_debug();
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    23
   help_init();
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    24
+  xmpp_init();
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    25
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    26
   /* Parsing config file... */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    27
   ret = cfg_read_file(configFile, TRUE);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    28
@@ -390,7 +391,7 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    29
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    30
   /* If no password is stored, we ask for it before entering
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    31
      ncurses mode -- unless the username is unknown. */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    32
-  if (settings_opt_get("jid") && !settings_opt_get("password")) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    33
+  if (settings_opt_get("jid") && !xmpp_have_password) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    34
     const char *p;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    35
     char *pwd;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    36
     p = settings_opt_get("server");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    37
@@ -401,6 +402,7 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    38
       printf("User JID: %s\n", p);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    39
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    40
     pwd = ask_password("your Jabber password");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    41
+    /* Will be intercepted by guard */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    42
     settings_set(SETTINGS_TYPE_OPTION, "password", pwd);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    43
     g_free(pwd);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    44
   }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    45
diff -r cc9cb758d7ae mcabber/mcabber/xmpp.c
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    46
--- a/mcabber/mcabber/xmpp.c	Fri Apr 02 00:51:29 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    47
+++ b/mcabber/mcabber/xmpp.c	Fri Apr 02 01:05:03 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    48
@@ -23,6 +23,8 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    49
  */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    50
 #include <stdlib.h>
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    51
 #include <string.h>
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    52
+#include <sys/mman.h>
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    53
+#include <errno.h>
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    54
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    55
 #include "xmpp.h"
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    56
 #include "xmpp_helper.h"
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    57
@@ -53,6 +55,9 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    58
 static enum imstatus mywantedstatus = available;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    59
 gchar *mystatusmsg;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    60
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    61
+static char *xmpp_password = NULL;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    62
+gboolean xmpp_have_password = FALSE;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    63
+
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    64
 char imstatus2char[imstatus_size+1] = {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    65
     '_', 'o', 'f', 'd', 'n', 'a', 'i', '\0'
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    66
 };
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    67
@@ -892,16 +897,15 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    68
   GError *error = NULL;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    69
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    70
   if (success) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    71
-    const char *password, *resource;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    72
+    const char *resource;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    73
     char *username;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    74
     username   = jid_get_username(settings_opt_get("jid"));
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    75
-    password   = settings_opt_get("password");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    76
     resource   = strchr(lm_connection_get_jid(connection),
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    77
                         JID_RESOURCE_SEPARATOR);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    78
     if (resource)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    79
       resource++;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    80
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    81
-    if (!lm_connection_authenticate(lconnection, username, password, resource,
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    82
+    if (!lm_connection_authenticate(lconnection, username, xmpp_password, resource,
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    83
                                     connection_auth_cb, NULL, FALSE, &error)) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    84
       scr_LogPrint(LPRINT_LOGNORM, "Failed to authenticate: %s",
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    85
                    error->message);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    86
@@ -1633,13 +1637,37 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    87
   }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    88
 }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    89
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    90
+static gchar *xmpp_password_guard(const gchar *key, const gchar *new_value)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    91
+{
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    92
+  if (xmpp_password) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    93
+    size_t len = strlen(xmpp_password);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    94
+    memset(xmpp_password, '\0', len);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    95
+    if (munlock(xmpp_password, len))
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    96
+      scr_LogPrint(LPRINT_DEBUG, "password guard: Cannot unlock memory: %s.",
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    97
+                   strerror(errno));
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    98
+    g_free(xmpp_password);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    99
+  }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   100
+  xmpp_password = g_strdup(new_value);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   101
+  if (xmpp_password) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   102
+    if (mlock(xmpp_password, strlen(xmpp_password)))
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   103
+      scr_LogPrint(LPRINT_DEBUG, "password guard: Cannot lock memory: %s.",
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   104
+                   strerror(errno));
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   105
+    xmpp_have_password = TRUE;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   106
+  }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   107
+  return NULL;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   108
+}
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   109
+
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   110
+void xmpp_init(void)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   111
+{
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   112
+  settings_set_guard("password", xmpp_password_guard);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   113
+}
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   114
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   115
 //  xmpp_connect()
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   116
 // Return a non-zero value if there's an obvious problem
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   117
 // (no JID, no password, etc.)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   118
 gint xmpp_connect(void)
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   119
 {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   120
-  const char *userjid, *password, *resource, *servername, *ssl_fpr;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   121
+  const char *userjid, *resource, *servername, *ssl_fpr;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   122
   char *dynresource = NULL;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   123
   char fpr[16];
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   124
   const char *proxy_host;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   125
@@ -1656,7 +1684,6 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   126
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   127
   servername = settings_opt_get("server");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   128
   userjid    = settings_opt_get("jid");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   129
-  password   = settings_opt_get("password");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   130
   resource   = settings_opt_get("resource");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   131
   proxy_host = settings_opt_get("proxy_host");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   132
   ssl_fpr    = settings_opt_get("ssl_fingerprint");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   133
@@ -1665,7 +1692,7 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   134
     scr_LogPrint(LPRINT_LOGNORM, "Your JID has not been specified!");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   135
     return -1;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   136
   }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   137
-  if (!password) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   138
+  if (!xmpp_password) {
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   139
     scr_LogPrint(LPRINT_LOGNORM, "Your password has not been specified!");
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   140
     return -1;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   141
   }
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   142
diff -r cc9cb758d7ae mcabber/mcabber/xmpp.h
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   143
--- a/mcabber/mcabber/xmpp.h	Fri Apr 02 00:51:29 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   144
+++ b/mcabber/mcabber/xmpp.h	Fri Apr 02 01:05:03 2010 +0300
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   145
@@ -31,7 +31,9 @@
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   146
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   147
 extern LmConnection* lconnection;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   148
 extern LmSSL* lssl;
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   149
+extern gboolean xmpp_have_password; /* private */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   150
 
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   151
+void xmpp_init(void); /* private */
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   152
 int  xmpp_connect(void);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   153
 void xmpp_disconnect(void);
633272cbb544 Initial experimental branch commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   154
 gboolean xmpp_is_online(void);