November 18, 2014
https://issues.dlang.org/show_bug.cgi?id=13747

          Issue ID: 13747
           Summary: Linux CMSG_NXTHDR is private
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: druntime
          Assignee: nobody@puremagic.com
          Reporter: redballoon36@gmail.com

CMSG_NXTHDR on Linux is defined as a macro wrapping the __csmg_nxthdr function.

The translation to D in core.sys.posix.sys.socket.d has an extern __cmsg_nxthdr() function, which is private.  This is "exposed" using an alias, CMSG_NXTHDR.  But since the alias doesn't change the protection, so CMSG_NXTHDR is not usable.

I'm putting together a pull request for a bunch of CMSG changes & fixes, but I don't know what the right way to fix this part is.

--