[openssl-users] NMAKE fatal error, 32-bit time_t
Matt Caswell
matt at openssl.org
Wed Sep 12 15:24:03 UTC 2018
On 12/09/18 16:23, Thomas J. Hruska wrote:
> On 9/12/2018 7:03 AM, Viktor Dukhovni wrote:
>>
>>
>>> On Sep 12, 2018, at 9:53 AM, Thomas J. Hruska
>>> <shinelight at shininglightpro.com> wrote:
>>>
>>> Casting to time_t appears to correct the issue and the build
>>> completes successfully:
>>>
>>> const time_t default_time =
>>> (time_t)CT_POLICY_EVAL_CTX_get_time(ct_policy_ctx) /
>>> 1000;
>>
>> Since the CT time value is in "ms" since epoch, you really don't want
>> to down-convert that to 32 bit *before* the division. You'll need
>> some parentheses:
>>
>> https://en.cppreference.com/w/c/language/operator_precedence
>>
>> type cast has higher precedence than division, but you need to
>> divide first, then cast.
>
> Whoops. Well, being pointed at the "intro to C" documentation is what I
> get for rushing that. It's a bit ironic since I'm notorious for
> wrapping everything in extra parenthesis just to avoid memorizing
> operator precedence.
>
> Thanks for pointing that out though.
>
Is this new to 1.1.1? Or does it also impact 1.1.0?
Matt
More information about the openssl-users
mailing list