mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-12 08:27:24 +00:00
BUILD: fix build on Solaris 11
htonll()/ntohll() already exist on Solaris 11 with a different declaration, causing a build error as reported by Jonathan Fisher. They used to exist on OSX with a #define which allowed us to detect them. It was a bad idea to give these functions a name subject to conflicts like this. Simply rename them my_htonll()/my_ntohll() to definitely get rid of the conflict. This patch must be backported to 1.6.
This commit is contained in:
parent
f2ebcb47cb
commit
5f6e9054b9
@ -1048,8 +1048,7 @@ static inline unsigned char utf8_return_length(unsigned char code)
|
||||
* the whole code is optimized out. In little endian, with a decent compiler,
|
||||
* a few bswap and 2 shifts are left, which is the minimum acceptable.
|
||||
*/
|
||||
#ifndef htonll
|
||||
static inline unsigned long long htonll(unsigned long long a)
|
||||
static inline unsigned long long my_htonll(unsigned long long a)
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@ -1060,15 +1059,12 @@ static inline unsigned long long htonll(unsigned long long a)
|
||||
} w = { .by64 = a };
|
||||
return ((unsigned long long)htonl(w.by32.w1) << 32) | htonl(w.by32.w2);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Turns 64-bit value <a> from network byte order to host byte order. */
|
||||
#ifndef ntohll
|
||||
static inline unsigned long long ntohll(unsigned long long a)
|
||||
static inline unsigned long long my_ntohll(unsigned long long a)
|
||||
{
|
||||
return htonll(a);
|
||||
return my_htonll(a);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* returns a 64-bit a timestamp with the finest resolution available. The
|
||||
* unit is intentionally not specified. It's mostly used to compare dates.
|
||||
|
@ -765,7 +765,7 @@ static int c_int2bin(struct sample *smp)
|
||||
{
|
||||
struct chunk *chk = get_trash_chunk();
|
||||
|
||||
*(unsigned long long int *)chk->str = htonll(smp->data.u.sint);
|
||||
*(unsigned long long int *)chk->str = my_htonll(smp->data.u.sint);
|
||||
chk->len = 8;
|
||||
|
||||
smp->data.u.str = *chk;
|
||||
|
Loading…
Reference in New Issue
Block a user