Home | History | Annotate | Download | only in netbsd32

Lines Matching refs:cmsg

57 #define	CMSG32_DATA(cmsg) (__CASTV(u_char *, cmsg) + CMSG32_ASIZE)
80 struct cmsghdr *cmsg, cmsg32;
85 cmsg = mtod(m, struct cmsghdr *);
87 if ((char *)cmsg == mtod(m, char *) + m->m_len)
89 if ((char *)cmsg > mtod(m, char *) + m->m_len - sizeof(*cmsg))
91 cmsg32 = *cmsg;
92 j = cmsg->cmsg_len - CMSG_LEN(0);
96 if (cmsg->cmsg_level == SOL_SOCKET
97 && cmsg->cmsg_type == SCM_RIGHTS) {
105 ktrkuser(mbuftypes[MT_CONTROL], cmsg, cmsg->cmsg_len);
110 error = copyout(CMSG_DATA(cmsg), *q + CMSG32_LEN(0),
115 j = CMSG32_SPACE(cmsg->cmsg_len - CMSG_LEN(0));
123 cmsg = (void *)((char *)cmsg + CMSG_ALIGN(cmsg->cmsg_len));
383 * Handle cmsg if there is any.
385 struct cmsghdr *cmsg, cmsg32, *cc;
443 cmsg = (void *)&control[cidx];
444 cmsg->cmsg_len = CMSG_LEN(cmsg32.cmsg_len - CMSG32_LEN(0));
445 cmsg->cmsg_level = cmsg32.cmsg_level;
446 cmsg->cmsg_type = cmsg32.cmsg_type;
449 error = copyin(CMSG32_DATA(cc), CMSG_DATA(cmsg),
453 ktrkuser(mbuftypes[MT_CONTROL], cmsg, cmsg->cmsg_len);
456 cidx += CMSG_ALIGN(cmsg->cmsg_len);