endian: Added 16-bit integer write function

This commit is contained in:
Steve Holme 2014-12-31 15:58:07 +00:00
parent b40e37f93d
commit 5eae12fc80
2 changed files with 20 additions and 0 deletions

View File

@ -62,6 +62,23 @@ unsigned int Curl_read32_le(unsigned char *buf)
((unsigned int)buf[2] << 16) | ((unsigned int)buf[3] << 24);
}
/*
* Curl_write16_le()
*
* This function converts a 16-bit integer from the native endian format,
* to little endian format ready for sending down the wire.
*
* Parameters:
*
* value [in] - The 16-bit integer value.
* buffer [in] - A pointer to the output buffer.
*/
void Curl_write16_le(const short value, unsigned char *buffer)
{
buffer[0] = (char)(value & 0x00FF);
buffer[1] = (char)((value & 0xFF00) >> 8);
}
/*
* Curl_write32_le()
*

View File

@ -28,6 +28,9 @@ unsigned short Curl_read16_le(unsigned char *buf);
/* Converts a 32-bit integer from little endian */
unsigned int Curl_read32_le(unsigned char *buf);
/* Converts a 16-bit integer to little endian */
void Curl_write16_le(const short value, unsigned char *buffer);
/* Converts a 32-bit integer to little endian */
void Curl_write32_le(const int value, unsigned char *buffer);