bcmudp.h 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /*
  2. * Fundamental constants relating to UDP Protocol
  3. *
  4. * Portions of this code are copyright (c) 2020 Cypress Semiconductor Corporation
  5. *
  6. * Copyright (C) 1999-2020, Broadcom Corporation
  7. *
  8. * Unless you and Broadcom execute a separate written software license
  9. * agreement governing use of this software, this software is licensed to you
  10. * under the terms of the GNU General Public License version 2 (the "GPL"),
  11. * available at http://www.broadcom.com/licenses/GPLv2.php, with the
  12. * following added to such license:
  13. *
  14. * As a special exception, the copyright holders of this software give you
  15. * permission to link this software with independent modules, and to copy and
  16. * distribute the resulting executable under terms of your choice, provided that
  17. * you also meet, for each linked independent module, the terms and conditions of
  18. * the license of that module. An independent module is a module which is not
  19. * derived from this software. The special exception does not apply to any
  20. * modifications of the software.
  21. *
  22. * Notwithstanding the above, under no circumstances may you combine this
  23. * software in any way with any other Broadcom software provided under a license
  24. * other than the GPL, without Broadcom's express prior written consent.
  25. *
  26. *
  27. * <<Broadcom-WL-IPTag/Open:>>
  28. *
  29. * $Id: bcmudp.h 681862 2018-01-03 12:34:14Z $
  30. */
  31. #ifndef _bcmudp_h_
  32. #define _bcmudp_h_
  33. #ifndef _TYPEDEFS_H_
  34. #include <typedefs.h>
  35. #endif // endif
  36. /* This marks the start of a packed structure section. */
  37. #include <packed_section_start.h>
  38. /* UDP header */
  39. #define UDP_DEST_PORT_OFFSET 2 /* UDP dest port offset */
  40. #define UDP_LEN_OFFSET 4 /* UDP length offset */
  41. #define UDP_CHKSUM_OFFSET 6 /* UDP body checksum offset */
  42. #define UDP_HDR_LEN 8 /* UDP header length */
  43. #define UDP_PORT_LEN 2 /* UDP port length */
  44. /* These fields are stored in network order */
  45. BWL_PRE_PACKED_STRUCT struct bcmudp_hdr
  46. {
  47. uint16 src_port; /* Source Port Address */
  48. uint16 dst_port; /* Destination Port Address */
  49. uint16 len; /* Number of bytes in datagram including header */
  50. uint16 chksum; /* entire datagram checksum with pseudoheader */
  51. } BWL_POST_PACKED_STRUCT;
  52. /* This marks the end of a packed structure section. */
  53. #include <packed_section_end.h>
  54. #endif /* #ifndef _bcmudp_h_ */