$use_iframe = 'false' if ( !$use_iframe );
$lossy_encoding = 'false' if ( !$lossy_encoding );
$allow_remote_configtest = 'false' if ( !$allow_remote_configtest );
+$secured_config = 'true' if ( !$secured_config );
$sm_debug_mode = 'SM_DEBUG_MODE_MODERATE' if ( !$sm_debug_mode );
#FIXME: When this is STABLE software, remove the line above and uncomment the one below:
print "R Return to Main Menu\n";
} elsif ( $menu == 3 ) {
print $WHT. "Folder Defaults\n" . $NRM;
- print "1. Default Folder Prefix : $WHT$default_folder_prefix$NRM\n";
- print "2. Show Folder Prefix Option : $WHT$show_prefix_option$NRM\n";
- print "3. Trash Folder : $WHT$trash_folder$NRM\n";
- print "4. Sent Folder : $WHT$sent_folder$NRM\n";
- print "5. Drafts Folder : $WHT$draft_folder$NRM\n";
- print "6. By default, move to trash : $WHT$default_move_to_trash$NRM\n";
- print "7. By default, move to sent : $WHT$default_move_to_sent$NRM\n";
- print "8. By default, save as draft : $WHT$default_save_as_draft$NRM\n";
- print "9. List Special Folders First : $WHT$list_special_folders_first$NRM\n";
- print "10. Show Special Folders Color : $WHT$use_special_folder_color$NRM\n";
- print "11. Auto Expunge : $WHT$auto_expunge$NRM\n";
- print "12. Default Sub. of INBOX : $WHT$default_sub_of_inbox$NRM\n";
- print "13. Show 'Contain Sub.' Option : $WHT$show_contain_subfolders_option$NRM\n";
- print "14. Default Unseen Notify : $WHT$default_unseen_notify$NRM\n";
- print "15. Default Unseen Type : $WHT$default_unseen_type$NRM\n";
- print "16. Auto Create Special Folders : $WHT$auto_create_special$NRM\n";
- print "17. Folder Delete Bypasses Trash : $WHT$delete_folder$NRM\n";
- print "18. Enable /NoSelect folder fix : $WHT$noselect_fix_enable$NRM\n";
+ print "1. Default Folder Prefix : $WHT$default_folder_prefix$NRM\n";
+ print "2. Show Folder Prefix Option : $WHT$show_prefix_option$NRM\n";
+ print "3. Trash Folder : $WHT$trash_folder$NRM\n";
+ print "4. Sent Folder : $WHT$sent_folder$NRM\n";
+ print "5. Drafts Folder : $WHT$draft_folder$NRM\n";
+ print "6. By default, move to trash : $WHT$default_move_to_trash$NRM\n";
+ print "7. By default, save sent messages : $WHT$default_move_to_sent$NRM\n";
+ print "8. By default, save as draft : $WHT$default_save_as_draft$NRM\n";
+ print "9. List Special Folders First : $WHT$list_special_folders_first$NRM\n";
+ print "10. Show Special Folders Color : $WHT$use_special_folder_color$NRM\n";
+ print "11. Auto Expunge : $WHT$auto_expunge$NRM\n";
+ print "12. Default Sub. of INBOX : $WHT$default_sub_of_inbox$NRM\n";
+ print "13. Show 'Contain Sub.' Option : $WHT$show_contain_subfolders_option$NRM\n";
+ print "14. Default Unseen Notify : $WHT$default_unseen_notify$NRM\n";
+ print "15. Default Unseen Type : $WHT$default_unseen_type$NRM\n";
+ print "16. Auto Create Special Folders : $WHT$auto_create_special$NRM\n";
+ print "17. Folder Delete Bypasses Trash : $WHT$delete_folder$NRM\n";
+ print "18. Enable /NoSelect folder fix : $WHT$noselect_fix_enable$NRM\n";
print "\n";
print "R Return to Main Menu\n";
} elsif ( $menu == 4 ) {
print $WHT. "Configuration tweaks\n" . $NRM;
print "6. Allow remote configtest : $WHT$allow_remote_configtest$NRM\n";
print "7. Debug mode : $WHT$sm_debug_mode$NRM\n";
+ print "8. Secured configuration mode : $WHT$secured_config$NRM\n";
print "\n";
print "R Return to Main Menu\n";
}
elsif ( $command == 5 ) { $use_php_iconv = commandB5(); }
elsif ( $command == 6 ) { $allow_remote_configtest = commandB6(); }
elsif ( $command == 7 ) { $sm_debug_mode = commandB8(); }
+ elsif ( $command == 8 ) { $secured_config = commandB9(); }
}
}
}
return $default_move_to_trash;
}
-# default move to sent
+# default move to sent (save sent messages)
sub command24b {
- print "By default, should messages get moved to the sent folder? You\n";
- print "can specify the default sent folder in option 4. If this is set\n";
- print "to false, messages will get sent and no copy will be made.\n";
+ print "By default, should copies of outgoing messages get saved in the\n";
+ print "sent folder? You can specify the default sent folder in option 4.\n";
+ print "If this is set to false, messages will get sent and no copy will\n";
+ print "be made.\n";
print "\n";
print "Sent folder is currently: $sent_folder\n";
print "\n";
} else {
$default_value = "n";
}
- print "By default, move to sent (y/n) [$WHT$default_value$NRM]: $WHT";
+ print "By default, save sent messages (y/n) [$WHT$default_value$NRM]: $WHT";
$new_show = <STDIN>;
if ( ( $new_show =~ /^y\n/i ) || ( ( $new_show =~ /^\n/ ) && ( $default_value eq "y" ) ) ) {
$default_move_to_sent = 'true';
print "Drafts folder is currently: $draft_folder\n";
print "\n";
- if ( lc($default_move_to_draft) eq 'true' ) {
+ if ( lc($default_save_as_draft) eq 'true' ) {
$default_value = "y";
} else {
$default_value = "n";
return $sm_debug_mode;
}
+# Secured configuration mode (since 1.5.2)
+sub commandB9 {
+ print "This option allows you to enable \"Secured Configuration\" mode,\n";
+ print "which will guarantee that certain settings made herein will be\n";
+ print "made immutable and will not be subject to override by either friendly\n";
+ print "or unfriendly code/plugins. Only a small number of settings herein\n";
+ print "will be used in this manner - just those that are deemed to be a\n";
+ print "potential security threat when rouge plugin or other code may be\n";
+ print "executed inside SquirrelMail.\n";
+ print "\n";
+
+ if ( lc($secured_config) eq 'true' ) {
+ $default_value = "y";
+ } else {
+ $default_value = "n";
+ }
+ print "Enable secured configuration mode? (y/n) [$WHT$default_value$NRM]: $WHT";
+ $secured_config = <STDIN>;
+ if ( ( $secured_config =~ /^y\n/i ) || ( ( $secured_config =~ /^\n/ ) && ( $default_value eq "y" ) ) ) {
+ $secured_config = 'true';
+ } else {
+ $secured_config = 'false';
+ }
+ return $secured_config;
+}
+
sub save_data {
$tab = " ";
if ( open( CF, ">config.php" ) ) {
print CF "\n";
# boolean
print CF "\$allow_remote_configtest = $allow_remote_configtest;\n";
+ print CF "\$secured_config = $secured_config;\n";
# (binary) integer or constant - convert integer
# values to constants before output
$sm_debug_mode = convert_debug_binary_integer_to_constants($sm_debug_mode);