0.9.7claws10
[claws.git] / src / prefs_account.c
index 556c60960a701e71a3e7e2a80fda6fe04dde3cfb..ad9906c1ace3b509aaf2ea937bb6144e7f9ebab2 100644 (file)
@@ -49,6 +49,7 @@
 #include "colorlabel.h"
 #include "smtp.h"
 #include "imap.h"
+#include "remotefolder.h"
 
 static gboolean cancelled;
 
@@ -167,6 +168,8 @@ static struct SSLPrefs {
        GtkWidget *smtp_nossl_radiobtn;
        GtkWidget *smtp_ssltunnel_radiobtn;
        GtkWidget *smtp_starttls_radiobtn;
+
+       GtkWidget *use_nonblocking_ssl_chkbtn;
 } ssl;
 #endif /* USE_OPENSSL */
 
@@ -260,13 +263,13 @@ static PrefParam param[] = {
        {"nntp_server", NULL, &tmp_ac_prefs.nntp_server, P_STRING,
         &basic.nntpserv_entry, prefs_set_data_from_entry, prefs_set_entry},
 
-       {"local_mbox", NULL, &tmp_ac_prefs.local_mbox, P_STRING,
+       {"local_mbox", "/var/mail", &tmp_ac_prefs.local_mbox, P_STRING,
         &basic.localmbox_entry, prefs_set_data_from_entry, prefs_set_entry},
 
        {"use_mail_command", "FALSE", &tmp_ac_prefs.use_mail_command, P_BOOL,
         &basic.mailcmd_chkbtn, prefs_set_data_from_toggle, prefs_set_toggle},
 
-       {"mail_command", "/usr/sbin/sendmail -t", &tmp_ac_prefs.mail_command, P_STRING,
+       {"mail_command", DEFAULT_SENDMAIL_CMD, &tmp_ac_prefs.mail_command, P_STRING,
         &basic.mailcmd_entry, prefs_set_data_from_entry, prefs_set_entry},
 
        {"use_nntp_auth", "FALSE", &tmp_ac_prefs.use_nntp_auth, P_BOOL,
@@ -438,6 +441,10 @@ static PrefParam param[] = {
         &ssl.smtp_nossl_radiobtn,
         prefs_account_enum_set_data_from_radiobtn,
         prefs_account_enum_set_radiobtn},
+
+       {"use_nonblocking_ssl", "1", &tmp_ac_prefs.use_nonblocking_ssl, P_BOOL,
+        &ssl.use_nonblocking_ssl_chkbtn,
+        prefs_set_data_from_toggle, prefs_set_toggle},
 #endif /* USE_OPENSSL */
 
        /* Advanced */
@@ -1020,7 +1027,7 @@ static void prefs_account_basic_create(void)
                          GTK_FILL, 0, 0, 0);
        gtk_misc_set_alignment (GTK_MISC (recvserv_label), 1, 0.5);
 
-       localmbox_label = gtk_label_new (_("Local mailbox file"));
+       localmbox_label = gtk_label_new (_("Local mailbox"));
        gtk_widget_show (localmbox_label);
        gtk_table_attach (GTK_TABLE (serv_table), localmbox_label, 0, 1, 3, 4,
                          GTK_FILL, 0, 0, 0);
@@ -1828,6 +1835,12 @@ static void prefs_account_ssl_create(void)
        GtkWidget *smtp_ssltunnel_radiobtn;
        GtkWidget *smtp_starttls_radiobtn;
 
+       GtkWidget *vbox6;
+       GtkWidget *use_nonblocking_ssl_chkbtn;
+       GtkWidget *hbox;
+       GtkWidget *hbox_spc;
+       GtkWidget *label;
+
        vbox1 = gtk_vbox_new (FALSE, VSPACING);
        gtk_widget_show (vbox1);
        gtk_container_add (GTK_CONTAINER (dialog.notebook), vbox1);
@@ -1901,6 +1914,27 @@ static void prefs_account_ssl_create(void)
                             _("Use STARTTLS command to start SSL session"),
                             SSL_STARTTLS);
 
+       vbox6 = gtk_vbox_new (FALSE, 0);
+       gtk_widget_show (vbox6);
+       gtk_box_pack_start (GTK_BOX (vbox1), vbox6, FALSE, FALSE, 0);
+
+       PACK_CHECK_BUTTON(vbox6, use_nonblocking_ssl_chkbtn,
+                         _("Use non-blocking SSL"));
+
+       hbox = gtk_hbox_new (FALSE, 0);
+       gtk_widget_show (hbox);
+       gtk_box_pack_start (GTK_BOX (vbox6), hbox, FALSE, FALSE, 0);
+
+       hbox_spc = gtk_hbox_new (FALSE, 0);
+       gtk_widget_show (hbox_spc);
+       gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
+       gtk_widget_set_usize (hbox_spc, 16, -1);
+
+       label = gtk_label_new
+               (_("(Turn this off if you have SSL connection problems)"));
+       gtk_widget_show (label);
+       gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
+
        ssl.pop_frame               = pop_frame;
        ssl.pop_nossl_radiobtn      = pop_nossl_radiobtn;
        ssl.pop_ssltunnel_radiobtn  = pop_ssltunnel_radiobtn;
@@ -1919,6 +1953,8 @@ static void prefs_account_ssl_create(void)
        ssl.smtp_nossl_radiobtn     = smtp_nossl_radiobtn;
        ssl.smtp_ssltunnel_radiobtn = smtp_ssltunnel_radiobtn;
        ssl.smtp_starttls_radiobtn  = smtp_starttls_radiobtn;
+
+       ssl.use_nonblocking_ssl_chkbtn = use_nonblocking_ssl_chkbtn;
 }
 
 #undef CREATE_RADIO_BUTTONS