qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 01/18] slirp: goto bad in udp_input if sosendto


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH 01/18] slirp: goto bad in udp_input if sosendto fails
Date: Fri, 11 Dec 2015 12:54:14 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0

On 11/12/15 01:15, Samuel Thibault wrote:
> From: Guillaume Subiron <address@hidden>
> 
> Before this patch, if sosendto fails, udp_input is executed as if the
> packet was sent, recording the packet for icmp errors, which does not
> makes sense since the packet was not actually sent, errors would be
> related to a previous packet.
> 
> This patch adds a goto bad to cut the execution of this function.
> 
> Signed-off-by: Guillaume Subiron <address@hidden>
> Signed-off-by: Samuel Thibault <address@hidden>
> ---
>  slirp/debug.h | 2 +-
>  slirp/udp.c   | 1 +
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/slirp/debug.h b/slirp/debug.h
> index 6cfa61e..c60f967 100644
> --- a/slirp/debug.h
> +++ b/slirp/debug.h
> @@ -5,7 +5,7 @@
>   * terms and conditions of the copyright.
>   */
>  
> -//#define DEBUG 1
> +#define DEBUG 1

Please don't enable the debug code by default.

> diff --git a/slirp/udp.c b/slirp/udp.c
> index fee13b4..ce63414 100644
> --- a/slirp/udp.c
> +++ b/slirp/udp.c
> @@ -218,6 +218,7 @@ udp_input(register struct mbuf *m, int iphlen)
>         *ip=save_ip;
>         DEBUG_MISC((dfd,"udp tx errno = %d-%s\n",errno,strerror(errno)));
>         icmp_error(m, ICMP_UNREACH,ICMP_UNREACH_NET, 0,strerror(errno));
> +       goto bad;
>       }
>  
>       m_free(so->so_m);   /* used for ICMP if error on sorecvfrom */

That change looks sane to me.

 Thomas




reply via email to

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