aboutsummaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Move look_pk from libstate to pubkey/pubkey as more appropriatelloyd2008-10-013-114/+0
|
* Handle building Botan with almost all public key code disabled (though onlylloyd2008-10-013-7/+42
| | | | | | | with the aid of macro hackery, at the moment). Change DH feature macro to BOTAN_HAS_DIFFIE_HELLMAN Change NR feature macro to BOTAN_HAS_NYBERG_RUEPPEL
* Line wraplloyd2008-10-011-1/+1
|
* Move last pieces of algorithm-specific code from general 'pubkey' modulelloyd2008-10-011-2/+18
| | | | | into algorithm-specific directories. (Dependencies still remain on these in core/libstate, though).
* Split Diffie-Hellman off almost completely, such that nearly none oflloyd2008-10-017-86/+35
| | | | | | | | | | it builds if it is disabled. Current deficiency: due to #if defined(BLAH) in the engine code, Botan will not be binary compat across different configurations b/c the vtable will change size. Move some source from core/ to core/libstate where it belonged (engine stuff)
* Guard uses of ECDSA in the library with BOTAN_HAS_ECDSA macro, so it canlloyd2008-10-013-1/+13
| | | | | | | | be disabled. Disable gfpmath by default due to TR1 dependency (this will automatically turn of ECDSA/ECKAEG, unless gfpmath is explicitly loaded with --enable-module=gfpmath).
* propagate from branch 'net.randombit.botan' (head ↵lloyd2008-09-303-0/+75
| | | | | | 9524e848cdacd0b56ded9bd6b51fd34b6a7d3fc4) to branch 'net.randombit.botan.ecdsa' (head 8231f4285dce2d5ec754f7afa72e0d34807de061)
* Have RNG::make_rng throw an exception rather than return NULLlloyd2008-09-301-3/+5
|
* Use the lookup.h functions instead of calling this's find_hash, etc tolloyd2008-09-301-9/+16
| | | | | | | | get subcomponents of things like HMAC, CMAC, etc. This replicates the original behavior (since originally the class itself would call into lookup.h) Also guard use PBKDF1, PBKDF2, and Parallel hash with BOTAN_HAS macros
* Correctly handle Randpool enabled but X9.31 notlloyd2008-09-301-6/+7
|
* Correct libstate module name, macro, depslloyd2008-09-301-7/+2
|
* Remove lookup.h from X9.31 PRNG, X9.19 MAC, SSLv3 MAC, PBKDF1lloyd2008-09-302-7/+26
|
* Remove lookup from Randpool, HMAC, CMAC, CBC-MAC, TLS-PRF, and PBKDF2lloyd2008-09-302-10/+21
|
* Remove lookup dependency on CMAC: takes a BlockCipher as constructor arglloyd2008-09-301-3/+6
|
* Remove lookup/libstate dependency on Lion, KDF1, KDF2, EMSA[1-4]lloyd2008-09-302-12/+16
|
* Remove dependency on lookup.h from EME1. Now hardcoded to use MGF1 (thelloyd2008-09-301-4/+11
| | | | | only implemented MGF in Botan, and the only standardized MGF I even know of) with the same hash as generated Phash (you would always want this anyway).
* Move allocator base code into core/, alloc_mmap to alloc/lloyd2008-09-308-9/+739
|
* Move modules.* to libstatelloyd2008-09-302-0/+0
|
* Move datastore from core to utilslloyd2008-09-303-230/+0
|
* Split off part of the core module into libstate (basically the wholelloyd2008-09-3026-31/+252
| | | | | | lookup/global_state piece). Move timer and mutex directories into utils/
* Remove unneeded includeslloyd2008-09-301-4/+0
|
* Add dep on timer_base in corelloyd2008-09-301-0/+1
|
* Remove unneeded include of timers.hlloyd2008-09-301-1/+0
|
* Add missing fileslloyd2008-09-292-0/+80
|
* Move KDF, EME, and EMSA base classes from pubkey to core to remove alloyd2008-09-296-12/+177
| | | | false dependency on BigInt in the KDF/padding code.
* Better dependency handlinglloyd2008-09-291-3/+0
|
* Put only the implementation of BigInt in src/bigint, mathematical functionslloyd2008-09-292-1/+27
| | | | | | | on top of BigInt go to src/math. Some prototypes were moved in order to complete the split, in particular random_integer() is now a static member of BigInt instead of being a global function, and divide() is in divide.h instead of numthry.h
* Make asm implementations distinctly named objects, for instance MD5_IA32,lloyd2008-09-291-4/+40
| | | | | | | | | | | | | | | | | | | rather than silently replacing the C++ versions. Instead they are silently replaced (currently, at least) at the lookup level: we switch off the set of feature macros set to choose the best implementation in the current build configuration. So you can have (and benchmark) MD5 and MD5_IA32 directly against each other in the same program with no hassles, but if you ask for "MD5", you'll get maybe an MD5 or maybe MD5_IA32. Also make the canonical asm names (which aren't guarded by C++ namespaces) of the form botan_<algo>_<arch>_<func> as in botan_sha160_ia32_compress, to avoid namespace collisions. This change has another bonus that it should in many cases be possible to derive the asm specializations directly from the original implementation, saving some code (and of course logically SHA_160_IA32 is a SHA_160, just one with a faster implementation of the compression function, so this seems reasonable anyway).
* Expose use of global state in some of the lookup functions, includinglloyd2008-09-294-73/+101
| | | | get_cipher
* Rename all modinfo.txt files to info.txt, since they are all (none) oflloyd2008-09-291-0/+0
| | | | | them modules now. In any case there is no distinction so info.txt seems better.
* Update modinfo with renamed filename (maybe add wildcarding support? Thislloyd2008-09-291-1/+1
| | | | could get tedious)
* Rename for clarity (at least a little bit)lloyd2008-09-291-0/+0
|
* Remove more dependencies on the global state object.lloyd2008-09-291-7/+0
| | | | | | | New argument to X509_CRL constructor, a boolean that specifies if an exception should be thrown upon encountering an unknown extension type marked as critical. Previously this was controlled globally via the x509/crl/unknown_critical policy flag.
* Hardcode use of Latin1 encoding if an encoding using ASN.1 DIRECTORY STRINGlloyd2008-09-291-1/+0
| | | | | | | | is encountered and the charaters will not fit into PRINTABLE STRING. Previously was toggle-able between Latin1 and UTF-8 via policy config. However does not seem worth the depencencies especially as AFAIK nobody has ever touched this setting. If its functionality turns out to be needed then something can be arranged later on.
* Pass a Mutex* as an argument to Pooling_Allocator instead of it grabbinglloyd2008-09-293-6/+9
| | | | one via a reference to the global state.
* Add deps, missing includes, etclloyd2008-09-292-0/+3
|
* Fix modinfo fileslloyd2008-09-291-1/+1
|
* Move mlock to utils, as decled in util.hlloyd2008-09-291-24/+0
|
* Move parts of core into pk/pubkey which is at least somewhat relevantlloyd2008-09-2922-2731/+7
|
* Add modinfo for keypair and core moduleslloyd2008-09-291-0/+77
|
* Move what is left of the uncategorized library to 'core'. There is stilllloyd2008-09-2962-0/+8230
a lot of public key stuff in here that needs to be extracted however, and probably 2-3 other modules worth of stuff to split off (engines, etc)