Under FreeBSD, defining _POSIX_C_SOURCE causes __BSD_VISIBLE, __XSI_VISIBLE, __POSIX_VISIBLE, and _POSIX_SOURCE to be set such that various important bits are not available. This includes the macros IN_MULTICAST, MSG_DONTWAIT, and M_PI, and the struct sigaction. The FreeBSD man page standards(5) describes this in much detail, but what it comes down to is that for relatively normal code that macro shouldn't be defined at all.
Seems plausible that this applies to Net and OpenBSD as well, but TBD.
Under FreeBSD, defining
_POSIX_C_SOURCE
causes__BSD_VISIBLE
,__XSI_VISIBLE
,__POSIX_VISIBLE
, and_POSIX_SOURCE
to be set such that various important bits are not available. This includes the macrosIN_MULTICAST
,MSG_DONTWAIT
, andM_PI
, and the structsigaction
. The FreeBSD man pagestandards(5)
describes this in much detail, but what it comes down to is that for relatively normal code that macro shouldn't be defined at all.Seems plausible that this applies to Net and OpenBSD as well, but TBD.