mirror of
https://git.musl-libc.org/git/musl
synced 2025-01-23 14:42:07 +03:00
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.
This commit is contained in:
parent
685b1cd4a0
commit
89511cd943
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user