aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstate/info.txt
Commit message (Collapse)AuthorAgeFilesLines
* Shuffle things around. Add NIST X.509 test to build.lloyd2014-01-011-21/+0
|
* Make it possible to remove Boost dependency by disabling a few moduleslloyd2013-12-141-4/+0
| | | | (though including X.509 and TLS).
* Add a simple HTTP 1.0 GET using asio (for CRLs and OCSP)lloyd2013-11-271-0/+4
|
* Previously, AutoRNG was just a reference to the global rng, which canlloyd2013-11-081-26/+0
| | | | | | | | | | | cause a huge amount of lock contention in heavily multithreaded code. Now each AutoRNG is its own uniquely seeded HMAC_RNG. The set of entropy sources is shared rather than being per-RNG (so there is only one open fd to /dev/random, etc). So reseeding is still a global lock, but sharing the resources (open file descriptors, etc) across RNGs seems worth the contention. Remove Randpool, which was only used if HMAC_RNG was disabled at build.
* Remove return value of AEAD_Mode::start as it doesn't seem necessarylloyd2013-04-031-1/+0
| | | | | | | and is an extra complication for callers. Replace the get_aead in lookup.h returning a Filter with one in aead.h returning AEAD_Mode.
* Add get_aead in lookup.hlloyd2013-03-161-0/+1
|
* Drop some deprecated functionslloyd2012-06-011-1/+0
|
* Fairly huge update that replaces the old secmem types with std::vectorlloyd2012-05-181-1/+0
| | | | | | using a custom allocator. Currently our allocator just does new/delete with a memset before deletion, and the mmap and mlock allocators have been removed.
* propagate from branch 'net.randombit.botan' (head ↵lloyd2011-03-081-0/+5
|\ | | | | | | | | | | dd068808e5bf87c982765a8bcc314996053a5bdd) to branch 'net.randombit.botan.c++0x' (head 34696d52a8148d64f7021b3e193fc56f051b9dd2)
| * Add HMAC, AES, SHA-2, HMAC_RNG deps in libstate for the globallloyd2011-02-111-0/+5
| | | | | | | | | | | | RNG. Pretty much required outside of very special cases, and otherwise someone using --no-autoload will have to know to enable them specifically or lots of things will break.
* | propagate from branch 'net.randombit.botan' (head ↵lloyd2010-08-061-2/+4
|\| | | | | | | | | | | c6dfcb1b2e25290f071169361fb07cc9bb602eac) to branch 'net.randombit.botan.c++0x' (head 802b80d11c9eb4550d592439b773f6bc8b0ec045)
| * Move the functions that directly manipulate the global state singletonlloyd2010-08-061-2/+4
| | | | | | | | | | | | | | | | | | | | | | into global_state.{h,cpp}. Move all of the functions into a new namespace Global_State_Management, though exposing global_state() into the Botan namespace for compatability. Also add new functions global_state_exists and set_global_state_unless_set which may be helpful in certain tricky initialization scenarios (eg when an application using botan also uses a library which may or may not itself use botan).
* | propagate from branch 'net.randombit.botan' (head ↵lloyd2010-08-041-2/+0
|\ \ | |/ |/| | | | | | | 717a9d103aa80e6d66c04e3a23cf173aadf56ceb) to branch 'net.randombit.botan.c++0x' (head c9759e8ebc2f360696a11f2d00fc218d7a8bf744)
| * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-07-091-2/+0
| |\ | | | | | | | | | | | | | | | 161b5c0300b72baa746f101fda1e2b4a7c71818c) to branch 'net.randombit.botan.c++0x' (head 1fc3875bb8daf4ad0e90ba66db72642203cb9984)
| | * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-03-211-2/+0
| | |\ | | | | | | | | | | | | | | | | | | | | 96d0a1885774b624812fd143d541c8bcda319217) to branch 'net.randombit.botan.c++0x' (head e14368ab9d7976f3e111c6bc0adf24eebeb7c114)
| | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-03-091-2/+0
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | 9932d4d63417f7fcc199ada244cbaa6c1c32d9c1) to branch 'net.randombit.botan.c++0x' (head f4a385a376311edc62ef506c72cc56f69e6efd5a)
| | | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2009-12-161-2/+0
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 22c82e10d78ad0e2cdaa56cb02f3d846ed0ead5e) to branch 'net.randombit.botan.c++0x' (head 74dbf310b7fcc11f94a16cd63046219acd5d62bc)
| | | | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2009-12-161-8/+11
| | | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 744dccf92270cf16b80b50ee2759424c9866b256) to branch 'net.randombit.botan.c++0x' (head 2aa1acac1d05e8ea9991fe39015b1db9abc3b24e)
| | | | | * \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-021-2/+0
| | | | | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2773c2310e8c0a51975987a2dd6c5824c8d43882) to branch 'net.randombit.botan.c++0x' (head f13cf5d7e89706c882604299b508f356c20aae3a)
| | | | | | * | Remove dep on mutex module (doesn't exist here). Use initializer list in ↵lloyd2009-09-111-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libstate.cpp
* | | | | | | | Rename Default_Engine to Core_Engine which describes its purposeslloyd2010-07-271-1/+1
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | (slightly) better.
* / / / / / / Rename S2K to PBKDF, because that is by far the most common name - S2Klloyd2010-07-091-1/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | really is only used by OpenPGP, and largely it was named S2K here because the OpenPGP S2K was implemented years before the ones in PKCS #5. We have a typedef of PBKDF to S2K, and an inlined get_s2k that calls get_pbkdf for source compatability. There doesn't seem to be any reason to have a forward for the renamed s2k.h header - to actually use a PBKDF, you'd have to either include lookup.h and call get_s2k / get_pbkdf, or else include an algorithm-specific header and use it directly. In either case, including s2k.h is neither necessary nor sufficient.
* | | | | | Don't require the AES module; if it's there its there, if it's notlloyd2010-03-191-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | then you can't use the global PRNG but everything else still works.
* | | | | | There are some nasty API problems that are caused by having to pass alloyd2010-03-191-0/+3
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | Inline Engine_Core::mod_exp into singler caller, and deletelloyd2010-03-051-5/+0
| | | | |
* | | | | Inline look_pk funcslloyd2010-03-051-1/+0
|/ / / /
* | | / Add missing BOTAN_DLL exports.lloyd2009-12-161-1/+4
| |_|/ |/| | | | | | | | Move most of the engine headers to internal
* | | Full working amalgamation build, plus internal-only headers concept.lloyd2009-12-161-8/+11
|/ /
* / Remove the 'realname' attribute on all modules and cc/cpu/os info files.lloyd2009-10-291-2/+0
|/ | | | | Pretty much useless and unused, except for listing the module names in build.h and the short versions totally suffice for that.
* Add a new option --no-autoload to configure.py. This will produce a minimallloyd2009-09-041-1/+1
| | | | | | | | | | | build (only libstate, utils, plus dependencies), which can be extended with use of --enable-modules. To add new modules to the set of always-loaded, use 'load_on always' in info.txt Also fix a few small build problems that popped up when doing a minimal build. Requested by a user.
* Move some files around to break up dependencies between directorieslloyd2009-07-161-0/+2
|
* Add a script that reads the output of print_deps.py and rewriteslloyd2009-07-151-9/+22
| | | | | | the info.txt files with the right module dependencies. Apply it across the codebase.
* Remove pk_lookup - half of it (look_pk.{cpp,h}) depended on libstate directly,lloyd2008-11-111-3/+5
| | | | | the other half was relied upon by pubkey. Move the contents into those two modules. Update deps.
* Move most of the remaining libstate code to pk_engine.cpp, move engineslloyd2008-11-111-0/+2
| | | | | back to the toplevel since most othe dependencies have been removed now (except get_cipher which still needs changes)
* Move Algorithm_Factory from libstate (which it did not depend on) to ↵lloyd2008-11-111-2/+1
| | | | algo_factory/
* Drop look_add.h and the freestanding add_algorithm functionslloyd2008-11-111-1/+0
|
* Drop all options except thread safety. Also remove InitializerOptions, etclloyd2008-11-101-2/+1
| | | | | | | | | | | | | | | and reduce all the arguments to just a bool specifying threads. selftests: off (if desired, run passes_self_test in selftest.h) fips140: Just ran the self tests, totally bogus option. use_engine: On by default (that is, if OpenSSL or asm code is compiled in, it's used by default). One can get better control over this using the provider feature of SCAN_Name (though this doesn't handle cases like nested algorithms yet). secure_memory: On by default.
* Remove Modules class from the initializer code - it just wasn't that usefullloyd2008-11-101-2/+0
| | | | as an abstraction. Check #ifdef's for engines and such directly in libstate.cpp
* Add a class Algorithm_Factory which encapsulates the Engine classes (andlloyd2008-11-101-0/+2
| | | | which will eventually encapsulate the lookup logic as well)
* Sort lineslloyd2008-11-101-2/+2
|
* Mark libstate as depending on mode_padlloyd2008-11-101-0/+1
|
* Add libstate dep on def_enginelloyd2008-11-081-0/+1
|
* Move most of the Default_Engine code into engine/def_engine, and thelloyd2008-11-081-10/+0
| | | | engine base classes into src/engine
* Move botan.h from utils to libstate, since libstate has lookup.h whichlloyd2008-11-081-4/+5
| | | | | | botan.h includes unconditionally. Remove obsolete seed_rng code from init.h
* Move allocate.h with related code in alloclloyd2008-11-081-0/+1
|
* Split lookup_misc.cpp into lookup_mac.cpp and lookup_s2k.cpplloyd2008-11-081-1/+2
|
* Split def_alg.cpp into lookup_{cipher,hash,misc}.cpplloyd2008-11-081-1/+3
|
* Move s2k.{h,cpp} and S2K algos from core and kdf to new s2k/ dirlloyd2008-10-261-0/+1
|
* Put pk_pad.{h,cpp} from core into pk_pad/ dir (cleaner I think)lloyd2008-10-261-0/+4
|
* Move libstate and selftest out of core/ dir to toplevellloyd2008-10-261-0/+27