aboutsummaryrefslogtreecommitdiff
path: root/rpkid/ext/POW.c
AgeCommit message (Collapse)Author
2013-08-22First cut at adding a .verify() method back to the X509Store class.Rob Austein
Not done yet, but does have the tricky bit (Python callback). svn path=/trunk/; revision=5460
2013-07-23Apparently I never set svn:keywords for this file.Rob Austein
svn path=/trunk/; revision=5442
2013-05-14Clean unused variables.Rob Austein
svn path=/trunk/; revision=5334
2013-04-11Get rid of dependency on v3_key_usage from OpenSSL library, since someRob Austein
Linux distributions hide that symbol; code after the change is easier to read anyway, so no great loss. svn path=/trunk/; revision=5294
2013-03-22.setRFC3779() handling of emtpy iterations was subtly broken in waysRob Austein
that only showed up when we started paying closer attention to inheritence and empty RFC 3779 extensions. Fixes #482. svn path=/trunk/; revision=5200
2012-11-23Use Py_ssize_t consistently for string lengths in C/Python API. See #355.Rob Austein
svn path=/trunk/; revision=4897
2012-11-22ipaddress_object_from_bytes() wasn't throwing exception correctly onRob Austein
some forms of bad input. See #355. svn path=/trunk/; revision=4896
2012-11-08Add __copy__ and __deepcopy__ support to IPAddress objects.Rob Austein
svn path=/branches/tk274/; revision=4812
2012-10-26Warnings dependent on word size: same OS and compiler version, warningRob Austein
shows up on 64-bit CPU, but not on 32-bit CPU. Fun! svn path=/branches/tk274/; revision=4792
2012-10-26Change POW representation of UTCTime and GeneralizedTime to use PythonRob Austein
datetime instead of OpenSSL-like GeneralizedTime strings. Clean up a lot of compiler warnings that gcc only reports with -Wextra. svn path=/branches/tk274/; revision=4791
2012-10-25Add direct conversion of datetime (and subclasses) timestamps toRob Austein
ASN1_TIME, so we can stop mucking about with this conversion in the Python code. svn path=/branches/tk274/; revision=4789
2012-10-25Fix some documentation strings. Convert inappropriate uses ofRob Austein
PyArg_ParseTuple() to use PySequence_Fast() et al. Fixes #296. svn path=/branches/tk274/; revision=4788
2012-10-14CleanupRob Austein
svn path=/branches/tk274/; revision=4778
2012-10-13Consolidate all the IP-version-specific voodoo into a read-only dataRob Austein
structure. svn path=/branches/tk274/; revision=4777
2012-10-12Correct type names (insert package name).Rob Austein
svn path=/branches/tk274/; revision=4776
2012-10-12Replace rpki.ipaddrs with rpki.POW.IPAddress.Rob Austein
svn path=/branches/tk274/; revision=4773
2012-10-11Tell OpenSSL to use Python's replacements for libc memory allocationRob Austein
functions, mostly because Python says this will make our teeth whiter. Seems to work. Back this out if it creates portability problems. svn path=/branches/tk274/; revision=4770
2012-10-11Use correct OID for EE certificate SIA (id-ad-signedObject, notRob Austein
id-ad-signedObjectRepository). Fix X509.setSerial() to set the serial (doh). Don't set empty RFC 3779 extensions no matter what silly thing the caller does. Set critical flag on Certificate Policies extension. svn path=/branches/tk274/; revision=4768
2012-10-10Convert ROAs and manifests to use POW CMS subclasses. Start inchingRob Austein
resource_set towards using POW.IPAddress class. Closes #293. svn path=/branches/tk274/; revision=4765
2012-10-10Fix length of manifest BIT STRING. Remove extraneous argument fromRob Austein
CMS subclass .sign() method calling sequences. svn path=/branches/tk274/; revision=4764
2012-10-09FIRST allocate, THEN initialize. Doh.Rob Austein
svn path=/branches/tk274/; revision=4759
2012-10-09Calculate SKI directly from POW.Asymmetric object.Rob Austein
svn path=/branches/tk274/; revision=4758
2012-10-05Apparently gcc reserves the right to optimize code to the point whereRob Austein
safe code becomes unsafe, then whines about it. Hmm. svn path=/branches/tk274/; revision=4757
2012-10-05Convert another chunk of Python code to use new POW classes. Clean upRob Austein
PEM and OID code in POW. Add ENTER() macro to make it easier to track down things like borked reference counts. svn path=/branches/tk274/; revision=4756
2012-10-03Make new POW.ROA and POW.Manifest subclasses of POW.CMS. This isRob Austein
still a little rough, doesn't set eContentType OIDs automatically, needs more testing, but basic stuff like extracting contents from an existing ROA seems to work. svn path=/branches/tk274/; revision=4753
2012-10-02Cleanup #warnings.Rob Austein
svn path=/branches/tk274/; revision=4752
2012-09-25Clear old extensions from PKCS #10 request before setting new ones.Rob Austein
In most cases there won't be old extensions to clear, but in theory this could happen when modifying an existing request, so get it right. svn path=/branches/tk274/; revision=4735
2012-09-25Add PKCS#10 class.Rob Austein
svn path=/branches/tk274/; revision=4734
2012-09-23Add X509.getPublicKey(). Clean up a couple zillion compiler warningsRob Austein
from gcc 4.2 on MacOSX; am not entirely happy about some of the casts required, might want to encapsulate the more common patterns in functions to do controlled casts from one known type to another. svn path=/branches/tk274/; revision=4733
2012-09-22Drag Asymmetric class up to using the EVP_PKEY API, which simplifiesRob Austein
the Asymmetric code considerably and gets us most of the way towards being able to support ECDSA, which, in theory, we'll want for BGPSEC. svn path=/branches/tk274/; revision=4732
2012-09-22Internal TODO comments (easier than a ticket system on airplanes...).Rob Austein
svn path=/branches/tk274/; revision=4731
2012-09-21ROA class.Rob Austein
svn path=/branches/tk274/; revision=4730
2012-09-21Implement RPKI manifests. Raise exceptions properly in ASN1_TIMERob Austein
converters. Clean up internal type names, delete a bunch of symbols nothing uses anymore. svn path=/branches/tk274/; revision=4729
2012-09-20Whack rest of POW's object I/O (x.derRead(), x.derWrite()) to use newRob Austein
class-based methods instead of old module functions. svn path=/branches/tk274/; revision=4728
2012-09-20Clean up conversions between ASN.1 integers and Python integers.Rob Austein
Fix a few cases where code incorrectly assumed that ASN.1 field values would always be small enough to fit in a C integer type. svn path=/branches/tk274/; revision=4727
2012-09-20Add ten gazillion class methods for reading objects. Eventually thisRob Austein
should completely replace the old module derRead() and pemRead() functions, since it's easier to extend and supports subclasses properly. For now, the new and old APIs are both just wrappers around a generic lower-level internal API. svn path=/branches/tk274/; revision=4726
2012-09-18Add AKI and CRLNumber handlers for CRLs.Rob Austein
svn path=/branches/tk274/; revision=4723
2012-09-18Add CertificatePolicies handlers.Rob Austein
svn path=/branches/tk274/; revision=4722
2012-09-18CRLDP handlers.Rob Austein
svn path=/branches/tk274/; revision=4721
2012-09-18AIA handlers.Rob Austein
svn path=/branches/tk274/; revision=4720
2012-09-18Add SIA handlers.Rob Austein
svn path=/branches/tk274/; revision=4719
2012-09-17Get rid of last(?) vestiges of silly dependencies on OpenSSL'sRob Austein
predeclared OID names. Add BasicConstraints handlers. svn path=/branches/tk274/; revision=4718
2012-09-17Add set methods for AKI and SKI extensions. Whack all derRead helpersRob Austein
to use BIOs. Other minor cleanup. svn path=/branches/tk274/; revision=4717
2012-09-17Teach X509.{get,set}RFC3779() methods to use IPAddress class.Rob Austein
svn path=/branches/tk274/; revision=4716
2012-09-17Add IPAddress class. This is intended to replace the rpki.ipaddrsRob Austein
classes eventually, but may still need to be split into separate IPv4 and IPv6 classes or reimplemented as a subclass of PyLong. Won't know until we try to move away from the rpki.POW.pkix ASN.1 code, and there's more groundwork to do before we can make that jump. svn path=/branches/tk274/; revision=4715
2012-09-12Debug X509.getRFC3779(), add IPv6 support. Will need refactoring onceRob Austein
I see what the ROA code looks like. svn path=/branches/tk274/; revision=4712
2012-09-12CheckpointRob Austein
svn path=/branches/tk274/; revision=4711
2012-09-12CheckpointRob Austein
svn path=/branches/tk274/; revision=4710
2012-09-12Get reference counts right.Rob Austein
svn path=/branches/tk274/; revision=4709
2012-09-12Checkpoint working version of x509_object_get_rfc3779(). HideouslyRob Austein
ugly, still needs work, but appears to return correct results. svn path=/branches/tk274/; revision=4708