aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* Make SymmetricKey and InitializationVector simple typedefs of OctetString;lloyd2006-08-231-23/+4
| | | | | since the RNG merger in 1.5.0, they have been effectively the same type anyway.
* Make Filter::send non-virtual; this was apparently something vestigal fromlloyd2006-08-231-1/+1
| | | | way back around 0.7.7, and has served no useful purpose since.
* Add a new version of the StreamCipher_Filter constructor that takes a keylloyd2006-08-231-0/+1
| | | | as well as the cipher name
* Put the definitions of Pipe::LAST_MESSAGE and Pipe::DEFAULT_MESSAGE intolloyd2006-08-231-2/+1
| | | | | pipe.cpp; apparently GCC was eliding them completely from the shared library otherwise, meaning Boost.Python couldn't reference them.
* X509_CRL::force_decode should not be publiclloyd2006-08-231-2/+1
|
* Change the header guard to the standard BOTAN_*_H__ formlloyd2006-08-221-2/+2
|
* Let SHA_160::W be resized dynamically; potentially the asm version couldlloyd2006-08-211-2/+2
| | | | use a little extra workspace, this makes that simpler to do.
* Move bigint_simple_mul into mp_mul.cpp, since that is the only place itlloyd2006-08-191-2/+0
| | | | | | was used. Make a variant of bigint_simple_mul, bigint_simple_sqr, for mp_sqr.cpp
* Move Montgomery reduction algorithm into mp_asm.cpplloyd2006-08-191-0/+2
| | | | | | | | | | Move the inner-most loop of Montgomery into bigint_mul_add_words, in mp_muladd.cpp Use bigint_mul_add_words for the inner loop of bigint_simple_multiply Move the compare/subtract at the end of the Montomgery algorithm into bigint_monty_redc
* Split Montgomery reduction into two functions, the core algorithm linkedlloyd2006-08-161-2/+2
| | | | | | as C (for replacing by asm later), and another that performs a subtract if needed (inside powm_mnt.cpp). That way an asm version of the Montgomery algorithm won't have to deal with calling other functions.
* Replace Serpent's key_xor function with a macro, so the header can belloyd2006-08-151-1/+0
| | | | shared between the C++ and assembly versions.
* Merge the AES TD and TE arrays, so assembly versions can used indexedlloyd2006-08-131-2/+1
| | | | | addressing rather than having to keep all four pointers around. Unfortunately GCC does not seem to be taking advantage of this.
* Remove an unneeded friend declaration for the division function.lloyd2006-08-121-1/+0
|
* The two classes that used to need direct access to the SHA-1lloyd2006-08-051-3/+0
| | | | | internals (Gamma and FIPS_186_RNG) have both been removed, so there is no need to keep the friend declarations.
* Make it possible to insert Engines into the front of the queue;lloyd2006-08-051-1/+1
| | | | | | otherwise any Engines added after startup (eg, application-specific ones) would only be used for new algorithm - it wouldn't be possible for them to override existing implementations.
* The use_engines flag was not being respected; specifically, if therelloyd2006-08-051-1/+1
| | | | were any engines built into the library, they were used no matter what.
* Move include of x509_ext.h to x509_ca.h, instead of using forwardlloyd2006-07-311-1/+2
| | | | | | | | declaration. Remove not_before and not_after variables, as they were only used once. Use the computed Key_Constraints value when signing a new certificate.
* Remove FIPS140::good_edc; it has never been used and probably will notlloyd2006-07-291-1/+0
| | | | be in the forseeable future.
* Change Builtin_Module constructor to take an InitializerOptionslloyd2006-07-281-1/+2
| | | | | | | | instead of just a boolean, so it can (if desired) examine any arguments it likes. Only run the startup self tests if the selftest or fips140 option is toggled on.
* Add a "selftest" option that allows the user to disable startup selftestslloyd2006-07-281-0/+1
|
* Add two more constructors to AlgorithmIdentifier, which take alloyd2006-07-221-0/+5
| | | | | | Encoding_Option enum that can specify various options. Right now the only one supported/available is USE_NULL_PARAM, to set the parameters to a DER-encoded NULL object
* Remove a declaration for add_alias, which was removed at some pointlloyd2006-07-162-5/+2
| | | | | | | | | without the decl also being removed. Add an add_alias function to the Config class, just a simple wrapper around Config::set Change policy.cpp to use add_alias instead of set when setting an alias
* Extend the language offered by InitializerOptions a bit, so thatlloyd2006-07-131-1/+2
| | | | | | boolean options can be explicitly turned off. Add support for checking the documented "fips140" argument
* Add a LibraryInitializer constructor taking a std::string, which simplylloyd2006-07-121-0/+1
| | | | calls the InitializerOptions constructor.
* Make Mutex_Factory an abstract class, move the creation of the no-oplloyd2006-07-071-1/+10
| | | | Default_Mutex to the new Default_Mutex_Factory
* Respect the secure_memory config optionlloyd2006-07-021-0/+1
|
* Move InitializerOptions out of the Init namespacelloyd2006-07-021-11/+12
| | | | | Alter the initialization functions to take an InitializerOptions object instead of a std::string
* Add del_fun and delete2nd functions for running deleteslloyd2006-07-021-0/+19
| | | | Use for_each + the delete wrappers in libstate.cpp
* Let modules override the transcoder object (since system libslloyd2006-07-011-0/+2
| | | | like iconv may be useful there...)
* Fix config handling (stupid mismatch was causing the getter for thelloyd2006-07-012-2/+3
| | | | | | config options to always fail). Move the default config stuff from libstate to the config object.
* Make choose_sig_format a static member of Config rather thanlloyd2006-07-011-11/+4
| | | | a standalone function.
* Access the global configuration through an object reference insteadlloyd2006-07-013-23/+28
| | | | | of stand-alone functions. Store the configuration in a distinct object, rather than just a map inside the library state.
* Clean up initialization a little bit morelloyd2006-07-012-10/+21
|
* Fix botan.h to include config.h instead of conf.hlloyd2006-07-011-1/+1
|
* Rename conf.* to config.*lloyd2006-07-011-0/+0
|
* Modify types.h to include build.h instead of config.hlloyd2006-07-011-1/+1
|
* Various changes to how library initialization occurs, though I'm stilllloyd2006-06-262-12/+9
| | | | not completely happy with it.
* Add a static make_signed function to X509_Objectlloyd2006-06-251-0/+4
|
* Support named mutexes outside of the global library state.lloyd2006-06-252-5/+18
| | | | | | Alter the AEP engine to use one in favor of a static Mutex pointer. Fix a stupid typo in an exception message.
* Change how builtin modules are loaded - provide an interface to alloyd2006-06-251-16/+26
| | | | | factory class. Currently hardcoded (Builtin_Modules, instantiated in init_def.cpp), but this will allow for some flexibility later on.
* Fix two declarations that were incorrect.lloyd2006-06-251-2/+2
|
* Add a set_timer method to Library_State, and rearrange the orderlloyd2006-06-251-0/+1
| | | | of initialization in the constructor.
* Add a class that encapsulates the options given at initialization timelloyd2006-06-251-0/+18
|
* Have allocator objects 'know' their own names, rather than keeping themlloyd2006-06-254-3/+6
| | | | around as ancillary strings.
* Make Library_State::x509_state() non-const to support lazy initialiation.lloyd2006-06-251-1/+1
|
* Remove a function in Certificate_Extension that was declared butlloyd2006-06-251-7/+0
| | | | | | | | | never defined. Remove all current support in Certificate_Extension for marking extensions critical - it was basically unused. Will be replaced by something that uses config_id() along with the user-modifiable policy settings.
* Remove the older version of X509_CA::make_cert entirelylloyd2006-06-251-10/+0
|
* Add a new variant of X509_CA::make_cert that takes an Extensions object,lloyd2006-06-251-0/+6
| | | | | rather than creating it internally. The older version (still used internally) creates the Extensions object as before and passes it on.
* Remove Extension::make_extension, use the global extension prototypeslloyd2006-06-242-4/+1
| | | | to create extensions as needed.
* Add an X509_GlobalState pointer to the library state.lloyd2006-06-242-1/+40
| | | | Initial implementation of a factory for extension objects