aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2012-10-26 02:57:36 +0000
committerRob Austein <sra@hactrn.net>2012-10-26 02:57:36 +0000
commit352e7b86cff4df11423871333b51b6c730dd9cbf (patch)
tree173b5529ca89bdfed5151fe3ea36505a555db203 /rpkid/rpki
parent11c501be2e1b20a277a5920afcab8eea44aa309c (diff)
Change POW representation of UTCTime and GeneralizedTime to use Python
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
Diffstat (limited to 'rpkid/rpki')
-rw-r--r--rpkid/rpki/POW/__init__.py6
-rw-r--r--rpkid/rpki/sundial.py29
-rw-r--r--rpkid/rpki/x509.py14
3 files changed, 13 insertions, 36 deletions
diff --git a/rpkid/rpki/POW/__init__.py b/rpkid/rpki/POW/__init__.py
index 0468c235..d3796245 100644
--- a/rpkid/rpki/POW/__init__.py
+++ b/rpkid/rpki/POW/__init__.py
@@ -1 +1,7 @@
from _POW import *
+
+# Set callback to let POW construct rpki.sundial.datetime objects
+
+from rpki.sundial import datetime as sundial_datetime
+customDatetime(sundial_datetime)
+del sundial_datetime
diff --git a/rpkid/rpki/sundial.py b/rpkid/rpki/sundial.py
index b8a78ea3..2f333b40 100644
--- a/rpkid/rpki/sundial.py
+++ b/rpkid/rpki/sundial.py
@@ -72,33 +72,6 @@ class datetime(pydatetime.datetime):
return int(self.strftime("%s"))
@classmethod
- def fromUTCTime(cls, x):
- """
- Convert from ASN.1 UTCTime.
- """
- x = str(x)
- return cls.fromGeneralizedTime(("19" if x[0] >= "5" else "20") + x)
-
- def toUTCTime(self):
- """
- Convert to ASN.1 UTCTime.
- """
- return self.strftime("%y%m%d%H%M%SZ")
-
- @classmethod
- def fromGeneralizedTime(cls, x):
- """
- Convert from ASN.1 GeneralizedTime.
- """
- return cls.strptime(x, "%Y%m%d%H%M%SZ")
-
- def toGeneralizedTime(self):
- """
- Convert to ASN.1 GeneralizedTime.
- """
- return self.strftime("%Y%m%d%H%M%SZ")
-
- @classmethod
def fromXMLtime(cls, x):
"""
Convert from XML time representation.
@@ -284,8 +257,6 @@ if __name__ == "__main__":
print "str: ", t
print "repr: ", repr(t)
print "seconds since epoch:", t.strftime("%s")
- print "UTCTime: ", t.toUTCTime()
- print "GeneralizedTime: ", t.toGeneralizedTime()
print "XMLtime: ", t.toXMLtime()
print
diff --git a/rpkid/rpki/x509.py b/rpkid/rpki/x509.py
index adfcceea..6f28e6f7 100644
--- a/rpkid/rpki/x509.py
+++ b/rpkid/rpki/x509.py
@@ -561,13 +561,13 @@ class X509(DER_object):
"""
Get the inception time of this certificate.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getNotBefore())
+ return self.get_POW().getNotBefore()
def getNotAfter(self):
"""
Get the expiration time of this certificate.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getNotAfter())
+ return self.get_POW().getNotAfter()
def getSerial(self):
"""
@@ -1179,7 +1179,7 @@ class CMS_object(DER_object):
"""
Extract signingTime from CMS signed attributes.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().signingTime())
+ return self.get_POW().signingTime()
def verify(self, ta):
"""
@@ -1451,13 +1451,13 @@ class SignedManifest(DER_CMS_object):
"""
Get thisUpdate value from this manifest.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getThisUpdate())
+ return self.get_POW().getThisUpdate()
def getNextUpdate(self):
"""
Get nextUpdate value from this manifest.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getNextUpdate())
+ return self.get_POW().getNextUpdate()
@classmethod
def build(cls, serial, thisUpdate, nextUpdate, names_and_objs, keypair, certs, version = 0):
@@ -1769,13 +1769,13 @@ class CRL(DER_object):
"""
Get thisUpdate value from this CRL.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getThisUpdate())
+ return self.get_POW().getThisUpdate()
def getNextUpdate(self):
"""
Get nextUpdate value from this CRL.
"""
- return rpki.sundial.datetime.fromGeneralizedTime(self.get_POW().getNextUpdate())
+ return self.get_POW().getNextUpdate()
def getIssuer(self):
"""