Zero-pad usec format to handle values less than 100,000 correctly
authorguenther <guenther@openbsd.org>
Wed, 16 Apr 2014 17:46:23 +0000 (17:46 +0000)
committerguenther <guenther@openbsd.org>
Wed, 16 Apr 2014 17:46:23 +0000 (17:46 +0000)
ok matthew@ tedu@

lib/libcrypto/ts/ts_rsp_sign.c
lib/libssl/src/crypto/ts/ts_rsp_sign.c

index 235c0a8..e7186a8 100644 (file)
@@ -983,7 +983,7 @@ TS_RESP_set_genTime_with_precision(ASN1_GENERALIZEDTIME *asn1_time,
                   if the elements correspond to 0, they MUST be wholly
                   omitted, and the decimal point element also MUST be
                   omitted." */
-               (void)snprintf(usecstr, sizeof(usecstr), ".%ld", usec);
+               (void)snprintf(usecstr, sizeof(usecstr), ".%06ld", usec);
                /* truncate and trim trailing 0 */
                usecstr[precision + 1] = '\0';
                p = usecstr + strlen(usecstr) - 1;
index 235c0a8..e7186a8 100644 (file)
@@ -983,7 +983,7 @@ TS_RESP_set_genTime_with_precision(ASN1_GENERALIZEDTIME *asn1_time,
                   if the elements correspond to 0, they MUST be wholly
                   omitted, and the decimal point element also MUST be
                   omitted." */
-               (void)snprintf(usecstr, sizeof(usecstr), ".%ld", usec);
+               (void)snprintf(usecstr, sizeof(usecstr), ".%06ld", usec);
                /* truncate and trim trailing 0 */
                usecstr[precision + 1] = '\0';
                p = usecstr + strlen(usecstr) - 1;