[U-Boot] [RFC PATCH v2 05/11] net: add definition of udp_hdr

Joe Hershberger joe.hershberger at gmail.com
Tue Nov 24 02:06:22 CET 2015


On Mon, Nov 9, 2015 at 1:38 AM, Chris Packham <judge.packham at gmail.com> wrote:
> UDP is the same over IPv4 as it is over other protocols (i.e. IPv6) add
> a definition of just the UDP header independent of the IPv4 header that
> it may or may not be combined with.
>
> Signed-off-by: Chris Packham <judge.packham at gmail.com>
> ---
> Ideally struct ip_udp_hdr would be defined as
>
>   struct ip_udp_hdr {
>           struct ip_hdr  ip;
>           struct udp_hdr udp;
>   };
>
> Implementing this touches more code that I really want to at this
> point. Some of the code that currently uses struct ip_udp_hdr could
> probably just use struct ip_hdr instead but some care would need to be
> taken to much such a change.

Sounds reasonable.

> Changes in v2: None
>
>  include/net.h | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/include/net.h b/include/net.h
> index ebed29a..e8bd2b7 100644
> --- a/include/net.h
> +++ b/include/net.h
> @@ -348,6 +348,18 @@ struct ip_hdr {
>  #define IP_HDR_SIZE            (sizeof(struct ip_hdr))
>
>  /*
> + *     UDP header.
> + */
> +struct udp_hdr {
> +       __be16          udp_src;        /* UDP source port              */
> +       __be16          udp_dst;        /* UDP destination port         */
> +       __be16          udp_len;        /* Length of UDP packet         */
> +       __be16          udp_xsum;       /* Checksum                     */
> +};
> +
> +#define UDP_HDR_SIZE           (sizeof(struct udp_hdr))
> +
> +/*
>   *     Internet Protocol (IP) + UDP header.
>   */
>  struct ip_udp_hdr {
> @@ -368,7 +380,6 @@ struct ip_udp_hdr {
>  };
>
>  #define IP_UDP_HDR_SIZE                (sizeof(struct ip_udp_hdr))
> -#define UDP_HDR_SIZE           (IP_UDP_HDR_SIZE - IP_HDR_SIZE)
>
>  /*
>   *     Address Resolution Protocol (ARP) header.
> --
> 2.5.3
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list