Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
Use of long long type outside of HAVE_LONGLONG ifdef #478
In lib/curl_ntlm_core.c there is a usage of the "long long" type outside of the ifdef HAVE_LONGLONG which means the code doesn't compile on platforms without "long long".
The following patch fixes it.
--- curl_ntlm_core.c (revision 2295)
/* Calculate the response len */
how about this instead?
As noted in the function, the timestamp is supposed to be a "LE, 64-bit signed value representing the number of tenths of a microsecond since January 1, 1601." Using
We either need a type guaranteed at least 64 bits or we have to do something that allows us to represent one like split each of those numbers in two 32bit dwords (this is actually what FILETIME does) and then do the multiplication on them in pieces. I don't really see a reason to do all that at the moment (who else has this problem?) however It may be better to be more explicit about what is required:
Also as you know C89 does not say anything about type representation in numeric literals for decimal past
Alternatively, as I already merged the change to turn that into using
Of course we could also rewrite the logic to not requite 64bit logic, but I'm not sure its worth the effort unless we know we actually have users who'd care.