@@ -74,6 +74,7 @@ struct type_descriptor {
74
74
};
75
75
76
76
#if _WIN32
77
+ #include <basetsd.h>
77
78
typedef SSIZE_T ssize_t ;
78
79
#define strncasecmp (s1 , s2 , n ) _strnicmp(s1, s2, n)
79
80
#else
@@ -121,7 +122,7 @@ static zone_really_inline ssize_t check_ttl(
121
122
SYNTAX_ERROR (parser , "Missing %s in %s" , NAME (field ), TNAME (type ));
122
123
123
124
memcpy (& number , data , sizeof (number ));
124
- number = ntohl (number );
125
+ number = be32toh (number );
125
126
126
127
if (number > INT32_MAX )
127
128
SEMANTIC_ERROR (parser , "Invalid %s in %s" , NAME (field ), TNAME (type ));
@@ -996,9 +997,9 @@ static int32_t parse_loc_rdata(
996
997
return result ;
997
998
north_south :
998
999
if (token -> data [0 ] == 'N' )
999
- latitude = htonl ((1u <<31 ) + degrees );
1000
+ latitude = htobe32 ((1u <<31 ) + degrees );
1000
1001
else if (token -> data [1 ] == 'S' )
1001
- latitude = htonl ((1u <<31 ) - degrees );
1002
+ latitude = htobe32 ((1u <<31 ) - degrees );
1002
1003
else
1003
1004
SYNTAX_ERROR (parser , "Invalid %s in %s" , NAME (& fields [4 ]), TNAME (type ));
1004
1005
@@ -1024,9 +1025,9 @@ static int32_t parse_loc_rdata(
1024
1025
return result ;
1025
1026
east_west :
1026
1027
if (token -> data [0 ] == 'E' )
1027
- longitude = htonl ((1u <<31 ) + degrees );
1028
+ longitude = htobe32 ((1u <<31 ) + degrees );
1028
1029
else if (token -> data [0 ] == 'W' )
1029
- longitude = htonl ((1u <<31 ) - degrees );
1030
+ longitude = htobe32 ((1u <<31 ) - degrees );
1030
1031
else
1031
1032
SYNTAX_ERROR (parser , "Invalid %s in %s" , NAME (& fields [5 ]), TNAME (type ));
1032
1033
@@ -1039,7 +1040,7 @@ static int32_t parse_loc_rdata(
1039
1040
if (scan_altitude (token -> data , token -> length , & altitude ) == -1 )
1040
1041
SYNTAX_ERROR (parser , "Invalid %s in %s" , NAME (& fields [6 ]), TNAME (type ));
1041
1042
1042
- altitude = htonl (altitude );
1043
+ altitude = htobe32 (altitude );
1043
1044
memcpy (& parser -> rdata -> octets [12 ], & altitude , sizeof (altitude ));
1044
1045
1045
1046
// size
@@ -1827,7 +1828,7 @@ static int32_t parse_hip_rdata(
1827
1828
1828
1829
if (parser -> rdata -> length > 65535u + 4u + hit_length )
1829
1830
SYNTAX_ERROR (parser , "Invalid %s in %s" , NAME (& type -> rdata .fields [4 ]), TNAME (type ));
1830
- uint16_t pk_length = htons ((uint16_t )((parser -> rdata -> length - hit_length ) - 4 ));
1831
+ uint16_t pk_length = htobe16 ((uint16_t )((parser -> rdata -> length - hit_length ) - 4 ));
1831
1832
memcpy (& parser -> rdata -> octets [2 ], & pk_length , sizeof (pk_length ));
1832
1833
1833
1834
lex (parser , token );
0 commit comments