aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstate/lookup.h
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate the constant size_t values in SymmetricAlgorithm that givelloyd2010-10-281-39/+0
| | | | | | | | | | | | | | | | | | | the parameters of the key length. Instead define a new function which returns a simple object which contains this information. This definitely breaks backwards compatability, though only with code that directly manipulates low level objects like BlockCipher*s directly, which is probably relatively rare. Also remove some deprecated accessor functions from lookup.h. It turns out block_size_of and output_size_of are being used in the TLS code; I need to remove them from there before I can delete these entirely. Really that didn't make much sense, because they assumed all implementations of a particular algorithm will have the same specifications, which is definitely not necessarily true, especially WRT key length. It is much safer (and probably simpler) to first retrieve an instance of the actual object you are going to use and then ask it directly.
* Rename S2K to PBKDF, because that is by far the most common name - S2Klloyd2010-07-091-9/+19
| | | | | | | | | | | | | 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.
* Doxygenlloyd2010-06-211-5/+23
|
* Replace "@return a blah" and "@return the blah" with just "@return blah"lloyd2010-06-161-11/+11
|
* Deprecated some of the old lookup functions in Doxygenlloyd2010-06-151-0/+28
|
* Fix a few hundred Doxygen warningslloyd2010-06-151-27/+30
|
* Define lookup.{h,cpp} in terms of Algorithm_Factory. Inline a lot of simplelloyd2009-12-261-43/+88
| | | | functions into the header.
* Thomas Moschny passed along a request from the Fedora packagers which camelloyd2009-03-301-19/+21
| | | | | | | | | | | | | | | up during the Fedora submission review, that each source file include some text about the license. One handy Perl script later and each file now has the line Distributed under the terms of the Botan license after the copyright notices. While I was in there modifying every file anyway, I also stripped out the remainder of the block comments (lots of astericks before and after the text); this is stylistic thing I picked up when I was first learning C++ but in retrospect it is not a good style as the structure makes it harder to modify comments (with the result that comments become fewer, shorter and are less likely to be updated, which are not good things).
* Update some doxygen comments. Contributed by Charles Brockman in bug #39lloyd2009-03-021-24/+24
|
* Library_State had two functions that did the same thing,lloyd2008-11-121-6/+4
| | | | | | | | | | | | | | | algo_factory and algorithm_factory. This is confusing so for consistency/simplicity, remove algo_factory, making algorithm_factory the function to call. In 1.7.14, several functions in lookup.h, including retrieve_block_cipher, retrieve_hash, etc were changed to accept a Library_State& reference. However it turns out with the modified design I've settled upon for 1.8 that it is not necessary to change those interfaces; instead they always refer to the global_state algorithm factory which is exactly the semantics one would expect/desire 99% of the time (and is source compatible with code written for 1.6, also a plus)
* Move get_bc_pad to def_engine/def_mode.cpplloyd2008-11-101-7/+0
| | | | Compilation fix in arc4_openssl.cpp
* Split pk_pad.h into eme.h and emsa.hlloyd2008-11-101-1/+2
|
* Remove support for block cipher padding methods in engine. Like S2K,lloyd2008-11-101-6/+2
| | | | | | | | | | they were not used at all outside of the core library implementations. One change is that now get_bc_pad returns a new object, instead of a pointer to a const shared padding method. This does imply a bit more dynamic memory overhead, but the modes are pretty light (stateless, for the most part), so this doesn't seem like a big deal. So modify ECB and CBC classes to add destructors to delete the padding object.
* Remove support for S2K in Engines. There are only three implementations oflloyd2008-11-101-2/+0
| | | | | | an S2K in Botan, all in the core library, and it's relatively unlikely that that many more will be added. get_s2k still exists and performs a direct search across the possibilities.
* In lookup.h, forward declare Library_State instead of including libstate.hlloyd2008-11-091-1/+2
|
* Remove get_mgf - unsused internally, and I doubt apps use it muchlloyd2008-11-081-7/+0
|
* Split the last parts of the 'core' modulelloyd2008-11-081-1/+0
| | | | Add some missing info.txts
* Split base.h into block_cipher.h and stream_cipher.hlloyd2008-11-081-2/+5
| | | | | | It turned out many files were including base.h merely to get other includes (like types.h, secmem.h, and exceptn.h). Those have been changed to directly include the files containing the declarations that code needs.
* Move the declaration of the HashFunction base class to a new header hash.hlloyd2008-11-081-0/+1
| | | | (from base.h)
* Wrap lines to 80 columnslloyd2008-10-281-9/+19
|
* Move libstate and selftest out of core/ dir to toplevellloyd2008-10-261-0/+244