/* * Copyright 2007, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; * the contents of this file may not be disclosed to third parties, copied * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * * Fundamental constants relating to UDP Protocol * * $Id: bcmudp.h,v 1.1.1.1 2007/05/31 08:00:41 michael Exp $ */ #ifndef _bcmudp_h_ #define _bcmudp_h_ /* enable structure packing */ #if defined(__GNUC__) #define PACKED __attribute__((packed)) #else #pragma pack(1) #define PACKED #endif /* UDP header */ #define UDP_DEST_PORT_OFFSET 2 /* UDP dest port offset */ #define UDP_LEN_OFFSET 4 /* UDP length offset */ #define UDP_CHKSUM_OFFSET 6 /* UDP body checksum offset */ #define UDP_HDR_LEN 8 /* UDP header length */ #define UDP_PORT_LEN 2 /* UDP port length */ /* These fields are stored in network order */ struct bcmudp_hdr { uint16 src_port; /* Source Port Address */ uint16 dst_port; /* Destination Port Address */ uint16 len; /* Number of bytes in datagram including header */ uint16 chksum; /* entire datagram checksum with pseudoheader */ } PACKED; #undef PACKED #if !defined(__GNUC__) #pragma pack() #endif #endif /* #ifndef _bcmudp_h_ */