aboutsummaryrefslogtreecommitdiffstats
path: root/src/sym_algo
Commit message (Collapse)AuthorAgeFilesLines
* Use size_t rather than u32bit in SymmetricAlgorithmlloyd2010-10-133-15/+15
|
* Also deal with short values in OctetStringlloyd2010-10-011-1/+1
|
* Update all uses of MemoryRegion::append to use either push_back or operator+=lloyd2010-09-151-2/+2
|
* Remove constructors of MemoryVector and SecureVector that took twolloyd2010-09-131-1/+4
| | | | MemoryRegions and concatenated them.
* Remove more uses of vector to pointer implicit conversionslloyd2010-09-131-2/+1
|
* Anywhere where we use MemoryRegion::begin to get access to the raw pointerlloyd2010-09-132-3/+3
| | | | | representation (rather than in an interator context), instead use &buf[0], which works for both MemoryRegion and std::vector
* Big, invasive but mostly automated change, with a further attempt atlloyd2010-09-071-1/+1
| | | | | | | | | | | | | | harmonising MemoryRegion with std::vector: The MemoryRegion::clear() function would zeroise the buffer, but keep the memory allocated and the size unchanged. This is very different from STL's clear(), which is basically the equivalent to what is called destroy() in MemoryRegion. So to be able to replace MemoryRegion with a std::vector, we have to rename destroy() to clear() and we have to expose the current functionality of clear() in some other way, since vector doesn't support this operation. Do so by adding a global function named zeroise() which takes a MemoryRegion which is zeroed. Remove clear() to ensure all callers are updated.
* Update some callers that were using Hex_Encoder or Hex_Decoder butlloyd2010-09-031-13/+6
| | | | | | | | | | | | | | | | | | really didn't need to. The ones in symkey and big_code were actually calling accessor functions to do the encoding themselves without a Pipe (should have definitely recognized that as a code smell). These versions have changed semantically with this checkin - previously they would completely ignore bad inputs, but now invalid inputs are rejected. For instance, you cannot say SymmetricKey key("Only some of this is hex, most of it isn't"); And expect to get a valid key formed by filtering out the non-hex characters and then decoding it. This is almost certainly a good thing. Also fix include in Botan.xs
* Doxygenlloyd2010-06-211-2/+7
|
* Replace "@return a blah" and "@return the blah" with just "@return blah"lloyd2010-06-161-1/+1
|
* More Doxygen commentslloyd2010-06-161-10/+99
|
* More Doxygen updateslloyd2010-06-151-1/+6
|
* More Doxygen updates/fixeslloyd2010-06-151-1/+1
|
* Fix a few hundred Doxygen warningslloyd2010-06-151-1/+1
|
* Use "/*" instead of "/**" in starting comments at the begining of a file.lloyd2010-06-071-1/+1
| | | | | This caused Doxygen to think this was markup meant for it, which really caused some clutter in the namespace page.
* Make many more headers internal-only.lloyd2009-12-161-1/+1
| | | | | | | | | | | | | Fixes for the amalgamation generator for internal headers. Remove BOTAN_DLL exporting macros from all internal-only headers; the classes/functions there don't need to be exported, and avoiding the PIC/GOT indirection can be a big win. Add missing BOTAN_DLLs where necessary, mostly gfpmath and cvc For GCC, use -fvisibility=hidden and set BOTAN_DLL to the visibility __attribute__ to export those classes/functions.
* Full working amalgamation build, plus internal-only headers concept.lloyd2009-12-161-8/+0
|
* Rename/remove some secmem member variables for better matching with STLlloyd2009-11-171-3/+3
| | | | | | | | containers (specifically vector). Rename is_empty to empty Remove has_items Rename create to resize
* 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.
* Remove all exception specifications. The way these are designed in C++ islloyd2009-10-221-2/+2
| | | | | | just too fragile and not that useful. Something like Java's checked exceptions might be nice, but simply killing the process entirely if an unexpected exception is thrown is not exactly useful for something trying to be robust.
* Move some files around to break up dependencies between directorieslloyd2009-07-161-0/+1
|
* Add a script that reads the output of print_deps.py and rewriteslloyd2009-07-151-4/+6
| | | | | | the info.txt files with the right module dependencies. Apply it across the codebase.
* Thomas Moschny passed along a request from the Fedora packagers which camelloyd2009-03-303-47/+53
| | | | | | | | | | | | | | | 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).
* Rename SymmetricAlgorithm::key to key_schedule to avoid many namelloyd2008-11-091-5/+5
| | | | conflicts/collisions
* Split the last parts of the 'core' modulelloyd2008-11-082-0/+19
| | | | Add some missing info.txts
* Move mutex.h from core to utilslloyd2008-11-083-0/+292
Move core/sym_algo.{h,cpp} to sym_algo