diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/curl_ntlm_core.c | 21 | ||||
| -rw-r--r-- | lib/endian.c | 20 | ||||
| -rw-r--r-- | lib/endian.h | 10 | 
3 files changed, 31 insertions, 20 deletions
| diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c index 778f729a4..6dafeeb71 100644 --- a/lib/curl_ntlm_core.c +++ b/lib/curl_ntlm_core.c @@ -106,6 +106,7 @@  #include "curl_md5.h"  #include "curl_hmac.h"  #include "warnless.h" +#include "endian.h"  #define _MPRINTF_REPLACE /* use our functions only */  #include <curl/mprintf.h> @@ -464,26 +465,6 @@ static void ascii_uppercase_to_unicode_le(unsigned char *dest,    }  } -static void write32_le(const int value, unsigned char *buffer) -{ -  buffer[0] = (char)(value & 0x000000FF); -  buffer[1] = (char)((value & 0x0000FF00) >> 8); -  buffer[2] = (char)((value & 0x00FF0000) >> 16); -  buffer[3] = (char)((value & 0xFF000000) >> 24); -} - -#if (CURL_SIZEOF_CURL_OFF_T > 4) -#if defined(HAVE_LONGLONG) -static void write64_le(const long long value, unsigned char *buffer) -#else -static void write64_le(const __int64 value, unsigned char *buffer) -#endif -{ -  write32_le((int)value, buffer); -  write32_le((int)(value >> 32), buffer + 4); -} -#endif -  /*   * Set up nt hashed passwords   */ diff --git a/lib/endian.c b/lib/endian.c index f95012905..e1c2142d1 100644 --- a/lib/endian.c +++ b/lib/endian.c @@ -45,3 +45,23 @@ unsigned int readint_le(unsigned char *buf)    return ((unsigned int)buf[0]) | ((unsigned int)buf[1] << 8) |           ((unsigned int)buf[2] << 16) | ((unsigned int)buf[3] << 24);  } + +void write32_le(const int value, unsigned char *buffer) +{ +  buffer[0] = (char)(value & 0x000000FF); +  buffer[1] = (char)((value & 0x0000FF00) >> 8); +  buffer[2] = (char)((value & 0x00FF0000) >> 16); +  buffer[3] = (char)((value & 0xFF000000) >> 24); +} + +#if (CURL_SIZEOF_CURL_OFF_T > 4) +#if defined(HAVE_LONGLONG) +void write64_le(const long long value, unsigned char *buffer) +#else +void write64_le(const __int64 value, unsigned char *buffer) +#endif +{ +  write32_le((int)value, buffer); +  write32_le((int)(value >> 32), buffer + 4); +} +#endif diff --git a/lib/endian.h b/lib/endian.h index 994b5dbd9..3b0e08d1c 100644 --- a/lib/endian.h +++ b/lib/endian.h @@ -25,4 +25,14 @@  unsigned short readshort_le(unsigned char *buf);  unsigned int readint_le(unsigned char *buf); +void write32_le(const int value, unsigned char *buffer); + +#if (CURL_SIZEOF_CURL_OFF_T > 4) +#if defined(HAVE_LONGLONG) +void write64_le(const long long value, unsigned char *buffer); +#else +void write64_le(const __int64 value, unsigned char *buffer); +#endif +#endif +  #endif /* HEADER_CURL_ENDIAN_H */ | 
