Lines Matching refs:cmsg
126 inet6_option_append(struct cmsghdr *cmsg, const uint8_t *typep, int multx,
133 _DIAGASSERT(cmsg != NULL);
136 bp = (uint8_t *)(void *)cmsg + cmsg->cmsg_len;
137 eh = (struct ip6_ext *)(void *)CMSG_DATA(cmsg);
152 cmsg->cmsg_len += 2;
163 _DIAGASSERT(__type_fit(socklen_t, padlen + cmsg->cmsg_len));
164 cmsg->cmsg_len += (socklen_t)padlen;
174 _DIAGASSERT(__type_fit(socklen_t, optlen + cmsg->cmsg_len));
175 cmsg->cmsg_len += (socklen_t)optlen;
182 _DIAGASSERT(__type_fit(socklen_t, padlen + cmsg->cmsg_len));
183 cmsg->cmsg_len += (socklen_t)padlen;
207 inet6_option_alloc(struct cmsghdr *cmsg, int datalen, int multx, int plusy)
214 _DIAGASSERT(cmsg != NULL);
216 bp = (uint8_t *)(void *)cmsg + cmsg->cmsg_len;
217 eh = (struct ip6_ext *)(void *)CMSG_DATA(cmsg);
232 cmsg->cmsg_len += 2;
243 cmsg->cmsg_len += (socklen_t)padlen;
249 cmsg->cmsg_len += datalen;
256 _DIAGASSERT(__type_fit(socklen_t, padlen + cmsg->cmsg_len));
257 cmsg->cmsg_len += (socklen_t)padlen;
278 inet6_option_next(const struct cmsghdr *cmsg, uint8_t **tptrp)
284 _DIAGASSERT(cmsg != NULL);
287 if (cmsg->cmsg_level != IPPROTO_IPV6 ||
288 (cmsg->cmsg_type != IPV6_HOPOPTS &&
289 cmsg->cmsg_type != IPV6_DSTOPTS))
293 if (cmsg->cmsg_len < CMSG_SPACE(sizeof(struct ip6_ext)))
295 ip6e = __UNCONST(CCMSG_DATA(cmsg));
297 if (cmsg->cmsg_len < CMSG_SPACE(hdrlen))
320 * cmsg data.
337 inet6_option_find(const struct cmsghdr *cmsg, uint8_t **tptrp, int type)
343 _DIAGASSERT(cmsg != NULL);
346 if (cmsg->cmsg_level != IPPROTO_IPV6 ||
347 (cmsg->cmsg_type != IPV6_HOPOPTS &&
348 cmsg->cmsg_type != IPV6_DSTOPTS))
352 if (cmsg->cmsg_len < CMSG_SPACE(sizeof(struct ip6_ext)))
354 ip6e = __UNCONST(CCMSG_DATA(cmsg));
356 if (cmsg->cmsg_len < CMSG_SPACE(hdrlen))