aboutsummaryrefslogtreecommitdiffstats
path: root/src/entropy
Commit message (Collapse)AuthorAgeFilesLines
* Poll clock_gettime in High_Resolution_Timestamp::poll with whateverlloyd2011-11-112-1/+39
| | | | clock types we know about that have macros defined for them.
* FD_ZERO on Solaris uses memset, and assumes we included string.hlloyd2011-05-242-0/+2
| | | | already. Reported by Jeremy C. Reed <[email protected]>
* I can't spelllloyd2011-05-131-1/+1
|
* Enable unix_procs for FreeBSD. It was disabled in 2006 to worklloyd2011-04-214-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | around a bug in FreeBSD 6.1, which is long EOL. If we can't figure out the CPU in configure.py, if running verbosely dump the entire list of CPUs we know about. Some doc cleanups. Rename the 'beos' target to 'haiku', since testing shows that botan can't compile under the old BeOS GCC 2.95 anyway. Remove the call to idle_time in the stats entropy source - it causes a crash on Haiku R1-alpha2 somewhere inside a system DLL. I didn't bother debugging it beyond looking at the backtrace. Add a 'bepc' alias for i386 as that is what Haiku reports its processor as. Fix the install dirs to match Haiku R1, though apparently they will change in R2 anyway when they add package management. Enable use of gmtime_r on Haiku.
* These should be precisely 32 bitslloyd2011-04-041-2/+2
|
* Tick to 1.9.15-devlloyd2011-03-071-1/+1
|
* Remove inclusions of unused headers.lloyd2011-02-101-1/+0
| | | | Avoid using auto_ptr in the CVC headers.
* Fix compilelloyd2010-12-131-1/+1
|
* Fix some VC warnings under 64 bit compileslloyd2010-12-131-1/+1
|
* Doxygen updates.lloyd2010-11-021-1/+1
| | | | | Remove version of search_map that returns two distinguishing results; only used in one place, and that can be replaced by a call to count()
* Doxygenlloyd2010-11-022-3/+7
|
* Add new top-level algorithm which provides basic functionality: namelloyd2010-11-012-5/+6
| | | | | | | | query, clearing, and cloning. Applies to ciphers, hashes, MACs, and PBKDFs. May extend to KDFs later as well. A single combined hierarchy in particular will make the algo_factory much simpler.
* These are internal headers and do not need public linkagelloyd2010-10-283-3/+3
|
* Use size_t instead of u32bit in entropy and rnglloyd2010-10-1212-55/+55
|
* Use size_t in filterslloyd2010-10-122-8/+10
| | | | | This breaks API for anyone creating their own Filter types, but it had to happen eventually.
* Remove more uses of vector to pointer implicit conversionslloyd2010-09-131-1/+1
|
* Anywhere where we use MemoryRegion::begin to get access to the raw pointerlloyd2010-09-135-9/+9
| | | | | representation (rather than in an interator context), instead use &buf[0], which works for both MemoryRegion and std::vector
* Fix comparison functorlloyd2010-09-031-3/+3
|
* Clean up the unix process running entropy source a little bit. Tweaklloyd2010-09-033-24/+35
| | | | | | priorities slightly, pushing netstat -s and netstat -an higher since they change freqently and don't have a huge amount of output. Use the -n flag with lsof, which inhibits name lookups which we don't need.
* Remove calling getsid, it causes problems with too many differentlloyd2010-09-031-3/+1
| | | | | various compilers/platforms, and likely doesn't contribute much of anything. Also only grab real uid and gid, ignoring effective ids.
* Doxygenlloyd2010-06-211-0/+11
|
* Enable the /proc walker on NetBSD. The version that had problemslloyd2010-06-161-5/+2
| | | | | (2.0.2) is a solid 5 years old at this point. Haven't tested; don't have access to any NetBSD machines at the moment.
* More Doxygenlloyd2010-06-162-0/+8
|
* Hide File_Descriptor_Sourcelloyd2010-06-162-12/+16
|
* Yet more Doxygen commentslloyd2010-06-161-1/+40
|
* More Doxygen updates/fixeslloyd2010-06-154-3/+11
|
* Use strncpy instead of strcpy in EGD readerlloyd2010-06-131-1/+1
|
* Use "/*" instead of "/**" in starting comments at the begining of a file.lloyd2010-06-077-7/+7
| | | | | This caused Doxygen to think this was markup meant for it, which really caused some clutter in the namespace page.
* Add constructor and destructor for pipe_wrapper to handle init and closelloyd2010-06-021-5/+5
|
* Oops, it's TARGET_CPU_IS_XXX_FAMILY, not TARGET_IS_XXX_FAMILY.lloyd2009-12-301-2/+2
| | | | Also, fix AltiVec detection on Linux and NetBSD for most G4s.
* Use IS_XXX_FAMILY macros where usefullloyd2009-12-301-2/+2
|
* Fix compilation on Win32lloyd2009-12-231-1/+1
|
* Include as internal/lloyd2009-12-233-3/+3
|
* Add missing BOTAN_DLL exports.lloyd2009-12-161-2/+2
| | | | Move most of the engine headers to internal
* Make many more headers internal-only.lloyd2009-12-166-6/+6
| | | | | | | | | | | | | Fixes for the amalgamation generator for internal headers. Remove BOTAN_DLL exporting macros from all internal-only headers; the classes/functions there don't need to be exported, and avoiding the PIC/GOT indirection can be a big win. Add missing BOTAN_DLLs where necessary, mostly gfpmath and cvc For GCC, use -fvisibility=hidden and set BOTAN_DLL to the visibility __attribute__ to export those classes/functions.
* Full working amalgamation build, plus internal-only headers concept.lloyd2009-12-1618-23/+70
|
* Load hres_timer on any compiler or arch; macro feature detection takes carelloyd2009-12-011-27/+0
| | | | of the rest. In the worst case, it compiles down to an empty poll
* Consolidate the non-canonical epoch timers, like cpuid and Win32'slloyd2009-12-013-0/+125
| | | | | | | | | | | | | | QueryPerformanceCounter, into an entropy source hres_timer. Its results, if any, do not count as contributing entropy to the poll. Convert the other (monotonic/fixed epoch) timers to a single function get_nanoseconds_clock(), living in time.h, which statically chooses the 'best' timer type (clock_gettime, gettimeofday, std::clock, in that order depending on what is available). Add feature test macros for clock_gettime and gettimeofday. Remove the Timer class and timer.h. Remove the Timer& argument to the algorithm benchmark function.
* Move most code that relies heavily on Filters into src/filters.lloyd2009-11-177-50/+3
| | | | | | Remove support for (unused) modset settings. Move tss, fpe, cryptobox, and aont to new dir constructs
* Rename/remove some secmem member variables for better matching with STLlloyd2009-11-171-1/+1
| | | | | | | | containers (specifically vector). Rename is_empty to empty Remove has_items Rename create to resize
* Remove the 'realname' attribute on all modules and cc/cpu/os info files.lloyd2009-10-298-16/+0
| | | | | Pretty much useless and unused, except for listing the module names in build.h and the short versions totally suffice for that.
* Add support for GNU/Hurdlloyd2009-10-072-0/+2
|
* Add support for Dragonfly BSD (a fork of FreeBSD).lloyd2009-07-253-0/+3
| | | | Contributed by Patrick Georgi
* Two changes to proc_walk:lloyd2009-07-251-2/+2
| | | | | | | | | | | | | | Don't read any file that is not world-readable. This avoids trouble when running as root, since on Linux various special files can cause odd interactions and/or blocking behavior when read (for instance /proc/kmsg). ssumption is that no such files are world-readable. This also avoids any issue of reading data that is potentially sensitive. Instead of reading the first 1 KB of each file, only read the first 128 bytes. This prevents large files (like /proc/config.gz or /proc/kallsyms) from swamping the input buffer; these inputs are pretty static and shouldn't count for much. Reducing to 128 bytes causes a poll to read about 400 different files, rather than ~30.
* Fix some unused variable nits pointed out by icc 10.1lloyd2009-07-211-1/+1
|
* Move some files around to break up dependencies between directorieslloyd2009-07-163-0/+12
|
* static_cast a double before returning it as a u32bit to avoid a warninglloyd2009-07-101-1/+1
| | | | with some older versions of gcc
* Fix a subtle bug in the /dev/*random reader. The maximum ms wait time waslloyd2009-07-021-2/+3
| | | | | | | | set to 1000 ms (scaling based on amount of data requested). At 1000 ms exactly, we would form a timeval of 0 seconds and 1000000 usecs (ie, 1 second). Linux was fine with this, but FreeBSD 7.0's select was returning EINVAL. Fix things to properly create the timeval so that everyone is happy.
* Minor hackery to deal with win32 library dependencieslloyd2009-07-022-2/+2
|
* Changes to /dev/*random poller - read up to 48 bytes, and wait longer in ↵lloyd2009-06-091-3/+2
| | | | select loop (up to a second)