CMSG_SPACE
if (msgControlLen < CMSG_SPACE(sizeof(struct in_addr)))
bytesWritten += CMSG_SPACE(sizeof(struct in_addr));
if (msgControlLen < CMSG_SPACE(sizeof(int)))
bytesWritten += CMSG_SPACE(sizeof(int));
msgControlLen -= CMSG_SPACE(sizeof(int));
if (msgControlLen < CMSG_SPACE(sizeof(struct in6_pktinfo)))
bytesWritten += CMSG_SPACE(sizeof(struct in6_pktinfo));
msgControlLen -= CMSG_SPACE(sizeof(struct in6_pktinfo));
size_t neededBufferSpace = CMSG_SPACE(sizeof(int) * totalCount);
char ctrl[CMSG_SPACE(sizeof(struct timespec))];
if (bufsize < (extlen + CMSG_SPACE(0))) {
extlen = bufsize - CMSG_SPACE(0);
if (bufsize < (rthsize + CMSG_SPACE(0))) {
segments -= (rthsize - (bufsize - CMSG_SPACE(0))) /
rthlen = CMSG_SPACE(inet6_rth_space(IPV6_RTHDR_TYPE_0,
ip6optlen += CMSG_SPACE(sizeof(struct in6_pktinfo));
ip6optlen += CMSG_SPACE(sizeof(int));
if (*lenp < (int)CMSG_SPACE(sizeof(struct ip6_rthdr) +
rcvcmsglen = CMSG_SPACE(sizeof(struct in6_pktinfo)) +
CMSG_SPACE(sizeof(int));
char buf[CMSG_SPACE(sizeof(fd))];