aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Change Builtin_Module constructor to take an InitializerOptionslloyd2006-07-282-17/+31
| | | | | | | | 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/+8
|
* Remove unneccessary includeslloyd2006-07-281-2/+0
|
* Add two more constructors to AlgorithmIdentifier, which take alloyd2006-07-221-4/+36
| | | | | | 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-37/+45
| | | | | | | | | 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-13/+44
| | | | | | 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/+9
| | | | calls the InitializerOptions constructor.
* Make Mutex_Factory an abstract class, move the creation of the no-oplloyd2006-07-072-2/+6
| | | | Default_Mutex to the new Default_Mutex_Factory
* Remove a line that should have been deleted in the last commit.lloyd2006-07-071-1/+0
|
* Have Library_State's constructor thrown an exception if thelloyd2006-07-072-10/+5
| | | | | | | | mutex_factory argument is NULL. Have Init::initialize() pass either a new Mutex_Factory (the default no-op version), or the result of modules.mutex_factory(), depending on the value of args.thread_safe()
* Respect the secure_memory config optionlloyd2006-07-022-1/+9
|
* Move InitializerOptions out of the Init namespacelloyd2006-07-022-8/+3
| | | | | 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-8/+7
| | | | Use for_each + the delete wrappers in libstate.cpp
* Let modules override the transcoder object (since system libslloyd2006-07-013-1/+10
| | | | like iconv may be useful there...)
* Fix config handling (stupid mismatch was causing the getter for thelloyd2006-07-013-11/+8
| | | | | | config options to always fail). Move the default config stuff from libstate to the config object.
* Just some small cleanups / variable renameslloyd2006-07-011-6/+9
|
* Make choose_sig_format a static member of Config rather thanlloyd2006-07-013-27/+14
| | | | a standalone function.
* Access the global configuration through an object reference insteadlloyd2006-07-0124-359/+386
| | | | | 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-013-33/+74
|
* More config.h fixeslloyd2006-07-016-6/+6
|
* More config.h include fixeslloyd2006-07-013-3/+3
|
* Fix more config.h includeslloyd2006-07-014-4/+4
|
* Fix config.h includeslloyd2006-07-015-5/+5
|
* Rename conf.* to config.*lloyd2006-07-011-0/+0
|
* Various changes to how library initialization occurs, though I'm stilllloyd2006-06-263-87/+33
| | | | not completely happy with it.
* Fix compile errorlloyd2006-06-261-1/+2
|
* Use X509_Object::make_signed, rather than running through the processlloyd2006-06-251-10/+1
| | | | manually.
* Remove an implementation of make_signed from x509_ca.cpp, insteadlloyd2006-06-251-20/+4
| | | | using the version in X509_Object.
* Add a static make_signed function to X509_Objectlloyd2006-06-251-0/+16
|
* Support named mutexes outside of the global library state.lloyd2006-06-253-43/+49
| | | | | | Alter the AEP engine to use one in favor of a static Mutex pointer. Fix a stupid typo in an exception message.
* Missed some variables in the last commit.lloyd2006-06-251-11/+11
|
* Rename some variables to make operation a little more obviouslloyd2006-06-251-8/+8
|
* Change how builtin modules are loaded - provide an interface to alloyd2006-06-252-71/+75
| | | | | factory class. Currently hardcoded (Builtin_Modules, instantiated in init_def.cpp), but this will allow for some flexibility later on.
* Guard set_timer with a check so it does not set the timer to NULLlloyd2006-06-251-2/+5
|
* Add a set_timer method to Library_State, and rearrange the orderlloyd2006-06-251-7/+14
| | | | of initialization in the constructor.
* Add a class that encapsulates the options given at initialization timelloyd2006-06-251-0/+76
|
* Have allocator objects 'know' their own names, rather than keeping themlloyd2006-06-253-11/+13
| | | | around as ancillary strings.
* Make Library_State::x509_state() non-const to support lazy initialiation.lloyd2006-06-251-1/+1
|
* Have system_clock return 0, rather than crash, if no timer is setlloyd2006-06-251-7/+7
| | | | | | Initialize the X.509 global state object lazily, on first access Alter the order that global objects are deleted.
* Make set_global_state a little more elegant, by having it deletelloyd2006-06-251-2/+1
| | | | | the return value of swap_global_state rather than manipulate the state object directly.
* Respect configuration parameters for if an extension should belloyd2006-06-251-2/+14
| | | | marked critical in a new certificate.
* Remove a function in Certificate_Extension that was declared butlloyd2006-06-251-2/+6
| | | | | | | | | 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-32/+10
|
* Alter the self-signed cert generating code to use the new versionlloyd2006-06-251-4/+13
| | | | of X509_CA::make_cert
* Add a new variant of X509_CA::make_cert that takes an Extensions object,lloyd2006-06-251-0/+18
| | | | | 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-32/+6
| | | | to create extensions as needed.
* Add a complete set of extension object prototypes to the globallloyd2006-06-241-29/+20
| | | | state.
* Add error checking to x509_state()lloyd2006-06-241-1/+5
| | | | | Initialize the X509_GlobalState pointer during Library_State construction.
* Add an X509_GlobalState pointer to the library state.lloyd2006-06-243-6/+100
| | | | Initial implementation of a factory for extension objects
* Small cleanup to Authority_Key_Identifier::decode_innerlloyd2006-06-241-2/+3
|