qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] slirp: Use lduw_be_p in slirp_input


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [PATCH] slirp: Use lduw_be_p in slirp_input
Date: Wed, 26 Dec 2018 12:04:33 +0100

Le mer. 26 déc. 2018 04:43, Richard Henderson <address@hidden>
a écrit :

> The pointer may be unaligned, so we must use our routines for that.
> At the same time, we might as well use the big-endian version
> instead of ntohs.
>
> This fixes sparc64 host SIGBUS during pxe boot.
>
> Signed-off-by: Richard Henderson <address@hidden>
>

Reviewed-by: Philippe Mathieu-Daudé <address@hidden>

---
>  slirp/slirp.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/slirp/slirp.c b/slirp/slirp.c
> index 322edf51eb..a116f43878 100644
> --- a/slirp/slirp.c
> +++ b/slirp/slirp.c
> @@ -851,7 +851,7 @@ void slirp_input(Slirp *slirp, const uint8_t *pkt, int
> pkt_len)
>      if (pkt_len < ETH_HLEN)
>          return;
>
> -    proto = ntohs(*(uint16_t *)(pkt + 12));
> +    proto = lduw_be_p(pkt + 12);
>      switch(proto) {
>      case ETH_P_ARP:
>          arp_input(slirp, pkt, pkt_len);
> --
> 2.17.2
>
>
>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]