breakpad/src/common/linux
Gabriele Svelto a9fca58305 Make minidump name generation on Linux as random as possible
This patch ensures that two crashes taken within the same second have
different minidump names. The random characters used in the minidump
filename are now read from /dev/urandom where possible or generated via
arc4random(). If neither is available we fall back to regular rand() but
mixing the address of an object to the current time when generating the
random seed to make it slightly less predictable.

BUG=681

Change-Id: I2e97454859ed386e199b2628d6b7e87e16481b75
Reviewed-on: https://chromium-review.googlesource.com/445784
Reviewed-by: Mike Frysinger <vapier@chromium.org>
2017-04-12 18:51:24 +00:00
..
tests Update links 2016-11-18 17:24:37 +00:00
crc32.cc Linux: Check the CRC32 of the debug link file in the symbol dumper. 2014-04-23 20:52:28 +00:00
crc32.h Linux: Check the CRC32 of the debug link file in the symbol dumper. 2014-04-23 20:52:28 +00:00
dump_symbols.cc Remove unused typedef 2017-03-24 14:02:02 +00:00
dump_symbols.h Added an option (-i) to have dump_syms output header information only. 2016-04-08 04:37:45 +02:00
dump_symbols_unittest.cc Dump INFO CODE_ID containing Build ID in Linux dump_syms 2016-06-10 13:23:29 -04:00
eintr_wrapper.h Fix compilation with gcc --std=c++11 2015-03-24 11:25:14 +00:00
elf_core_dump.cc Add utilities for processing Linux core dump files. 2012-01-07 02:25:22 +00:00
elf_core_dump.h Improve Android support 2012-08-21 14:34:48 +00:00
elf_core_dump_unittest.cc Chrome on Android now supports loading the shared library directly from the APK file. 2014-07-22 11:34:11 +00:00
elf_gnu_compat.h Fix build on Android - put the missing NT_GNU_BUILD_ID #define in elf_gnu_compat.h and use it where needed. 2013-04-10 03:33:09 +00:00
elf_symbols_to_module.cc Demangle symbol name 2015-02-03 03:17:30 +00:00
elf_symbols_to_module.h
elf_symbols_to_module_unittest.cc This change allows compiling the google-breakpad code using a global ::string class instead of std::string. For more details take a look at common/using_std_string.h 2012-06-28 22:46:01 +00:00
elfutils-inl.h Rework dump_symbols.cc using templates and traits classes to handle cross-word-size symbol dumping 2012-07-18 17:55:08 +00:00
elfutils.cc Change some ELF utils to return the length as a size_t. 2014-07-17 18:34:18 +00:00
elfutils.h Dump INFO CODE_ID containing Build ID in Linux dump_syms 2016-06-10 13:23:29 -04:00
file_id.cc This change allows compiling the google-breakpad code using a global ::string class instead of std::string. 2016-08-30 23:31:43 +00:00
file_id.h Allow compiling the google-breakpad code using a global ::string class instead of std::string. 2016-11-08 01:29:06 +00:00
file_id_unittest.cc Dump INFO CODE_ID containing Build ID in Linux dump_syms 2016-06-10 13:23:29 -04:00
google_crashdump_uploader.cc GoogleCrashdumpUploader: adds Upload(string*) API to get the HTTP response. 2014-09-18 16:48:49 +00:00
google_crashdump_uploader.h GoogleCrashdumpUploader: adds Upload(string*) API to get the HTTP response. 2014-09-18 16:48:49 +00:00
google_crashdump_uploader_test.cc GoogleCrashdumpUploader: adds Upload(string*) API to get the HTTP response. 2014-09-18 16:48:49 +00:00
guid_creator.cc Make minidump name generation on Linux as random as possible 2017-04-12 18:51:24 +00:00
guid_creator.h
http_upload.cc Refactor sym_upload in tools to extract code into common/linux, and minor fixes 2016-03-30 13:46:21 -07:00
http_upload.h Refactor sym_upload in tools to extract code into common/linux, and minor fixes 2016-03-30 13:46:21 -07:00
ignore_ret.h tweak IGNORE_RET behavior a bit 2016-04-11 13:05:44 -04:00
libcurl_wrapper.cc GoogleCrashdumpUploader: adds Upload(string*) API to get the HTTP response. 2014-09-18 16:48:49 +00:00
libcurl_wrapper.h Let breakpad build with -Wall on OS X and Linux. 2015-12-29 13:42:49 -08:00
linux_libc_support.cc Improve ARM CPU info reporting. 2013-04-24 10:06:14 +00:00
linux_libc_support.h Improve ARM CPU info reporting. 2013-04-24 10:06:14 +00:00
linux_libc_support_unittest.cc Improve ARM CPU info reporting. 2013-04-24 10:06:14 +00:00
memory_mapped_file.cc linux-syscall-support: pull in latest version 2016-06-14 14:17:56 -04:00
memory_mapped_file.h Chrome on Android now supports loading the shared library directly from the APK file. 2014-07-22 11:34:11 +00:00
memory_mapped_file_unittest.cc Chrome on Android now supports loading the shared library directly from the APK file. 2014-07-22 11:34:11 +00:00
safe_readlink.cc
safe_readlink.h
safe_readlink_unittest.cc Cleaning up google-breakpad source code of signed-unsigned comparison warnings 2012-11-21 01:33:08 +00:00
symbol_upload.cc Refactor sym_upload in tools to extract code into common/linux, and minor fixes 2016-03-30 13:46:21 -07:00
symbol_upload.h Refactor sym_upload in tools to extract code into common/linux, and minor fixes 2016-03-30 13:46:21 -07:00
synth_elf.cc Let breakpad build with -Wall on OS X and Linux. 2015-12-29 13:42:49 -08:00
synth_elf.h Let breakpad build with -Wall on OS X and Linux. 2015-12-29 13:42:49 -08:00
synth_elf_unittest.cc Support generic Elf notes, with unit tests 2013-04-04 16:24:44 +00:00