| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 // For linux_syscall_support.h. This makes it safe to call embedded system | 5 // For linux_syscall_support.h. This makes it safe to call embedded system |
| 6 // calls when in seccomp mode. | 6 // calls when in seccomp mode. |
| 7 | 7 |
| 8 #include "components/crash/app/breakpad_linux.h" | 8 #include "components/crash/app/breakpad_linux.h" |
| 9 | 9 |
| 10 #include <fcntl.h> | 10 #include <fcntl.h> |
| (...skipping 1295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1306 // Content-Type: application/octet-stream \r\n \r\n | 1306 // Content-Type: application/octet-stream \r\n \r\n |
| 1307 // <dump contents> | 1307 // <dump contents> |
| 1308 // \r\n BOUNDARY -- \r\n | 1308 // \r\n BOUNDARY -- \r\n |
| 1309 | 1309 |
| 1310 #if defined(OS_CHROMEOS) | 1310 #if defined(OS_CHROMEOS) |
| 1311 CrashReporterWriter writer(temp_file_fd); | 1311 CrashReporterWriter writer(temp_file_fd); |
| 1312 #else | 1312 #else |
| 1313 MimeWriter writer(temp_file_fd, mime_boundary); | 1313 MimeWriter writer(temp_file_fd, mime_boundary); |
| 1314 #endif | 1314 #endif |
| 1315 { | 1315 { |
| 1316 // TODO(thestig) Do not use this inside a compromised context. | 1316 const char* product_name = ""; |
| 1317 std::string product_name; | 1317 const char* version = ""; |
| 1318 std::string version; | |
| 1319 | 1318 |
| 1320 GetCrashReporterClient()->GetProductNameAndVersion(&product_name, &version); | 1319 GetCrashReporterClient()->GetProductNameAndVersion(&product_name, &version); |
| 1321 | 1320 |
| 1322 writer.AddBoundary(); | 1321 writer.AddBoundary(); |
| 1323 writer.AddPairString("prod", product_name.c_str()); | 1322 writer.AddPairString("prod", product_name); |
| 1324 writer.AddBoundary(); | 1323 writer.AddBoundary(); |
| 1325 writer.AddPairString("ver", version.c_str()); | 1324 writer.AddPairString("ver", version); |
| 1326 writer.AddBoundary(); | 1325 writer.AddBoundary(); |
| 1327 if (info.pid > 0) { | 1326 if (info.pid > 0) { |
| 1328 char pid_value_buf[kUint64StringSize]; | 1327 char pid_value_buf[kUint64StringSize]; |
| 1329 uint64_t pid_value_len = my_uint64_len(info.pid); | 1328 uint64_t pid_value_len = my_uint64_len(info.pid); |
| 1330 my_uint64tos(pid_value_buf, info.pid, pid_value_len); | 1329 my_uint64tos(pid_value_buf, info.pid, pid_value_len); |
| 1331 static const char pid_key_name[] = "pid"; | 1330 static const char pid_key_name[] = "pid"; |
| 1332 writer.AddPairData(pid_key_name, sizeof(pid_key_name) - 1, | 1331 writer.AddPairData(pid_key_name, sizeof(pid_key_name) - 1, |
| 1333 pid_value_buf, pid_value_len); | 1332 pid_value_buf, pid_value_len); |
| 1334 writer.AddBoundary(); | 1333 writer.AddBoundary(); |
| 1335 } | 1334 } |
| (...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1615 } | 1614 } |
| 1616 } | 1615 } |
| 1617 } | 1616 } |
| 1618 #endif // OS_ANDROID | 1617 #endif // OS_ANDROID |
| 1619 | 1618 |
| 1620 bool IsCrashReporterEnabled() { | 1619 bool IsCrashReporterEnabled() { |
| 1621 return g_is_crash_reporter_enabled; | 1620 return g_is_crash_reporter_enabled; |
| 1622 } | 1621 } |
| 1623 | 1622 |
| 1624 } // namespace breakpad | 1623 } // namespace breakpad |
| OLD | NEW |