| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
the calendar time without tying to a particular format. From the C++0x branch.
|
| |
|
| |
|
|
|
|
| |
block cipher mode filters as depending on the block ciphers.
|
|
|
|
|
| |
didn't really contribute much in terms of code savings. CBC, CFB, and CTS
now derive directly from Keyed_Filter. All the other modes already did this.
|
| |
|
|
|
|
|
|
|
|
|
| |
This is somewhat faster, especially with SIMD-ed ciphers. The ceiling on
performance looks to be CMAC, which is iterative and thus can't take advantage
of them.
Remove BOTAN_PARALLEL_BLOCKS_EAX, since it implicitly is whatever CTR is doing.
Bump CTR's default parallel blocks to 16.
|
| |
|
| |
|
| |
|
|
|
|
| |
faster than the scalar version on a Core2.
|
|
|
|
|
|
| |
to --enable-{sse2,ssse3,altivec,aes_ni}. Add cooresponding --disable
options, which completely remove support for said ISA even if the CPU we
are configuring for is supposed to have it.
|
|
|
|
| |
Useful for Gentoo ebuild and probably other packaging schemes.
|
|
|
|
|
|
| |
But, disable warnings 4250 and 4251 in build.h with a pragma. Both seem
impossible to work around without very major code changes, and both seem
harmless AFAICT.
|
|
|
|
|
|
|
| |
Add macros for OS support of gmtime_r (Unix) and gmtime_s (Win32) to deal
with thread-unsafety of std::gmtime. Only enable gmtime_r on Linux currently,
but it's probably available pretty much everywhere (specified in pthreads,
origininally, AFAICT).
|
| |
|
|
|
|
|
|
| |
be larger than 4294967232 because you can give at most 2^32-1 bytes of
data at a time to Skein_512::add_data, and Skein always needs to buffer at
least one byte.
|
| |
|
| |
|
|
|
|
| |
because it makes the code slightly more explicit.
|
|
|
|
| |
doesn't like things like -dev or -rc1 in that field.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
or big endian, for large loads always memcpy, then go back and swap as
needed. Otherwise (unknown or mixed endian) just load one at a time as
usual.
|
|
|
|
|
| |
but if SSE2 or SSSE3 is available uses SIMD magic to swap 4 32 bit values
at once.
|
| |
|
| |
|
|
|
|
| |
be either fixed little or big endian. Unset if mixed endian or unknown.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bswap.h); too many external apps rely on loadstor.h existing.
Define 64-bit generic bswap in terms of 32-bit bswap, since it's
not much slower if 32-bit is also generic, and much faster if
it's not. This may be quite helpful on 32-bit x86 in particular.
Change formulation of generic 32-bit bswap. It may be faster or
slower depending on the CPU, especially the latency and throuput
of rotate instructions, but should be faster on an ideally
superscalar processor with rotate instructions (ie, what I expect
future CPUs to look more like).
|
|
|
|
| |
Move most of the engine headers to internal
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
a botan_all.h, eventually will also generate a botan_all.cpp
Currently broken in multiple ways, especially WRT conditional includes.
Todo: distinguishing public vs internal headers would make this simpler.
|
|
|
|
|
| |
Change serp_simd_sbox.h's header guard to use the leading BOTAN_ prefix for
proper macro namespacing.
|
|
|
|
| |
of the rest. In the worst case, it compiles down to an empty poll
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
ensure that things like this work:
linux -> rt
linux -> someotherlib
Previously this would cause one or the other library to be loaded (more or
less at random depending on how Python's hashing turns out) and not the other.
|
|
|
|
| |
that does not exist. This is mostly for my benefit.
|
| |
|
| |
|