| 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 |