[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 30/64] slirp: replace HOST_WORDS_BIGENDIAN with glib
From: |
Samuel Thibault |
Subject: |
[Qemu-devel] [PULL 30/64] slirp: replace HOST_WORDS_BIGENDIAN with glib equivalent |
Date: |
Wed, 19 Dec 2018 00:04:08 +0100 |
From: Marc-André Lureau <address@hidden>
One more step towards making the project independent from QEMU.
Signed-off-by: Marc-André Lureau <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Daniel P. Berrangé <address@hidden>
Signed-off-by: Samuel Thibault <address@hidden>
---
slirp/ip.h | 8 +++++---
slirp/ip6.h | 3 ++-
slirp/ip6_icmp.h | 6 +++---
slirp/slirp_config.h | 3 ---
slirp/tcp.h | 4 +++-
5 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/slirp/ip.h b/slirp/ip.h
index 59cf4aa918..83fc9cdfbf 100644
--- a/slirp/ip.h
+++ b/slirp/ip.h
@@ -33,7 +33,9 @@
#ifndef IP_H
#define IP_H
-#ifdef HOST_WORDS_BIGENDIAN
+#include <glib.h>
+
+#if G_BYTE_ORDER == G_BIG_ENDIAN
# undef NTOHL
# undef NTOHS
# undef HTONL
@@ -69,7 +71,7 @@ typedef uint32_t n_long; /* long as received
from the net */
* Structure of an internet header, naked of options.
*/
struct ip {
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint8_t ip_v:4, /* version */
ip_hl:4; /* header length */
#else
@@ -135,7 +137,7 @@ struct ip_timestamp {
uint8_t ipt_code; /* IPOPT_TS */
uint8_t ipt_len; /* size of structure (variable) */
uint8_t ipt_ptr; /* index of current entry */
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint8_t ipt_oflw:4, /* overflow counter */
ipt_flg:4; /* flags, see below */
#else
diff --git a/slirp/ip6.h b/slirp/ip6.h
index b1bea43b3c..14e9c78735 100644
--- a/slirp/ip6.h
+++ b/slirp/ip6.h
@@ -6,6 +6,7 @@
#ifndef SLIRP_IP6_H
#define SLIRP_IP6_H
+#include <glib.h>
#include "net/eth.h"
#define ALLNODES_MULTICAST { .s6_addr = \
@@ -113,7 +114,7 @@ static inline void in6_compute_ethaddr(struct in6_addr ip,
* Structure of an internet header, naked of options.
*/
struct ip6 {
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint32_t
ip_v:4, /* version */
ip_tc_hi:4, /* traffic class */
diff --git a/slirp/ip6_icmp.h b/slirp/ip6_icmp.h
index b3378b17b5..32b0914055 100644
--- a/slirp/ip6_icmp.h
+++ b/slirp/ip6_icmp.h
@@ -34,7 +34,7 @@ struct ndp_rs { /* Router Solicitation Message */
struct ndp_ra { /* Router Advertisement Message */
uint8_t chl; /* Cur Hop Limit */
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint8_t
M:1,
O:1,
@@ -56,7 +56,7 @@ struct ndp_ns { /* Neighbor Solicitation Message */
} QEMU_PACKED;
struct ndp_na { /* Neighbor Advertisement Message */
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint32_t
R:1, /* Router Flag */
S:1, /* Solicited Flag */
@@ -125,7 +125,7 @@ struct ndpopt {
#define ndpopt_linklayer ndpopt_body.linklayer_addr
struct prefixinfo { /* Prefix Information */
uint8_t prefix_length;
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint8_t L:1, A:1, reserved1:6;
#else
uint8_t reserved1:6, A:1, L:1;
diff --git a/slirp/slirp_config.h b/slirp/slirp_config.h
index 5126711849..b2def6d20c 100644
--- a/slirp/slirp_config.h
+++ b/slirp/slirp_config.h
@@ -11,8 +11,5 @@
* You shouldn't need to touch any of these
*/
-/* Define if the machine is big endian */
-//#undef HOST_WORDS_BIGENDIAN
-
/* Define to sizeof(char *) */
#define SIZEOF_CHAR_P (HOST_LONG_BITS / 8)
diff --git a/slirp/tcp.h b/slirp/tcp.h
index 174d3d960c..47aaea6c5b 100644
--- a/slirp/tcp.h
+++ b/slirp/tcp.h
@@ -33,6 +33,8 @@
#ifndef TCP_H
#define TCP_H
+#include <glib.h>
+
typedef uint32_t tcp_seq;
#define PR_SLOWHZ 2 /* 2 slow timeouts per second
(approx) */
@@ -51,7 +53,7 @@ struct tcphdr {
uint16_t th_dport; /* destination port */
tcp_seq th_seq; /* sequence number */
tcp_seq th_ack; /* acknowledgement number */
-#ifdef HOST_WORDS_BIGENDIAN
+#if G_BYTE_ORDER == G_BIG_ENDIAN
uint8_t th_off:4, /* data offset */
th_x2:4; /* (unused) */
#else
--
2.19.2
- [Qemu-devel] [PULL 06/64] slirp: rename /extra/chardev, (continued)
- [Qemu-devel] [PULL 06/64] slirp: rename /extra/chardev, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 18/64] slirp: remove the disabled readv()/writev() code path, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 17/64] slirp: remove FULL_BOLT, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 29/64] slirp: remove unused HAVE_INET_ATON, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 23/64] slirp: remove unused HAVE_ARPA_INET_H, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 16/64] slirp: remove PROBE_CONN dead-code, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 10/64] slirp: replace the poor-man string split with g_strsplit(), Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 08/64] slirp: remove Monitor dependency, return a string for info, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 21/64] slirp: remove NO_UNIX_SOCKETS, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 36/64] slirp: add a callback to log guest errors, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 30/64] slirp: replace HOST_WORDS_BIGENDIAN with glib equivalent,
Samuel Thibault <=
- [Qemu-devel] [PULL 26/64] slirp: remove HAVE_SYS_IOCTL_H, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 33/64] slirp: remove unused global slirp_instance, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 42/64] net: do not depend on slirp internals, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 34/64] slirp: replace error_report() with g_critical(), Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 27/64] slirp: remove HAVE_SYS_FILIO_H, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 25/64] slirp: remove unused HAVE_SYS_SELECT_H, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 22/64] slirp: remove unused HAVE_SYS_STROPTS_H, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 38/64] slirp: remove unused sbflush(), Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 31/64] slirp: replace SIZEOF_CHAR_P with glib equivalent, Samuel Thibault, 2018/12/18
- [Qemu-devel] [PULL 43/64] glib-compat: add g_spawn_async_with_fds() fallback, Samuel Thibault, 2018/12/18