cURL / Mailing Lists / curl-library / Single Mail


RE: curl_endian using int64 with out checking curl_config.h

From: Steve Holme <>
Date: Sun, 18 Jan 2015 16:36:19 +0000

On Sun, 18 Jan 2015, John E. Malmberg wrote:

> > I tried to find all the instances and fix them for the last release,
> > as I realised I had broken non 64-bit compiler builds, but as I don't
> > such a compiler myself I unfortunately missed some :(
> >
> > Which file did you notice this in as I'd like to fix it there too?
> lib/curl_ntlm_core.c:
> X 28064 #if defined(HAVE_LONGLONG)
> X 28065 long long tw;
> X 28066 #else
> X 28067 __int64 tw;
> X 28068 #endif


> The assumption is that if the compiler does not have long long,
> that it has __int64. I do not see a test in config.h for __int64.

That is in the function Curl_ntlm_core_mk_ntlmv2_resp() which is only included if USE_NTLM_V2 is not zero which won't be the case when 64-bit integers aren't supported due to the following in the header file:

#define USE_NTLM_V2 1

> I discovered that a new option had been added to configure that
> needed to be disabled on VAX since the external libraries to
> support NTLM have not been ported to VAX.

Yes - we added support for SMB in v7.40.0. However, all the SMB code is disabled when NTLM is not available.

If you had to explicitly disable SMB I would consider that a bug - which we should try and identify and fix.

> Same issue in lib/smb.c:

That is protected via the following at the top of the source file:

#if !defined(CURL_DISABLE_SMB) && defined(USE_NTLM) && \

Any assistance / additional info you can provide on a possible configure bug would be very much appreciated.

Kind Regards


List admin:
Received on 2015-01-18