[openssl-commits] [openssl] OpenSSL_1_0_2-stable update

Richard Levitte levitte at openssl.org
Tue May 2 08:43:15 UTC 2017


The branch OpenSSL_1_0_2-stable has been updated
       via  d2335f30970ed3edc1c7c11700ab7f34396cf086 (commit)
      from  13f70ae2a9734b8eedea337aa947a75d27ed8320 (commit)


- Log -----------------------------------------------------------------
commit d2335f30970ed3edc1c7c11700ab7f34396cf086
Author: Todd Short <tshort at akamai.com>
Date:   Thu Feb 16 16:08:02 2017 -0500

    Fix time offset calculation.
    
    ASN1_GENERALIZEDTIME and ASN1_UTCTIME may be specified using offsets,
    even though that's not supported within certificates.
    
    To convert the offset time back to GMT, the offsets are supposed to be
    subtracted, not added. e.g. 1759-0500 == 2359+0100 == 2259Z.
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    Reviewed-by: Matt Caswell <matt at openssl.org>
    Reviewed-by: Richard Levitte <levitte at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/3335)
    (cherry picked from commit ae32742e3db45a19aead2c42e30072882492be1d)

-----------------------------------------------------------------------

Summary of changes:
 crypto/asn1/a_gentm.c | 2 +-
 crypto/asn1/a_utctm.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/crypto/asn1/a_gentm.c b/crypto/asn1/a_gentm.c
index fa76dca..8511813 100644
--- a/crypto/asn1/a_gentm.c
+++ b/crypto/asn1/a_gentm.c
@@ -202,7 +202,7 @@ int asn1_generalizedtime_to_tm(struct tm *tm, const ASN1_GENERALIZEDTIME *d)
     if (a[o] == 'Z')
         o++;
     else if ((a[o] == '+') || (a[o] == '-')) {
-        int offsign = a[o] == '-' ? -1 : 1, offset = 0;
+        int offsign = a[o] == '-' ? 1 : -1, offset = 0;
         o++;
         if (o + 4 > l)
             goto err;
diff --git a/crypto/asn1/a_utctm.c b/crypto/asn1/a_utctm.c
index 724a10b..0344482 100644
--- a/crypto/asn1/a_utctm.c
+++ b/crypto/asn1/a_utctm.c
@@ -172,7 +172,7 @@ int asn1_utctime_to_tm(struct tm *tm, const ASN1_UTCTIME *d)
     if (a[o] == 'Z')
         o++;
     else if ((a[o] == '+') || (a[o] == '-')) {
-        int offsign = a[o] == '-' ? -1 : 1, offset = 0;
+        int offsign = a[o] == '-' ? 1 : -1, offset = 0;
         o++;
         if (o + 4 > l)
             goto err;


More information about the openssl-commits mailing list