IEEE Std 1003.1-2008의 <sys/socket.h>
섹션은 CMSG_SPACE 또는 CMSG_LEN 매크로를 제공하고, 대신에 단지 말한다 않는다 :보조 데이터를 이동 가능하게 할당 할 수 있습니까?
보조 데이터 쌍의 시퀀스로 구성되어, 각각의 데이터 배열에 따르는 오는 cmsghdr 구조 이루어지는.
CMSG_SPACE없이 보조 데이터를 할당하거나 CMSG_LEN없이 메시지에 보조 데이터를 첨부 할 수있는 유용한 방법이 있습니까? 이 인용문은 크기가 (sizeof(struct cmsghdr)+ sizeof data)*nr_of_pairs
인 단일 버퍼 (데이터가 한 쌍당 변경 될 수 있음)가 각각 cmgshdr.cmsglen = sizeof(struct cmsghdr) + sizeof data
및 msg.msg_controllen = (sizeof(struct cmsghdr)+ sizeof data)*nr_of_pairs
인 것을 나타내지 만 CMSG_SPACE/CMSG_LEN에 대한 시스템 관련 설명서는 모두 정렬 문제가 있음을 나타냅니다. 이 방법으로 얻을 수 있습니다.