summaryrefslogtreecommitdiff
path: root/src/send_message.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/send_message.c')
-rw-r--r--src/send_message.c22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/send_message.c b/src/send_message.c
index 7b66423..d5fc6e8 100644
--- a/src/send_message.c
+++ b/src/send_message.c
@@ -58,6 +58,7 @@
58#include "inc.h" 58#include "inc.h"
59#include "mainwindow.h" 59#include "mainwindow.h"
60#include "summaryview.h" 60#include "summaryview.h"
61#include "masterpassword.h"
61 62
62#define SMTP_PORT 25 63#define SMTP_PORT 25
63#if USE_SSL 64#if USE_SSL
@@ -648,24 +649,17 @@ static gint send_message_smtp(PrefsAccount *ac_prefs, GSList *to_list, FILE *fp)
648 649
649 if (ac_prefs->smtp_userid) { 650 if (ac_prefs->smtp_userid) {
650 smtp_session->user = g_strdup(ac_prefs->smtp_userid); 651 smtp_session->user = g_strdup(ac_prefs->smtp_userid);
651 if (ac_prefs->smtp_passwd) { 652 if (ac_prefs->smtp_passwd)
652 if(prefs_common.use_master_password && 653 if (master_password_active()) {
653 ac_prefs->master_password != NULL) { 654 smtp_session->pass = decrypt_with_master_password(
654 if (decrypt_data(&(smtp_session->pass), 655 ac_prefs->smtp_passwd);
655 ac_prefs->smtp_passwd,
656 ac_prefs->master_password,
657 strlen(ac_prefs->smtp_passwd) + 1) != RC_OK) {
658 session_destroy(session);
659 return -1;
660 }
661 } else { 656 } else {
662 smtp_session->pass = 657 smtp_session->pass = g_strdup(ac_prefs->smtp_passwd);
663 g_strdup(ac_prefs->smtp_passwd);
664 } 658 }
665 } else if (ac_prefs->tmp_smtp_pass) { 659 else if (ac_prefs->tmp_smtp_pass)
666 smtp_session->pass = 660 smtp_session->pass =
667 g_strdup(ac_prefs->tmp_smtp_pass); 661 g_strdup(ac_prefs->tmp_smtp_pass);
668 } else { 662 else {
669 smtp_session->pass = 663 smtp_session->pass =
670 input_query_password 664 input_query_password
671 (ac_prefs->smtp_server, 665 (ac_prefs->smtp_server,