Chromium Code Reviews

Side by Side Diff: chrome/browser/gtk/options/advanced_contents_gtk.cc

Issue 4091005: Remove SSL 2.0 support. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Sync with ToT Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/gtk/options/advanced_contents_gtk.h" 5 #include "chrome/browser/gtk/options/advanced_contents_gtk.h"
6 6
7 #include <sys/types.h> 7 #include <sys/types.h>
8 #include <sys/wait.h> 8 #include <sys/wait.h>
9 9
10 #include <string> 10 #include <string>
(...skipping 958 matching lines...)
969 969
970 private: 970 private:
971 // Overridden from OptionsPageBase. 971 // Overridden from OptionsPageBase.
972 virtual void NotifyPrefChanged(const std::string* pref_name); 972 virtual void NotifyPrefChanged(const std::string* pref_name);
973 973
974 // The callback functions for the options widgets. 974 // The callback functions for the options widgets.
975 static void OnManageCertificatesClicked(GtkButton* button, 975 static void OnManageCertificatesClicked(GtkButton* button,
976 SecuritySection* section); 976 SecuritySection* section);
977 static void OnRevCheckingEnabledToggled(GtkToggleButton* togglebutton, 977 static void OnRevCheckingEnabledToggled(GtkToggleButton* togglebutton,
978 SecuritySection* section); 978 SecuritySection* section);
979 static void OnSSL2EnabledToggled(GtkToggleButton* togglebutton,
980 SecuritySection* section);
981 static void OnSSL3EnabledToggled(GtkToggleButton* togglebutton, 979 static void OnSSL3EnabledToggled(GtkToggleButton* togglebutton,
982 SecuritySection* section); 980 SecuritySection* section);
983 static void OnTLS1EnabledToggled(GtkToggleButton* togglebutton, 981 static void OnTLS1EnabledToggled(GtkToggleButton* togglebutton,
984 SecuritySection* section); 982 SecuritySection* section);
985 983
986 // The widget containing the options for this section. 984 // The widget containing the options for this section.
987 GtkWidget* page_; 985 GtkWidget* page_;
988 GtkWidget* rev_checking_enabled_checkbox_; 986 GtkWidget* rev_checking_enabled_checkbox_;
989 GtkWidget* ssl2_enabled_checkbox_;
990 GtkWidget* ssl3_enabled_checkbox_; 987 GtkWidget* ssl3_enabled_checkbox_;
991 GtkWidget* tls1_enabled_checkbox_; 988 GtkWidget* tls1_enabled_checkbox_;
992 989
993 // SSLConfigService prefs. 990 // SSLConfigService prefs.
994 BooleanPrefMember rev_checking_enabled_; 991 BooleanPrefMember rev_checking_enabled_;
995 BooleanPrefMember ssl2_enabled_;
996 BooleanPrefMember ssl3_enabled_; 992 BooleanPrefMember ssl3_enabled_;
997 BooleanPrefMember tls1_enabled_; 993 BooleanPrefMember tls1_enabled_;
998 994
999 // Flag to ignore gtk callbacks while we are loading prefs, to avoid 995 // Flag to ignore gtk callbacks while we are loading prefs, to avoid
1000 // then turning around and saving them again. 996 // then turning around and saving them again.
1001 bool pref_changing_; 997 bool pref_changing_;
1002 998
1003 scoped_ptr<AccessibleWidgetHelper> accessible_widget_helper_; 999 scoped_ptr<AccessibleWidgetHelper> accessible_widget_helper_;
1004 1000
1005 DISALLOW_COPY_AND_ASSIGN(SecuritySection); 1001 DISALLOW_COPY_AND_ASSIGN(SecuritySection);
(...skipping 28 matching lines...)
1034 G_CALLBACK(OnManageCertificatesClicked), this); 1030 G_CALLBACK(OnManageCertificatesClicked), this);
1035 1031
1036 // TODO(mattm): should have a description label here and have the checkboxes 1032 // TODO(mattm): should have a description label here and have the checkboxes
1037 // indented, but IDS_OPTIONS_SSL_GROUP_DESCRIPTION isn't appropriate and 1033 // indented, but IDS_OPTIONS_SSL_GROUP_DESCRIPTION isn't appropriate and
1038 // didn't think of adding a Linux specific one before the string freeze. 1034 // didn't think of adding a Linux specific one before the string freeze.
1039 rev_checking_enabled_checkbox_ = AddCheckButtonWithWrappedLabel( 1035 rev_checking_enabled_checkbox_ = AddCheckButtonWithWrappedLabel(
1040 IDS_OPTIONS_SSL_CHECKREVOCATION, page_, 1036 IDS_OPTIONS_SSL_CHECKREVOCATION, page_,
1041 G_CALLBACK(OnRevCheckingEnabledToggled), this); 1037 G_CALLBACK(OnRevCheckingEnabledToggled), this);
1042 accessible_widget_helper_->SetWidgetName( 1038 accessible_widget_helper_->SetWidgetName(
1043 rev_checking_enabled_checkbox_, IDS_OPTIONS_SSL_CHECKREVOCATION); 1039 rev_checking_enabled_checkbox_, IDS_OPTIONS_SSL_CHECKREVOCATION);
1044 ssl2_enabled_checkbox_ = AddCheckButtonWithWrappedLabel(
1045 IDS_OPTIONS_SSL_USESSL2, page_, G_CALLBACK(OnSSL2EnabledToggled), this);
1046 accessible_widget_helper_->SetWidgetName(
1047 ssl2_enabled_checkbox_, IDS_OPTIONS_SSL_USESSL2);
1048 ssl3_enabled_checkbox_ = AddCheckButtonWithWrappedLabel( 1040 ssl3_enabled_checkbox_ = AddCheckButtonWithWrappedLabel(
1049 IDS_OPTIONS_SSL_USESSL3, page_, G_CALLBACK(OnSSL3EnabledToggled), this); 1041 IDS_OPTIONS_SSL_USESSL3, page_, G_CALLBACK(OnSSL3EnabledToggled), this);
1050 accessible_widget_helper_->SetWidgetName( 1042 accessible_widget_helper_->SetWidgetName(
1051 ssl3_enabled_checkbox_, IDS_OPTIONS_SSL_USESSL3); 1043 ssl3_enabled_checkbox_, IDS_OPTIONS_SSL_USESSL3);
1052 tls1_enabled_checkbox_ = AddCheckButtonWithWrappedLabel( 1044 tls1_enabled_checkbox_ = AddCheckButtonWithWrappedLabel(
1053 IDS_OPTIONS_SSL_USETLS1, page_, G_CALLBACK(OnTLS1EnabledToggled), this); 1045 IDS_OPTIONS_SSL_USETLS1, page_, G_CALLBACK(OnTLS1EnabledToggled), this);
1054 accessible_widget_helper_->SetWidgetName( 1046 accessible_widget_helper_->SetWidgetName(
1055 tls1_enabled_checkbox_, IDS_OPTIONS_SSL_USETLS1); 1047 tls1_enabled_checkbox_, IDS_OPTIONS_SSL_USETLS1);
1056 1048
1057 rev_checking_enabled_.Init(prefs::kCertRevocationCheckingEnabled, 1049 rev_checking_enabled_.Init(prefs::kCertRevocationCheckingEnabled,
1058 profile->GetPrefs(), this); 1050 profile->GetPrefs(), this);
1059 ssl2_enabled_.Init(prefs::kSSL2Enabled, profile->GetPrefs(), this);
1060 ssl3_enabled_.Init(prefs::kSSL3Enabled, profile->GetPrefs(), this); 1051 ssl3_enabled_.Init(prefs::kSSL3Enabled, profile->GetPrefs(), this);
1061 tls1_enabled_.Init(prefs::kTLS1Enabled, profile->GetPrefs(), this); 1052 tls1_enabled_.Init(prefs::kTLS1Enabled, profile->GetPrefs(), this);
1062 1053
1063 NotifyPrefChanged(NULL); 1054 NotifyPrefChanged(NULL);
1064 } 1055 }
1065 1056
1066 void SecuritySection::NotifyPrefChanged(const std::string* pref_name) { 1057 void SecuritySection::NotifyPrefChanged(const std::string* pref_name) {
1067 pref_changing_ = true; 1058 pref_changing_ = true;
1068 if (!pref_name || *pref_name == prefs::kCertRevocationCheckingEnabled) { 1059 if (!pref_name || *pref_name == prefs::kCertRevocationCheckingEnabled) {
1069 gtk_toggle_button_set_active( 1060 gtk_toggle_button_set_active(
1070 GTK_TOGGLE_BUTTON(rev_checking_enabled_checkbox_), 1061 GTK_TOGGLE_BUTTON(rev_checking_enabled_checkbox_),
1071 rev_checking_enabled_.GetValue()); 1062 rev_checking_enabled_.GetValue());
1072 } 1063 }
1073 if (!pref_name || *pref_name == prefs::kSSL2Enabled) {
1074 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ssl2_enabled_checkbox_),
1075 ssl2_enabled_.GetValue());
1076 }
1077 if (!pref_name || *pref_name == prefs::kSSL3Enabled) { 1064 if (!pref_name || *pref_name == prefs::kSSL3Enabled) {
1078 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ssl3_enabled_checkbox_), 1065 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ssl3_enabled_checkbox_),
1079 ssl3_enabled_.GetValue()); 1066 ssl3_enabled_.GetValue());
1080 } 1067 }
1081 if (!pref_name || *pref_name == prefs::kTLS1Enabled) { 1068 if (!pref_name || *pref_name == prefs::kTLS1Enabled) {
1082 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(tls1_enabled_checkbox_), 1069 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(tls1_enabled_checkbox_),
1083 tls1_enabled_.GetValue()); 1070 tls1_enabled_.GetValue());
1084 } 1071 }
1085 pref_changing_ = false; 1072 pref_changing_ = false;
1086 } 1073 }
(...skipping 19 matching lines...)
1106 NULL); 1093 NULL);
1107 } else { 1094 } else {
1108 section->UserMetricsRecordAction( 1095 section->UserMetricsRecordAction(
1109 UserMetricsAction("Options_CheckCertRevocation_Disable"), 1096 UserMetricsAction("Options_CheckCertRevocation_Disable"),
1110 NULL); 1097 NULL);
1111 } 1098 }
1112 section->rev_checking_enabled_.SetValue(enabled); 1099 section->rev_checking_enabled_.SetValue(enabled);
1113 } 1100 }
1114 1101
1115 // static 1102 // static
1116 void SecuritySection::OnSSL2EnabledToggled(GtkToggleButton* togglebutton,
1117 SecuritySection* section) {
1118 if (section->pref_changing_)
1119 return;
1120
1121 bool enabled = gtk_toggle_button_get_active(togglebutton);
1122 if (enabled) {
1123 section->UserMetricsRecordAction(UserMetricsAction("Options_SSL2_Enable"),
1124 NULL);
1125 } else {
1126 section->UserMetricsRecordAction(UserMetricsAction("Options_SSL2_Disable"),
1127 NULL);
1128 }
1129 section->ssl2_enabled_.SetValue(enabled);
1130 }
1131
1132 // static
1133 void SecuritySection::OnSSL3EnabledToggled(GtkToggleButton* togglebutton, 1103 void SecuritySection::OnSSL3EnabledToggled(GtkToggleButton* togglebutton,
1134 SecuritySection* section) { 1104 SecuritySection* section) {
1135 if (section->pref_changing_) 1105 if (section->pref_changing_)
1136 return; 1106 return;
1137 1107
1138 bool enabled = gtk_toggle_button_get_active(togglebutton); 1108 bool enabled = gtk_toggle_button_get_active(togglebutton);
1139 if (enabled) { 1109 if (enabled) {
1140 section->UserMetricsRecordAction(UserMetricsAction("Options_SSL3_Enable"), 1110 section->UserMetricsRecordAction(UserMetricsAction("Options_SSL3_Enable"),
1141 NULL); 1111 NULL);
1142 } else { 1112 } else {
(...skipping 118 matching lines...)
1261 l10n_util::GetStringUTF8(IDS_OPTIONS_ADVANCED_SECTION_TITLE_CONTENT), 1231 l10n_util::GetStringUTF8(IDS_OPTIONS_ADVANCED_SECTION_TITLE_CONTENT),
1262 web_content_section_->get_page_widget(), false); 1232 web_content_section_->get_page_widget(), false);
1263 1233
1264 security_section_.reset(new SecuritySection(profile_)); 1234 security_section_.reset(new SecuritySection(profile_));
1265 options_builder->AddOptionGroup( 1235 options_builder->AddOptionGroup(
1266 l10n_util::GetStringUTF8(IDS_OPTIONS_ADVANCED_SECTION_TITLE_SECURITY), 1236 l10n_util::GetStringUTF8(IDS_OPTIONS_ADVANCED_SECTION_TITLE_SECURITY),
1267 security_section_->get_page_widget(), false); 1237 security_section_->get_page_widget(), false);
1268 1238
1269 page_ = options_builder->get_page_widget(); 1239 page_ = options_builder->get_page_widget();
1270 } 1240 }
OLDNEW
« no previous file with comments | « chrome/browser/dom_ui/options/advanced_options_handler.cc ('k') | chrome/browser/net/ssl_config_service_manager_pref.cc » ('j') | no next file with comments »

Powered by Google App Engine