Lines Matching refs:cmsg

228 	struct cmsghdr *cmsg;  in ca_write_cmsg_u32()  local
233 cmsg = (struct cmsghdr *)(cbuf + *cmsg_len); in ca_write_cmsg_u32()
238 cmsg->cmsg_level = level; in ca_write_cmsg_u32()
239 cmsg->cmsg_type = optname; in ca_write_cmsg_u32()
240 cmsg->cmsg_len = CMSG_LEN(sizeof(__u32)); in ca_write_cmsg_u32()
241 *(__u32 *)CMSG_DATA(cmsg) = uopt->val; in ca_write_cmsg_u32()
247 struct cmsghdr *cmsg; in cs_write_cmsg() local
269 cmsg = (struct cmsghdr *)(cbuf + cmsg_len); in cs_write_cmsg()
274 cmsg->cmsg_level = SOL_SOCKET; in cs_write_cmsg()
275 cmsg->cmsg_type = SCM_TXTIME; in cs_write_cmsg()
276 cmsg->cmsg_len = CMSG_LEN(sizeof(txtime)); in cs_write_cmsg()
277 memcpy(CMSG_DATA(cmsg), &txtime, sizeof(txtime)); in cs_write_cmsg()
280 cmsg = (struct cmsghdr *)(cbuf + cmsg_len); in cs_write_cmsg()
285 cmsg->cmsg_level = SOL_SOCKET; in cs_write_cmsg()
286 cmsg->cmsg_type = SO_TIMESTAMPING; in cs_write_cmsg()
287 cmsg->cmsg_len = CMSG_LEN(sizeof(__u32)); in cs_write_cmsg()
288 *(__u32 *)CMSG_DATA(cmsg) = SOF_TIMESTAMPING_TX_SCHED | in cs_write_cmsg()
292 cmsg = (struct cmsghdr *)(cbuf + cmsg_len); in cs_write_cmsg()
297 cmsg->cmsg_level = SOL_IPV6; in cs_write_cmsg()
298 cmsg->cmsg_type = opt.v6.exthdr.val; in cs_write_cmsg()
299 cmsg->cmsg_len = CMSG_LEN(8); in cs_write_cmsg()
300 *(__u64 *)CMSG_DATA(cmsg) = 0; in cs_write_cmsg()
328 struct cmsghdr *cmsg; in cs_read_cmsg() local
348 for (cmsg = CMSG_FIRSTHDR(msg); cmsg != NULL; in cs_read_cmsg()
349 cmsg = CMSG_NXTHDR(msg, cmsg)) { in cs_read_cmsg()
350 if (cmsg->cmsg_level == SOL_SOCKET && in cs_read_cmsg()
351 cmsg->cmsg_type == SO_TIMESTAMPING_OLD) { in cs_read_cmsg()
352 if (cmsg->cmsg_len < sizeof(*ts)) in cs_read_cmsg()
355 ts = (void *)CMSG_DATA(cmsg); in cs_read_cmsg()
357 if ((cmsg->cmsg_level == SOL_IP && in cs_read_cmsg()
358 cmsg->cmsg_type == IP_RECVERR) || in cs_read_cmsg()
359 (cmsg->cmsg_level == SOL_IPV6 && in cs_read_cmsg()
360 cmsg->cmsg_type == IPV6_RECVERR)) { in cs_read_cmsg()
361 if (cmsg->cmsg_len < sizeof(*see)) in cs_read_cmsg()
364 see = (void *)CMSG_DATA(cmsg); in cs_read_cmsg()