diff options
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 14 |
1 files changed, 12 insertions, 2 deletions
| @@ -280,7 +280,7 @@ int main(int argc, char *argv[]) | |||
| 280 | #if USE_SSL | 280 | #if USE_SSL |
| 281 | if (prefs_common.use_master_password) { | 281 | if (prefs_common.use_master_password) { |
| 282 | if (prefs_common.master_password_hash != NULL) { | 282 | if (prefs_common.master_password_hash != NULL) { |
| 283 | if (check_master_password_interactively(3) != RC_OK) { | 283 | if (check_master_password_interactively(3) != MP_RC_OK) { |
| 284 | if (alertpanel(_("Master password"), | 284 | if (alertpanel(_("Master password"), |
| 285 | _("Invalid master password"), | 285 | _("Invalid master password"), |
| 286 | GTK_STOCK_DISCARD, | 286 | GTK_STOCK_DISCARD, |
| @@ -292,7 +292,7 @@ int main(int argc, char *argv[]) | |||
| 292 | } else { | 292 | } else { |
| 293 | alertpanel_notice( | 293 | alertpanel_notice( |
| 294 | _("Master password enabled but not set. Setting one now")); | 294 | _("Master password enabled but not set. Setting one now")); |
| 295 | if (set_master_password_interactively(3) != RC_OK) { | 295 | if (set_master_password_interactively(3) != MP_RC_OK) { |
| 296 | if (alertpanel(_("Master password"), | 296 | if (alertpanel(_("Master password"), |
| 297 | _("Unable to set master password"), | 297 | _("Unable to set master password"), |
| 298 | GTK_STOCK_DISCARD, | 298 | GTK_STOCK_DISCARD, |
| @@ -303,6 +303,16 @@ int main(int argc, char *argv[]) | |||
| 303 | } | 303 | } |
| 304 | } | 304 | } |
| 305 | } | 305 | } |
| 306 | /* security goal: | ||
| 307 | * if the master password is enabled and loaded on init, | ||
| 308 | * an attacker can potentially set use_master_password - disabled | ||
| 309 | * afterwards and then force Sylpheed to save account data - the result | ||
| 310 | * being passwords saved to accountrc in plain-text. | ||
| 311 | * possible solution: | ||
| 312 | * Do not allow the passwords to be stored in plain-text if Sylpheed | ||
| 313 | * was started with use_master_password - enabled. | ||
| 314 | */ | ||
| 315 | master_password_enabled_on_init = prefs_common.use_master_password; | ||
| 306 | #endif | 316 | #endif |
| 307 | filter_set_addressbook_func(addressbook_has_address); | 317 | filter_set_addressbook_func(addressbook_has_address); |
| 308 | filter_read_config(); | 318 | filter_read_config(); |
