| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/extensions/api/downloads/downloads_api.h" | 5 #include "chrome/browser/extensions/api/downloads/downloads_api.h" |
| 6 | 6 |
| 7 #include <set> | 7 #include <set> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 79 | 79 |
| 80 namespace download_extension_errors { | 80 namespace download_extension_errors { |
| 81 | 81 |
| 82 const char kEmptyFile[] = "Filename not yet determined"; | 82 const char kEmptyFile[] = "Filename not yet determined"; |
| 83 const char kFileAlreadyDeleted[] = "Download file already deleted"; | 83 const char kFileAlreadyDeleted[] = "Download file already deleted"; |
| 84 const char kFileNotRemoved[] = "Unable to remove file"; | 84 const char kFileNotRemoved[] = "Unable to remove file"; |
| 85 const char kIconNotFound[] = "Icon not found"; | 85 const char kIconNotFound[] = "Icon not found"; |
| 86 const char kInvalidDangerType[] = "Invalid danger type"; | 86 const char kInvalidDangerType[] = "Invalid danger type"; |
| 87 const char kInvalidFilename[] = "Invalid filename"; | 87 const char kInvalidFilename[] = "Invalid filename"; |
| 88 const char kInvalidFilter[] = "Invalid query filter"; | 88 const char kInvalidFilter[] = "Invalid query filter"; |
| 89 const char kInvalidHeader[] = "Invalid request header"; | 89 const char kInvalidHeaderName[] = "Invalid request header name"; |
| 90 const char kInvalidHeaderUnsafe[] = "Unsafe request header name"; |
| 91 const char kInvalidHeaderValue[] = "Invalid request header value"; |
| 90 const char kInvalidId[] = "Invalid downloadId"; | 92 const char kInvalidId[] = "Invalid downloadId"; |
| 91 const char kInvalidOrderBy[] = "Invalid orderBy field"; | 93 const char kInvalidOrderBy[] = "Invalid orderBy field"; |
| 92 const char kInvalidQueryLimit[] = "Invalid query limit"; | 94 const char kInvalidQueryLimit[] = "Invalid query limit"; |
| 93 const char kInvalidState[] = "Invalid state"; | 95 const char kInvalidState[] = "Invalid state"; |
| 94 const char kInvalidURL[] = "Invalid URL"; | 96 const char kInvalidURL[] = "Invalid URL"; |
| 95 const char kInvisibleContext[] = "Javascript execution context is not visible " | 97 const char kInvisibleContext[] = "Javascript execution context is not visible " |
| 96 "(tab, window, popup bubble)"; | 98 "(tab, window, popup bubble)"; |
| 97 const char kNotComplete[] = "Download must be complete"; | 99 const char kNotComplete[] = "Download must be complete"; |
| 98 const char kNotDangerous[] = "Download must be dangerous"; | 100 const char kNotDangerous[] = "Download must be dangerous"; |
| 99 const char kNotInProgress[] = "Download must be in progress"; | 101 const char kNotInProgress[] = "Download must be in progress"; |
| (...skipping 929 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1029 if (options.save_as.get()) | 1031 if (options.save_as.get()) |
| 1030 download_params->set_prompt(*options.save_as.get()); | 1032 download_params->set_prompt(*options.save_as.get()); |
| 1031 | 1033 |
| 1032 if (options.headers.get()) { | 1034 if (options.headers.get()) { |
| 1033 typedef downloads::HeaderNameValuePair HeaderNameValuePair; | 1035 typedef downloads::HeaderNameValuePair HeaderNameValuePair; |
| 1034 for (std::vector<linked_ptr<HeaderNameValuePair> >::const_iterator iter = | 1036 for (std::vector<linked_ptr<HeaderNameValuePair> >::const_iterator iter = |
| 1035 options.headers->begin(); | 1037 options.headers->begin(); |
| 1036 iter != options.headers->end(); | 1038 iter != options.headers->end(); |
| 1037 ++iter) { | 1039 ++iter) { |
| 1038 const HeaderNameValuePair& name_value = **iter; | 1040 const HeaderNameValuePair& name_value = **iter; |
| 1041 if (!net::HttpUtil::IsValidHeaderName(name_value.name)) { |
| 1042 error_ = errors::kInvalidHeaderName; |
| 1043 return false; |
| 1044 } |
| 1039 if (!net::HttpUtil::IsSafeHeader(name_value.name)) { | 1045 if (!net::HttpUtil::IsSafeHeader(name_value.name)) { |
| 1040 error_ = errors::kInvalidHeader; | 1046 error_ = errors::kInvalidHeaderUnsafe; |
| 1047 return false; |
| 1048 } |
| 1049 if (!net::HttpUtil::IsValidHeaderValue(name_value.value)) { |
| 1050 error_ = errors::kInvalidHeaderValue; |
| 1041 return false; | 1051 return false; |
| 1042 } | 1052 } |
| 1043 download_params->add_request_header(name_value.name, name_value.value); | 1053 download_params->add_request_header(name_value.name, name_value.value); |
| 1044 } | 1054 } |
| 1045 } | 1055 } |
| 1046 | 1056 |
| 1047 std::string method_string = | 1057 std::string method_string = |
| 1048 downloads::ToString(options.method); | 1058 downloads::ToString(options.method); |
| 1049 if (!method_string.empty()) | 1059 if (!method_string.empty()) |
| 1050 download_params->set_method(method_string); | 1060 download_params->set_method(method_string); |
| (...skipping 870 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1921 const Extension* extension, | 1931 const Extension* extension, |
| 1922 UnloadedExtensionInfo::Reason reason) { | 1932 UnloadedExtensionInfo::Reason reason) { |
| 1923 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 1933 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
| 1924 std::set<const Extension*>::iterator iter = | 1934 std::set<const Extension*>::iterator iter = |
| 1925 shelf_disabling_extensions_.find(extension); | 1935 shelf_disabling_extensions_.find(extension); |
| 1926 if (iter != shelf_disabling_extensions_.end()) | 1936 if (iter != shelf_disabling_extensions_.end()) |
| 1927 shelf_disabling_extensions_.erase(iter); | 1937 shelf_disabling_extensions_.erase(iter); |
| 1928 } | 1938 } |
| 1929 | 1939 |
| 1930 } // namespace extensions | 1940 } // namespace extensions |
| OLD | NEW |