OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "webkit/plugins/npapi/plugin_list.h" | 5 #include "webkit/plugins/npapi/plugin_list.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 | 57 |
58 #if defined(OS_MACOSX) | 58 #if defined(OS_MACOSX) |
59 // Plugin Groups for Mac. | 59 // Plugin Groups for Mac. |
60 // Plugins are listed here as soon as vulnerabilities and solutions | 60 // Plugins are listed here as soon as vulnerabilities and solutions |
61 // (new versions) are published. | 61 // (new versions) are published. |
62 static const VersionRangeDefinition kQuicktimeVersionRange[] = { | 62 static const VersionRangeDefinition kQuicktimeVersionRange[] = { |
63 { "", "", "7.6.6", true } | 63 { "", "", "7.6.6", true } |
64 }; | 64 }; |
65 static const VersionRangeDefinition kJavaVersionRange[] = { | 65 static const VersionRangeDefinition kJavaVersionRange[] = { |
66 { "0", "13.0", "12.8.0", true }, // Leopard | 66 { "0", "13.0", "12.8.0", true }, // Leopard |
67 { "13.0", "14.0", "13.4.0", true } // Snow Leopard | 67 { "13.0", "14.0", "13.5.0", true }, // Snow Leopard |
| 68 { "14.0", "", "14.0.3", true } // Lion |
68 }; | 69 }; |
69 static const VersionRangeDefinition kFlip4MacVersionRange[] = { | 70 static const VersionRangeDefinition kFlip4MacVersionRange[] = { |
70 { "", "", "2.2.1", true } | 71 { "", "", "2.2.1", true } |
71 }; | 72 }; |
72 // Note: The Adobe Reader browser plug-in is not supported in Chrome. | 73 // Note: The Adobe Reader browser plug-in is not supported in Chrome. |
73 // Note: The Real Player plugin for mac doesn't expose a version at all. | 74 // Note: The Real Player plugin for mac doesn't expose a version at all. |
74 static const PluginGroupDefinition kGroupDefinitions[] = { | 75 static const PluginGroupDefinition kGroupDefinitions[] = { |
75 kFlashDefinition, | 76 kFlashDefinition, |
76 { "apple-quicktime", PluginGroup::kQuickTimeGroupName, "QuickTime Plug-in", | 77 { "apple-quicktime", PluginGroup::kQuickTimeGroupName, "QuickTime Plug-in", |
77 kQuicktimeVersionRange, arraysize(kQuicktimeVersionRange), | 78 kQuicktimeVersionRange, arraysize(kQuicktimeVersionRange), |
78 "http://www.apple.com/quicktime/download/" }, | 79 "http://www.apple.com/quicktime/download/" }, |
79 { "java-runtime-environment", PluginGroup::kJavaGroupName, "Java", | 80 { "java-runtime-environment", PluginGroup::kJavaGroupName, "Java", |
80 kJavaVersionRange, arraysize(kJavaVersionRange), | 81 kJavaVersionRange, arraysize(kJavaVersionRange), |
81 "http://support.apple.com/kb/HT1338" }, | 82 "http://support.apple.com/kb/HT1338" }, |
82 kSilverlightDefinition, | 83 kSilverlightDefinition, |
83 { "flip4mac", "Flip4Mac", "Flip4Mac", kFlip4MacVersionRange, | 84 { "flip4mac", "Flip4Mac", "Flip4Mac", kFlip4MacVersionRange, |
84 arraysize(kFlip4MacVersionRange), | 85 arraysize(kFlip4MacVersionRange), |
85 "http://www.telestream.net/flip4mac-wmv/overview.htm" }, | 86 "http://www.telestream.net/flip4mac-wmv/overview.htm" }, |
86 kShockwaveDefinition | 87 kShockwaveDefinition |
87 }; | 88 }; |
88 | 89 |
89 #elif defined(OS_WIN) | 90 #elif defined(OS_WIN) |
90 // TODO(panayiotis): We should group "RealJukebox NS Plugin" with the rest of | 91 // TODO(panayiotis): We should group "RealJukebox NS Plugin" with the rest of |
91 // the RealPlayer files. | 92 // the RealPlayer files. |
92 static const VersionRangeDefinition kQuicktimeVersionRange[] = { | 93 static const VersionRangeDefinition kQuicktimeVersionRange[] = { |
93 { "", "", "7.6.9", true } | 94 { "", "", "7.6.9", true } |
94 }; | 95 }; |
95 static const VersionRangeDefinition kJavaVersionRange[] = { | 96 static const VersionRangeDefinition kJavaVersionRange[] = { |
96 { "0", "7", "6.0.260", true } // "260" is not a typo. | 97 { "0", "7", "6.0.290", true }, // "290" is not a typo. |
| 98 { "7", "", "10.1", true } // JDK7u1 identifies itself as 10.1 |
97 }; | 99 }; |
98 // This is up to date with | 100 // This is up to date with |
99 // http://www.adobe.com/support/security/bulletins/apsb11-08.html | 101 // http://www.adobe.com/support/security/bulletins/apsb11-08.html |
100 static const VersionRangeDefinition kAdobeReaderVersionRange[] = { | 102 static const VersionRangeDefinition kAdobeReaderVersionRange[] = { |
101 { "10", "11", "10.0.1", false }, | 103 { "10", "11", "10.0.1", false }, |
102 { "9", "10", "9.4.4", false }, | 104 { "9", "10", "9.4.4", false }, |
103 { "0", "9", "8.2.6", false } | 105 { "0", "9", "8.2.6", false } |
104 }; | 106 }; |
105 static const VersionRangeDefinition kDivXVersionRange[] = { | 107 static const VersionRangeDefinition kDivXVersionRange[] = { |
106 { "", "", "1.4.3.4", false } | 108 { "", "", "1.4.3.4", false } |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 NULL, 0, "" }, | 141 NULL, 0, "" }, |
140 }; | 142 }; |
141 | 143 |
142 #elif defined(OS_CHROMEOS) | 144 #elif defined(OS_CHROMEOS) |
143 // ChromeOS generally has (autoupdated) system plug-ins and no user-installable | 145 // ChromeOS generally has (autoupdated) system plug-ins and no user-installable |
144 // plug-ins. | 146 // plug-ins. |
145 static const PluginGroupDefinition kGroupDefinitions[] = { }; | 147 static const PluginGroupDefinition kGroupDefinitions[] = { }; |
146 | 148 |
147 #else // Most importantly, covers desktop Linux. | 149 #else // Most importantly, covers desktop Linux. |
148 static const VersionRangeDefinition kJavaVersionRange[] = { | 150 static const VersionRangeDefinition kJavaVersionRange[] = { |
149 { "0", "1.7", "1.6.0.26", true } | 151 { "0", "1.7", "1.6.0.29", true }, |
| 152 { "1.7", "", "1.7.0.1", true } |
150 }; | 153 }; |
151 | 154 |
152 static const VersionRangeDefinition kRedhatIcedTeaVersionRange[] = { | 155 static const VersionRangeDefinition kRedhatIcedTeaVersionRange[] = { |
153 { "0", "1.9", "1.8.8", true }, | 156 { "0", "1.9", "1.8.10", true }, |
154 { "1.9", "1.10", "1.9.8", true }, | 157 { "1.9", "1.10", "1.9.10", true }, |
| 158 { "1.10", "", "1.10.4", true } |
155 }; | 159 }; |
156 | 160 |
157 static const PluginGroupDefinition kGroupDefinitions[] = { | 161 static const PluginGroupDefinition kGroupDefinitions[] = { |
158 // Flash on Linux is significant because there isn't yet a built-in Flash | 162 // Flash on Linux is significant because there isn't yet a built-in Flash |
159 // plug-in on the Linux 64-bit version of Chrome. | 163 // plug-in on the Linux 64-bit version of Chrome. |
160 kFlashDefinition, | 164 kFlashDefinition, |
161 { "java-runtime-environment", PluginGroup::kJavaGroupName, "Java", | 165 { "java-runtime-environment", PluginGroup::kJavaGroupName, "Java", |
162 kJavaVersionRange, arraysize(kJavaVersionRange), | 166 kJavaVersionRange, arraysize(kJavaVersionRange), |
163 "http://www.java.com/en/download/manual.jsp" }, | 167 "http://www.java.com/en/download/manual.jsp" }, |
164 { "redhat-icetea-java", "IcedTea", "IcedTea", | 168 { "redhat-icetea-java", "IcedTea", "IcedTea", |
(...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
715 } | 719 } |
716 return false; | 720 return false; |
717 } | 721 } |
718 | 722 |
719 PluginList::~PluginList() { | 723 PluginList::~PluginList() { |
720 } | 724 } |
721 | 725 |
722 | 726 |
723 } // namespace npapi | 727 } // namespace npapi |
724 } // namespace webkit | 728 } // namespace webkit |
OLD | NEW |