48 lines
1.3 KiB
C
48 lines
1.3 KiB
C
/*
|
|
* 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
|
|
*
|
|
*/
|
|
|
|
#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_ */
|