mirror of
git://git.musl-libc.org/musl
synced 2024-12-24 23:52:48 +00:00
89511cd943
the affected part of the header is responsible for providing both GNU and BSD versions of the udphdr structure. previously, the namespace-polluting GNU names were always used for the actual struct members, and the BSD names, which are named in a manner resembling a sane namespace, were always macros defined to expand to the GNU names. now, unless _GNU_SOURCE is defined, the BSD names are used as the actual structure members, and the macros and GNU names only come into play when the application requests them.
39 lines
547 B
C
39 lines
547 B
C
#ifndef _NETINET_UDP_H
|
|
#define _NETINET_UDP_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <features.h>
|
|
#include <stdint.h>
|
|
|
|
#ifdef _GNU_SOURCE
|
|
#define uh_sport source
|
|
#define uh_dport dest
|
|
#define uh_ulen len
|
|
#define uh_sum check
|
|
#endif
|
|
|
|
struct udphdr {
|
|
uint16_t uh_sport;
|
|
uint16_t uh_dport;
|
|
uint16_t uh_ulen;
|
|
uint16_t uh_sum;
|
|
};
|
|
|
|
#define UDP_CORK 1
|
|
#define UDP_ENCAP 100
|
|
|
|
#define UDP_ENCAP_ESPINUDP_NON_IKE 1
|
|
#define UDP_ENCAP_ESPINUDP 2
|
|
#define UDP_ENCAP_L2TPINUDP 3
|
|
|
|
#define SOL_UDP 17
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|