diff options
author | Rich Felker <dalias@aerifal.cx> | 2014-02-05 17:25:39 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2014-02-05 17:25:39 -0500 |
commit | 89511cd943d807b7fe31b61c06d4fe09888b8e9a (patch) | |
tree | 38e095e38d868ab6c76faac4e304d1908e715602 | |
parent | 685b1cd4a0d1a890c55f9481b67e33e51412babb (diff) | |
download | musl-89511cd943d807b7fe31b61c06d4fe09888b8e9a.tar.gz musl-89511cd943d807b7fe31b61c06d4fe09888b8e9a.tar.xz musl-89511cd943d807b7fe31b61c06d4fe09888b8e9a.zip |
reduce namespace pollution in netinet/udp.h
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.
-rw-r--r-- | include/netinet/udp.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/include/netinet/udp.h b/include/netinet/udp.h index 15b91454..b1b0eb81 100644 --- a/include/netinet/udp.h +++ b/include/netinet/udp.h @@ -5,19 +5,22 @@ extern "C" { #endif +#include <features.h> #include <stdint.h> -struct udphdr { - uint16_t source; - uint16_t dest; - uint16_t len; - uint16_t check; -}; - +#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 |