aboutsummaryrefslogtreecommitdiffstats
path: root/checks/check.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add a new configure.py option --distribution-info which sets a macrolloyd2011-02-071-2/+1
| | | | | | | | | | | | | | | | | | | | | | | in build.h named BOTAN_DISTRIBUTION_INFO. The default value is 'unspecified'. People packaging botan could set this to another value, for instance 'Gentoo 1.9.13-r3' or 'Debian 1.9.13-1', or 'pristine' to indicate a completely unmodified/stock version. This was suggested by Zooko for Crypto++ in http://sourceforge.net/apps/trac/cryptopp/ticket/11 and seemed like an idea worth stealing. Don't default the version datestmap to the current day if unset, instead set to zero. This allows applications to detect unreleased versions. Document that version_datestamp will return zero for unreleased versions. Change the version_string function to return more information about the current version, including the release date and distribution information. It will now return strings like: Botan 1.9.13 (released 20110207, distribution Gentoo 1.9.13-r3) or for an unreleased version: Botan 1.9.13 (unreleased version, distribution unspecified)
* Allow benchmark buffers up to 64 MiBlloyd2010-12-221-1/+1
|
* Fix CRL reason codes and updating of CRLs. Add tests for both cases.lloyd2010-10-071-0/+1
|
* If the numeric_limits tests fail, make the output a little less dramaticlloyd2010-09-031-4/+4
|
* Add a new option for benchmarking --buf-size which specifies the size oflloyd2010-07-301-3/+16
| | | | the buffer (in KiB) to process.
* Add new option --dyn-load to the check/selftest prog that will loadlloyd2010-07-281-1/+18
| | | | the named shared engine object.
* Expose a datestamp in build.h, provide function in version.h forlloyd2010-06-141-1/+2
| | | | getting runtime value.
* There are some nasty API problems that are caused by having to pass alloyd2010-03-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | PRNG everywhere. The removal of the global PRNG was generated by a desire to remove the global library state entirely. However the real point of this was to remove the use of globally visible _mutable_ state; of the mutable state, the PRNG is probably the least important, and the most useful to share. And it seems unlikely that thread contention would be a major issue in the PRNG. Add back a global PRNG to Library_State. Use lazy initialization, so apps that don't ever use a PRNG don't need a seeding step. Then have AutoSeeded_RNG call that global PRNG. Offer once again RandomNumberGenerator& Library_State::global_rng(); which returns a reference to the global PRNG. This RNG object serializes access to itself with a mutex. Remove the hack known as Blinding::choose_nonce, replace with using the global PRNG to choose a blinding nonce
* Some botan exception throws are plain STL exceptionslloyd2010-03-041-7/+1
|
* Add copyright and license notes to pretty much every file that didn't have them,lloyd2009-12-311-0/+6
| | | | | | | | including the examples and self-test code. Most of these files had not copyright/license information at all; since a major point of the examples is to allow users to copy and paste code that already does something they want, an ambigious license is not good.
* Increase default benchmark time to 5 secondslloyd2009-12-221-1/+1
|
* Full working amalgamation build, plus internal-only headers concept.lloyd2009-12-161-2/+0
|
* Modify the self test program to use the builtin runtime benchmarking goop.lloyd2009-09-241-29/+3
| | | | | | | | | Features dropped: RNG benchmarking, the --bench-type option. New feature: Anything the library understands can be benchmarked using --bench-algo. Use 3DES and Serpent for mode benchmarking along with AES-128.
* Remove support for HTML benchmark output. Easier/simpler to parse thelloyd2009-08-141-14/+11
| | | | | output with a script after the fact to generate such things, especially as often for HTML I want to do multiple side-by-side results.
* Return the test suite result code from main()lloyd2009-07-121-1/+1
|
* Return 1 to system if exception is caught in check proglloyd2009-07-121-0/+2
|
* Move AutoSeeded_RNG decl before check for --help flag, so startup time is ↵lloyd2008-11-221-2/+2
| | | | easy to measure
* Reorganize all GF(p)/ECC tests to be called from pk.cpplloyd2008-11-171-2/+0
|
* Output that ECC tests are being run, and run them after GF(p) math tests ↵lloyd2008-11-171-2/+1
| | | | which is a reasonable ordering
* Tame ec_tests.cpp and integrate it into the test code.lloyd2008-11-171-0/+2
| | | | | | | | I'm seeing one failure on Core2. Have not diagnosed at all. A number of tests are #if'ed out. Many were rubbed out in the original InSiTo version, others I commented out due to changed/removed APIs.
* Fix mode benchmarkinglloyd2008-11-171-0/+2
|
* Only create RNG if needed in test applloyd2008-11-131-5/+5
|
* Remove support for provider identifiers from SCAN_Name - it turns out thislloyd2008-11-121-0/+2
| | | | | | | | | | | | was not the right place to keep track of this information. Also modify all Algorithm_Factory constructor functions to take instead of a SCAN_Name a pair of std::strings - the SCAN name and an optional provider name. If a provider is specified, either that provider will be used or the request will fail. Otherwise, the library will attempt best effort, based on user-set algorithm implementation settings (combine with benchmark.h for choosing the fastest implementation at runtime) or if not set, a static ordering (preset in static_provider_weight in prov_weight.cpp, though it would be nice to make this easier to toggle).
* Change LibraryInitializer back to accepting a std::string for backwardslloyd2008-11-111-1/+1
| | | | compatability.
* Update initializer in self-testlloyd2008-11-101-3/+2
|
* Use a single RNG in check/test codelloyd2008-10-271-10/+5
|
* Move rng.{cpp,h} from core to rng/ topdirlloyd2008-10-261-21/+19
| | | | | | | | | | | | | | Add a new class AutoSeeded_RNG that is a RandomNumberGenerator that wraps up the logic formerly in RandomNumberGenerator::make_rng. make_rng in fact now just returns a new AutoSeeded_RNG object. AutoSeeded_RNG is a bit more convenient because - No need to use auto_ptr - No need to dereference (same syntax everywhere - it's an underestimated advantage imo) Also move the code from timer/timer_base to timer/
* Move CVC tests back to the last thing, also disable for the moment becauselloyd2008-10-151-1/+1
| | | | | | | | | several are failing with an uncaught exception. The test failures may be due to the fact that ECDSA's support for EAC is not included at the moment, and the CVC code that attempts to do it is #if'ed out. It certainly can't help anyway. Exception is a decoding error, so seems quite plausible.
* Fix include of mp_asm.h in mp_ia32_msvc/mp_asmi.h (used quotes instead of ↵lloyd2008-10-151-1/+1
| | | | brackets)
* Add test suite for card verifiable certificates (cert/cvc) from InSiTo ↵lloyd2008-10-141-0/+1
| | | | (tests by Falko Strenzke)
* Make GF(p) tests part of normal test suitelloyd2008-10-091-0/+1
|
* Line wrap at 80 columnslloyd2008-10-011-1/+3
|
* Use --init arg, was disabled at some point earlierlloyd2008-09-161-1/+1
|
* Don't allow zero second benchmarkslloyd2008-09-141-1/+1
|
* Increase default benchmark time to 5s... 1.5 seconds (old value) is toolloyd2008-09-141-2/+2
| | | | | low, can be easily thrown off by random background activity, especially on uniprocessor machines
* Fix --bench-typelloyd2008-09-091-10/+17
|
* Add --test to OptionParser listlloyd2008-09-081-1/+1
|
* Last checkin would crash, because the destructor for the rng would notlloyd2008-09-081-60/+55
| | | | | | | | run until after the block ended, which was after set_global_state(0) had run, causing crashes in the destructors that attempted to free memory. Restructure the argument handling, it is significantly easier to understand now. Only create the rng where it is needed.
* Run test_types every time prior to initialization, instead of just duringlloyd2008-09-081-58/+66
| | | | | | | the test suite. Instead of exiting, just carry on; the full test suite will check if the problem is real or if std::numeric_limits is just wonky.
* Delete the self-test global RNG: just create one in main() and pass itlloyd2008-06-281-20/+21
| | | | where it is needed.
* Remove most of the direct references to the global_rng() calllloyd2008-06-281-11/+15
|
* Fix -Wmissing-declarations warninglloyd2008-06-161-40/+43
|
* Fix some -Wmissing-declarations warningslloyd2008-06-121-6/+2
|
* Make the contents of Botan_types namespace be just using declarations,lloyd2008-06-071-1/+1
| | | | instead of introducing new typedefs.
* Prevent lines > 80 columnslloyd2007-11-111-1/+1
|
* Increase the (arbitrary) upper bound on how long the benchmarks can run tolloyd2007-09-181-1/+1
| | | | 5 minutes (300 seconds).
* Document the --init flag to checklloyd2007-03-091-1/+3
|
* Use OptionParser::init_if_setlloyd2006-12-091-18/+14
| | | | Inline the print_help function
* Add (very basic) HTML output for public key benchmarking.lloyd2006-09-271-3/+3
|
* Allow --bench-algo to take multiple argumentslloyd2006-09-261-4/+10
|