1 /* 2 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 3 * Use is subject to license terms. 4 */ 5 6 /* 7 * Copyright (c) 1982, 1986 Regents of the University of California. 8 * All rights reserved. The Berkeley software License Agreement 9 * specifies the terms and conditions for redistribution. 10 */ 11 12 /* 13 * Udp protocol header. 14 * Per RFC 768, September, 1981. 15 */ 16 17 #ifndef _NETINET_UDP_H 18 #define _NETINET_UDP_H 19 20 #pragma ident "%Z%%M% %I% %E% SMI" 21 /* udp.h 1.7 88/08/19 SMI; from UCB 7.1 6/5/86 */ 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 struct udphdr { 28 in_port_t uh_sport; /* source port */ 29 in_port_t uh_dport; /* destination port */ 30 int16_t uh_ulen; /* udp length */ 31 uint16_t uh_sum; /* udp checksum */ 32 }; 33 34 /* Option definitions. */ 35 #define UDP_ANONPRIVBIND 0x0100 /* for internal use only */ 36 #define UDP_EXCLBIND 0x0101 /* for internal use only */ 37 #define UDP_RCVHDR 0x0102 /* for internal use only */ 38 #define UDP_NAT_T_ENDPOINT 0x0103 /* for internal use only */ 39 /* 40 * Following option in UDP_ namespace required to be exposed through 41 * <xti.h> (It also requires exposing options not implemented). The options 42 * with potential for conflicts use #ifndef guards. 43 * 44 */ 45 #ifndef UDP_CHECKSUM 46 #define UDP_CHECKSUM 0x0600 47 #endif 48 49 #ifdef __cplusplus 50 } 51 #endif 52 53 #endif /* _NETINET_UDP_H */ 54