aboutsummaryrefslogtreecommitdiffstats
path: root/src/cert/cvc
Commit message (Collapse)AuthorAgeFilesLines
* Kill off the quite vestigal pubkey_enums header. Move most of the codelloyd2012-03-281-1/+1
| | | | | | | to key_constraints.{h,cpp} in cert/x509. Move the X509_Encoding enum to x509_key.h Constify argument to X509_Object::check_signature, accidental ommision
* Add back BigInt::to_u32bitlloyd2011-05-101-1/+1
| | | | | | | Fix BigInt::get_substring when length is equal to 32 - an overflow would cause the mask to be equal to 0 thus producing nothing at all. Disable CVC by default, it's not ready for prime time in any sense.
* ECC private keys had two different constructors, one taking a grouplloyd2011-04-081-1/+1
| | | | | | | | | | | | | | | | and a random number generator, and the other taking a group and a preset private key value. The DL private keys instead have on constructor for this; if the x value is zero, then a new random key is created. For consistency, do this with ECC as well. ECDH actually didn't have one of these constructors, forcing you to either load from PKCS #8 or else use a random key. Rename EC_Domain_Params to EC_Group, with a typedef for compatability. More doc updates. Update mtn ignores for Sphinx output
* Remove inclusions of unused headers.lloyd2011-02-102-7/+7
| | | | Avoid using auto_ptr in the CVC headers.
* Convert the BER/DER coders to use size_t instead of u32bit for smalllloyd2011-02-092-2/+2
| | | | integer values. Update callers.
* Some cleanups, and add an <ios> include for Sun Studio 12lloyd2011-02-092-40/+47
|
* Fix some VC warnings under 64 bit compileslloyd2010-12-132-6/+6
|
* Overflow warning in MSVClloyd2010-11-291-1/+2
|
* Split up src/cert/x509 into a set of modules, though mostly mutuallylloyd2010-09-172-2/+0
| | | | dependent right now.
* Update all uses of MemoryRegion::append to use either push_back or operator+=lloyd2010-09-155-17/+15
|
* Anywhere where we use MemoryRegion::begin to get access to the raw pointerlloyd2010-09-131-7/+5
| | | | | representation (rather than in an interator context), instead use &buf[0], which works for both MemoryRegion and std::vector
* Make round_up and round_down templates instead of fixed to use u32bitslloyd2010-06-291-1/+1
|
* Replace "@return a blah" and "@return the blah" with just "@return blah"lloyd2010-06-162-11/+11
|
* More Doxygen updates/fixeslloyd2010-06-152-1/+4
|
* Fix a few hundred Doxygen warningslloyd2010-06-155-6/+14
|
* Remove some C-style castslloyd2010-04-231-2/+2
|
* Initialize m_pk to null in constructorlloyd2010-03-171-0/+2
|
* Modify pubkey classes to take names instead of object pointers.lloyd2010-03-082-17/+15
| | | | | Remove use of look_pk from the source and examples, instead instantiate classes directly.
* Remove the now no-op classes PK_Encrypting_Key,lloyd2010-03-081-5/+1
| | | | | PK_Decrypting_Key, PK_Signing_Key, PK_Verifying_with_MR_Key, and PK_Verifying_wo_MR_Key.
* Changes to CVC to deal with the fact that you can't create an uninitializedlloyd2010-03-043-8/+10
| | | | ECDSA_PublicKey object anymore.
* The code in pk_codecs was actually entirely tied to the code inlloyd2010-03-041-1/+0
| | | | | | pubkey; you literally could not compile any pubkey code without it. Move it up to the pubkey dir, it wasn't at all useful to have it in its own dir.
* Remove BOTAN_DLL from templates, VC++ doesn't like itlloyd2010-03-032-2/+2
|
* Reorganize where some CVC code goes to avoid template bloat + VC problemslloyd2010-03-037-95/+66
|
* CVC assumed sigs were DER encoded by default. Not truelloyd2010-03-024-25/+7
|
* Remove ECDSA_Signature encoding/decoding cruftlloyd2010-03-023-83/+39
|
* Cleanups, remove dead codelloyd2010-03-028-96/+27
|
* Port in the code for forming the EAC encoding of an ECDSA key, so nowlloyd2010-03-021-19/+47
| | | | generating new CVC certs might actually work.
* Lots of internal CVC cleanupslloyd2010-03-0213-192/+121
|
* Remove some needless usages of auto_ptr in CVClloyd2010-03-027-22/+33
|
* Remove a fairly useless member of EC_PublicKey that was only used forlloyd2010-03-021-1/+1
| | | | | | | handling ImplicitCA ECDSA keys in the CVC code. Currently dealt with in CVC by simply commenting out the calls - CVC is already pretty broken and I'd much rather have ECC sane and under control and CVC totally broken than ECC remaining in its current state.
* Clean up EC_Domain_Paramslloyd2010-03-011-3/+3
|
* Small cleanups in CVC. Reduce use of assert. Remove UTF-8 charslloyd2010-02-245-28/+25
|
* Remove TR1 dependency in CVC codelloyd2010-02-2412-111/+25
|
* Remove global variablelloyd2010-01-222-4/+2
|
* Add copyright and license notes to pretty much every file that didn't have them,lloyd2009-12-312-4/+4
| | | | | | | | including the examples and self-test code. Most of these files had not copyright/license information at all; since a major point of the examples is to allow users to copy and paste code that already does something they want, an ambigious license is not good.
* Replace time_t_to_tm with calendar_value which returns a struct representinglloyd2009-12-241-6/+5
| | | | the calendar time without tying to a particular format. From the C++0x branch.
* Add missing BOTAN_DLL exports.lloyd2009-12-162-1/+1
| | | | Move most of the engine headers to internal
* Make many more headers internal-only.lloyd2009-12-163-46/+47
| | | | | | | | | | | | | 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-162-13/+17
|
* Consolidate the non-canonical epoch timers, like cpuid and Win32'slloyd2009-12-012-2/+2
| | | | | | | | | | | | | | QueryPerformanceCounter, into an entropy source hres_timer. Its results, if any, do not count as contributing entropy to the poll. Convert the other (monotonic/fixed epoch) timers to a single function get_nanoseconds_clock(), living in time.h, which statically chooses the 'best' timer type (clock_gettime, gettimeofday, std::clock, in that order depending on what is available). Add feature test macros for clock_gettime and gettimeofday. Remove the Timer class and timer.h. Remove the Timer& argument to the algorithm benchmark function.
* Cleanups - remove emails from source files, they should only live inlloyd2009-11-105-9/+4
| | | | credits.txt and thanks.txt. Remove some various bits of formatting weirdness.
* 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.
* The get_tm function was duplicated. Move single version to timer.{h,cpp}lloyd2009-09-171-43/+16
|
* Split up util.h into 3 fileslloyd2009-09-172-2/+1
| | | | | | | - rounding.h (round_up, round_down) - workfactor.h (dl_work_factor) - timer.h (system_time) And update all users of the previous util.h
* Replace 'XXX' and other such notes with FIXME for easy greppinglloyd2009-07-223-6/+6
|
* Add a script that reads the output of print_deps.py and rewriteslloyd2009-07-151-5/+13
| | | | | | 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-3019-172/+210
| | | | | | | | | | | | | | | 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).
* Split the last parts of the 'core' modulelloyd2008-11-086-6/+6
| | | | Add some missing info.txts
* Remove two declared but not defined constructors of EAC_Signed_Objectlloyd2008-10-141-4/+1
|
* Remove spurious trailing ; after blockslloyd2008-10-131-1/+2
|