Lines Matching refs:cmsgh
2610 cmsg_min_space(struct msghdr *msg, struct cmsghdr *cmsgh, size_t space) in cmsg_min_space() argument
2614 sizeof(cmsgh->cmsg_len)); in cmsg_min_space()
2617 if (cmsgh == NULL || msg->msg_control == NULL) in cmsg_min_space()
2642 cmsg_offset = (char *)cmsgh - (char *)msg->msg_control; in cmsg_min_space()
2652 get_cmsg_data_space(struct msghdr *msg, struct cmsghdr *cmsgh, size_t *space) in get_cmsg_data_space() argument
2657 if ((data_ptr = (char *)CMSG_DATA(cmsgh)) == NULL) in get_cmsg_data_space()
2674 get_cmsg_data_len(struct msghdr *msg, struct cmsghdr *cmsgh, size_t *data_len) in get_cmsg_data_len() argument
2678 if (!cmsg_min_space(msg, cmsgh, CMSG_LEN(0)) || in get_cmsg_data_len()
2679 cmsgh->cmsg_len < CMSG_LEN(0)) in get_cmsg_data_len()
2681 cmsg_data_len = cmsgh->cmsg_len - CMSG_LEN(0); in get_cmsg_data_len()
2682 if (!get_cmsg_data_space(msg, cmsgh, &space)) in get_cmsg_data_len()
3864 struct cmsghdr *cmsgh; in sock_recvmsg_guts() local
3911 for (cmsgh = ((msg.msg_controllen > 0) ? CMSG_FIRSTHDR(&msg) : NULL); in sock_recvmsg_guts()
3912 cmsgh != NULL; cmsgh = CMSG_NXTHDR(&msg, cmsgh)) { in sock_recvmsg_guts()
3916 cmsg_status = get_cmsg_data_len(&msg, cmsgh, &cmsgdatalen); in sock_recvmsg_guts()
3930 bytes = PyBytes_FromStringAndSize((char *)CMSG_DATA(cmsgh), in sock_recvmsg_guts()
3932 tuple = Py_BuildValue("iiN", (int)cmsgh->cmsg_level, in sock_recvmsg_guts()
3933 (int)cmsgh->cmsg_type, bytes); in sock_recvmsg_guts()
3964 for (cmsgh = ((msg.msg_controllen > 0) ? CMSG_FIRSTHDR(&msg) : NULL); in sock_recvmsg_guts()
3965 cmsgh != NULL; cmsgh = CMSG_NXTHDR(&msg, cmsgh)) { in sock_recvmsg_guts()
3966 cmsg_status = get_cmsg_data_len(&msg, cmsgh, &cmsgdatalen); in sock_recvmsg_guts()
3969 if (cmsgh->cmsg_level == SOL_SOCKET && in sock_recvmsg_guts()
3970 cmsgh->cmsg_type == SCM_RIGHTS) { in sock_recvmsg_guts()
3975 fdp = (int *)CMSG_DATA(cmsgh); in sock_recvmsg_guts()
4566 struct cmsghdr *cmsgh = NULL; local
4589 cmsgh = (i == 0) ? CMSG_FIRSTHDR(&msg) : CMSG_NXTHDR(&msg, cmsgh);
4590 if (cmsgh == NULL) {
4601 if (cmsg_min_space(&msg, cmsgh, msg_len)) {
4604 cmsgh->cmsg_len = msg_len;
4605 if (get_cmsg_data_space(&msg, cmsgh, &space))
4614 cmsgh->cmsg_level = cmsgs[i].level;
4615 cmsgh->cmsg_type = cmsgs[i].type;
4616 memcpy(CMSG_DATA(cmsgh), cmsgs[i].data.buf, data_len);