From 8667de4675091a50b4c4124b126daa956ba23e69 Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Fri, 1 Jul 2011 15:11:25 -0400 Subject: [PATCH 1/1] instead of just dropping timezone info, use sfa.util.sfatime.utcparse to correctly handle datetime with timezone info --- sfa/managers/aggregate_manager_pl.py | 2 +- sfa/trust/credential.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sfa/managers/aggregate_manager_pl.py b/sfa/managers/aggregate_manager_pl.py index d33a002a..5fcd6ef7 100644 --- a/sfa/managers/aggregate_manager_pl.py +++ b/sfa/managers/aggregate_manager_pl.py @@ -79,7 +79,7 @@ def __get_registry_objects(slice_xrn, creds, users): slice = {} - extime = Credential(string=creds[0]).get_expiration().replace(tzinfo=None) + extime = utcparse(Credential(string=creds[0]).get_expiration()) # If the expiration time is > 60 days from now, set the expiration time to 60 days from now if extime > datetime.datetime.utcnow() + datetime.timedelta(days=60): extime = datetime.datetime.utcnow() + datetime.timedelta(days=60) diff --git a/sfa/trust/credential.py b/sfa/trust/credential.py index 2fd3e921..5f980c97 100644 --- a/sfa/trust/credential.py +++ b/sfa/trust/credential.py @@ -31,12 +31,12 @@ import os import datetime +from sfa.util.sfatime import utcparse from tempfile import mkstemp from xml.dom.minidom import Document, parseString from lxml import etree from dateutil.parser import parse from StringIO import StringIO - from sfa.util.faults import * from sfa.util.sfalogging import logger from sfa.trust.certificate import Keypair @@ -760,7 +760,7 @@ class Credential(object): return True # make sure it is not expired - if self.get_expiration().replace(tzinfo=None) < datetime.datetime.utcnow(): + if utcparse(self.get_expiration()) < datetime.datetime.utcnow(): raise CredentialNotVerifiable("Credential expired at %s" % self.expiration.isoformat()) # Verify the signatures -- 2.43.0