Home
last modified time | relevance | path

Searched refs:cmsg (Results 1 – 25 of 45) sorted by relevance

12

/Linux-v5.10/drivers/isdn/capi/
Dcapiutil.c231 #define TYP (cdef[cmsg->par[cmsg->p]].typ)
232 #define OFF (((u8 *)cmsg) + cdef[cmsg->par[cmsg->p]].off)
234 static void jumpcstruct(_cmsg *cmsg) in jumpcstruct() argument
237 for (cmsg->p++, layer = 1; layer;) { in jumpcstruct()
239 cmsg->p++; in jumpcstruct()
464 #define NAME (pnames[cmsg->par[cmsg->p]])
466 static _cdebbuf *protocol_message_2_pars(_cdebbuf *cdb, _cmsg *cmsg, int level) in protocol_message_2_pars() argument
468 if (!cmsg->par) in protocol_message_2_pars()
471 for (; TYP != _CEND; cmsg->p++) { in protocol_message_2_pars()
483 cdb = bufprint(cdb, "%-*s = 0x%x\n", slen, NAME, *(u8 *) (cmsg->m + cmsg->l)); in protocol_message_2_pars()
[all …]
/Linux-v5.10/tools/testing/selftests/android/ion/
Dipcsocket.c110 struct cmsghdr *cmsg; in sendtosocket() local
144 cmsg = CMSG_FIRSTHDR(&msgh); in sendtosocket()
145 cmsg->cmsg_level = SOL_SOCKET; in sendtosocket()
146 cmsg->cmsg_type = SCM_RIGHTS; in sendtosocket()
147 cmsg->cmsg_len = CMSG_LEN(len); in sendtosocket()
148 memcpy(CMSG_DATA(cmsg), &buffd, len); in sendtosocket()
166 struct cmsghdr *cmsg; in receivefromsocket() local
197 cmsg = CMSG_FIRSTHDR(&msgh); in receivefromsocket()
198 cmsg->cmsg_level = SOL_SOCKET; in receivefromsocket()
199 cmsg->cmsg_type = SCM_RIGHTS; in receivefromsocket()
[all …]
/Linux-v5.10/tools/testing/selftests/net/
Dudpgso_bench_tx.c138 static void flush_cmsg(struct cmsghdr *cmsg) in flush_cmsg() argument
146 switch (cmsg->cmsg_level) { in flush_cmsg()
148 if (cmsg->cmsg_type == SO_TIMESTAMPING) { in flush_cmsg()
150 tss = (struct scm_timestamping *)CMSG_DATA(cmsg); in flush_cmsg()
155 cmsg->cmsg_type); in flush_cmsg()
160 switch (cmsg->cmsg_type) { in flush_cmsg()
164 err = (struct sock_extended_err *)CMSG_DATA(cmsg); in flush_cmsg()
199 cmsg->cmsg_type); in flush_cmsg()
205 cmsg->cmsg_level); in flush_cmsg()
215 struct cmsghdr *cmsg; in flush_errqueue_recv() local
[all …]
Dtimestamping.c140 struct cmsghdr *cmsg; in printpacket() local
153 for (cmsg = CMSG_FIRSTHDR(msg); in printpacket()
154 cmsg; in printpacket()
155 cmsg = CMSG_NXTHDR(msg, cmsg)) { in printpacket()
156 printf(" cmsg len %zu: ", cmsg->cmsg_len); in printpacket()
157 switch (cmsg->cmsg_level) { in printpacket()
160 switch (cmsg->cmsg_type) { in printpacket()
163 (struct timeval *)CMSG_DATA(cmsg); in printpacket()
171 (struct timespec *)CMSG_DATA(cmsg); in printpacket()
179 (struct timespec *)CMSG_DATA(cmsg); in printpacket()
[all …]
Drxtimestamp.c183 struct cmsghdr *cmsg; in do_recv() local
207 for (cmsg = CMSG_FIRSTHDR(&hdr); cmsg != NULL; in do_recv()
208 cmsg = CMSG_NXTHDR(&hdr, cmsg)) { in do_recv()
209 if (cmsg->cmsg_level != SOL_SOCKET) in do_recv()
211 cmsg->cmsg_level); in do_recv()
212 switch (cmsg->cmsg_type) { in do_recv()
220 ts = (struct scm_timestamping *)CMSG_DATA(cmsg); in do_recv()
227 error(1, 0, "Unexpected cmsg_type %d", cmsg->cmsg_type); in do_recv()
Dudpgso_bench_rx.c220 struct cmsghdr *cmsg; in recv_msg() local
236 for (cmsg = CMSG_FIRSTHDR(&msg); cmsg != NULL; in recv_msg()
237 cmsg = CMSG_NXTHDR(&msg, cmsg)) { in recv_msg()
238 if (cmsg->cmsg_level == SOL_UDP in recv_msg()
239 && cmsg->cmsg_type == UDP_GRO) { in recv_msg()
240 gsosizeptr = (uint16_t *) CMSG_DATA(cmsg); in recv_msg()
Dmsg_zerocopy.c363 struct cmsghdr *cmsg; in do_recvmsg_completion() local
377 for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) { in do_recvmsg_completion()
378 if (cmsg->cmsg_level == SOL_RDS && in do_recvmsg_completion()
379 cmsg->cmsg_type == RDS_CMSG_ZCOPY_COMPLETION) { in do_recvmsg_completion()
381 ck = (struct rds_zcopy_cookies *)CMSG_DATA(cmsg); in do_recvmsg_completion()
387 cmsg->cmsg_level, cmsg->cmsg_type); in do_recvmsg_completion()
Dtls.c1119 struct cmsghdr *cmsg; in TEST_F() local
1132 cmsg = CMSG_FIRSTHDR(&msg); in TEST_F()
1133 cmsg->cmsg_level = SOL_TLS; in TEST_F()
1135 cmsg->cmsg_type = TLS_SET_RECORD_TYPE; in TEST_F()
1136 cmsg->cmsg_len = CMSG_LEN(cmsg_len); in TEST_F()
1137 *CMSG_DATA(cmsg) = record_type; in TEST_F()
1138 msg.msg_controllen = cmsg->cmsg_len; in TEST_F()
1147 cmsg = CMSG_FIRSTHDR(&msg); in TEST_F()
1148 EXPECT_NE(cmsg, NULL); in TEST_F()
1149 EXPECT_EQ(cmsg->cmsg_level, SOL_TLS); in TEST_F()
[all …]
/Linux-v5.10/include/linux/
Dsocket.h103 #define __CMSG_NXTHDR(ctl, len, cmsg) __cmsg_nxthdr((ctl),(len),(cmsg)) argument
104 #define CMSG_NXTHDR(mhdr, cmsg) cmsg_nxthdr((mhdr), (cmsg)) argument
108 #define CMSG_DATA(cmsg) \ argument
109 ((void *)(cmsg) + sizeof(struct cmsghdr))
110 #define CMSG_USER_DATA(cmsg) \ argument
111 ((void __user *)(cmsg) + sizeof(struct cmsghdr))
119 #define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) && \ argument
120 (cmsg)->cmsg_len <= (unsigned long) \
122 ((char *)(cmsg) - (char *)(mhdr)->msg_control)))
123 #define for_each_cmsghdr(cmsg, msg) \ argument
[all …]
/Linux-v5.10/tools/perf/trace/beauty/include/linux/
Dsocket.h103 #define __CMSG_NXTHDR(ctl, len, cmsg) __cmsg_nxthdr((ctl),(len),(cmsg)) argument
104 #define CMSG_NXTHDR(mhdr, cmsg) cmsg_nxthdr((mhdr), (cmsg)) argument
108 #define CMSG_DATA(cmsg) \ argument
109 ((void *)(cmsg) + sizeof(struct cmsghdr))
110 #define CMSG_USER_DATA(cmsg) \ argument
111 ((void __user *)(cmsg) + sizeof(struct cmsghdr))
119 #define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) && \ argument
120 (cmsg)->cmsg_len <= (unsigned long) \
122 ((char *)(cmsg) - (char *)(mhdr)->msg_control)))
123 #define for_each_cmsghdr(cmsg, msg) \ argument
[all …]
/Linux-v5.10/drivers/md/
Dmd-cluster.c504 static void process_add_new_disk(struct mddev *mddev, struct cluster_msg *cmsg) in process_add_new_disk() argument
514 sprintf(disk_uuid + len, "%pU", cmsg->uuid); in process_add_new_disk()
515 snprintf(raid_slot, 16, "RAID_DISK=%d", le32_to_cpu(cmsg->raid_slot)); in process_add_new_disk()
731 static int __sendmsg(struct md_cluster_info *cinfo, struct cluster_msg *cmsg) in __sendmsg() argument
736 cmsg->slot = cpu_to_le32(slot); in __sendmsg()
744 memcpy(cinfo->message_lockres->lksb.sb_lvbptr, (void *)cmsg, in __sendmsg()
782 static int sendmsg(struct md_cluster_info *cinfo, struct cluster_msg *cmsg, in sendmsg() argument
788 ret = __sendmsg(cinfo, cmsg); in sendmsg()
977 struct cluster_msg cmsg = {0}; in resync_bitmap() local
980 cmsg.type = cpu_to_le32(BITMAP_NEEDS_SYNC); in resync_bitmap()
[all …]
/Linux-v5.10/net/ipv6/
Ddatagram.c758 struct cmsghdr *cmsg; in ip6_datagram_send_ctl() local
765 for_each_cmsghdr(cmsg, msg) { in ip6_datagram_send_ctl()
768 if (!CMSG_OK(msg, cmsg)) { in ip6_datagram_send_ctl()
773 if (cmsg->cmsg_level == SOL_SOCKET) { in ip6_datagram_send_ctl()
774 err = __sock_cmsg_send(sk, msg, cmsg, &ipc6->sockc); in ip6_datagram_send_ctl()
780 if (cmsg->cmsg_level != SOL_IPV6) in ip6_datagram_send_ctl()
783 switch (cmsg->cmsg_type) { in ip6_datagram_send_ctl()
790 if (cmsg->cmsg_len < CMSG_LEN(sizeof(struct in6_pktinfo))) { in ip6_datagram_send_ctl()
795 src_info = (struct in6_pktinfo *)CMSG_DATA(cmsg); in ip6_datagram_send_ctl()
843 if (cmsg->cmsg_len < CMSG_LEN(4)) { in ip6_datagram_send_ctl()
[all …]
/Linux-v5.10/samples/seccomp/
Duser-trap.c35 struct cmsghdr *cmsg; in send_fd() local
46 cmsg = CMSG_FIRSTHDR(&msg); in send_fd()
47 cmsg->cmsg_level = SOL_SOCKET; in send_fd()
48 cmsg->cmsg_type = SCM_RIGHTS; in send_fd()
49 cmsg->cmsg_len = CMSG_LEN(sizeof(int)); in send_fd()
50 *((int *)CMSG_DATA(cmsg)) = fd; in send_fd()
51 msg.msg_controllen = cmsg->cmsg_len; in send_fd()
64 struct cmsghdr *cmsg; in recv_fd() local
81 cmsg = CMSG_FIRSTHDR(&msg); in recv_fd()
83 return *((int *)CMSG_DATA(cmsg)); in recv_fd()
/Linux-v5.10/Documentation/networking/
Dtls.rst140 struct cmsghdr *cmsg;
146 cmsg = CMSG_FIRSTHDR(&msg);
147 cmsg->cmsg_level = SOL_TLS;
148 cmsg->cmsg_type = TLS_SET_RECORD_TYPE;
149 cmsg->cmsg_len = CMSG_LEN(cmsg_len);
150 *CMSG_DATA(cmsg) = record_type;
151 msg.msg_controllen = cmsg->cmsg_len;
168 type passed via cmsg. If no cmsg buffer is provided, an error is
170 received without a cmsg buffer set.
175 char cmsg[CMSG_SPACE(sizeof(unsigned char))];
[all …]
Dj1939.rst280 the msghdr in the ``recvmsg(2)`` call. They can be extracted using ``cmsg(3)`` macros,
290 for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
291 switch (cmsg->cmsg_level) {
293 if (cmsg->cmsg_type == SCM_J1939_DEST_ADDR)
294 dst_addr = *CMSG_DATA(cmsg);
295 else if (cmsg->cmsg_type == SCM_J1939_DEST_NAME)
296 memcpy(&dst_name, CMSG_DATA(cmsg), cmsg->cmsg_len - CMSG_LEN(0));
297 else if (cmsg->cmsg_type == SCM_J1939_PRIO)
298 priority = *CMSG_DATA(cmsg);
/Linux-v5.10/net/core/
Dscm.c65 static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp) in scm_fp_copy() argument
67 int *fdp = (int*)CMSG_DATA(cmsg); in scm_fp_copy()
72 num = (cmsg->cmsg_len - sizeof(struct cmsghdr))/sizeof(int); in scm_fp_copy()
133 struct cmsghdr *cmsg; in __scm_send() local
136 for_each_cmsghdr(cmsg, msg) { in __scm_send()
147 if (!CMSG_OK(msg, cmsg)) in __scm_send()
150 if (cmsg->cmsg_level != SOL_SOCKET) in __scm_send()
153 switch (cmsg->cmsg_type) in __scm_send()
158 err=scm_fp_copy(cmsg, &p->fp); in __scm_send()
167 if (cmsg->cmsg_len != CMSG_LEN(sizeof(struct ucred))) in __scm_send()
[all …]
/Linux-v5.10/arch/um/os-Linux/drivers/
Dtuntap_user.c71 struct cmsghdr *cmsg; in tuntap_open_tramp() local
111 cmsg = CMSG_FIRSTHDR(&msg); in tuntap_open_tramp()
112 if (cmsg == NULL) { in tuntap_open_tramp()
117 if ((cmsg->cmsg_level != SOL_SOCKET) || in tuntap_open_tramp()
118 (cmsg->cmsg_type != SCM_RIGHTS)) { in tuntap_open_tramp()
123 *fd_out = ((int *) CMSG_DATA(cmsg))[0]; in tuntap_open_tramp()
/Linux-v5.10/net/rds/
Dsend.c892 struct cmsghdr *cmsg; in rds_rm_size() local
902 for_each_cmsghdr(cmsg, msg) { in rds_rm_size()
903 if (!CMSG_OK(msg, cmsg)) in rds_rm_size()
906 if (cmsg->cmsg_level != SOL_RDS) in rds_rm_size()
909 switch (cmsg->cmsg_type) { in rds_rm_size()
928 retval = rds_rdma_extra_size(CMSG_DATA(cmsg), iov); in rds_rm_size()
972 struct cmsghdr *cmsg) in rds_cmsg_zcopy() argument
976 if (cmsg->cmsg_len < CMSG_LEN(sizeof(*cookie)) || in rds_cmsg_zcopy()
979 cookie = CMSG_DATA(cmsg); in rds_cmsg_zcopy()
988 struct cmsghdr *cmsg; in rds_cmsg_send() local
[all …]
Drdma.c606 struct cmsghdr *cmsg, in rds_cmsg_rdma_args() argument
619 if (cmsg->cmsg_len < CMSG_LEN(sizeof(struct rds_rdma_args)) in rds_cmsg_rdma_args()
623 args = CMSG_DATA(cmsg); in rds_cmsg_rdma_args()
806 struct cmsghdr *cmsg) in rds_cmsg_rdma_dest() argument
813 if (cmsg->cmsg_len < CMSG_LEN(sizeof(rds_rdma_cookie_t)) || in rds_cmsg_rdma_dest()
817 memcpy(&rm->m_rdma_cookie, CMSG_DATA(cmsg), sizeof(rm->m_rdma_cookie)); in rds_cmsg_rdma_dest()
849 struct cmsghdr *cmsg) in rds_cmsg_rdma_map() argument
851 if (cmsg->cmsg_len < CMSG_LEN(sizeof(struct rds_get_mr_args)) || in rds_cmsg_rdma_map()
855 return __rds_rdma_map(rs, CMSG_DATA(cmsg), &rm->m_rdma_cookie, in rds_cmsg_rdma_map()
863 struct cmsghdr *cmsg) in rds_cmsg_atomic() argument
[all …]
/Linux-v5.10/net/
Dcompat.c109 #define CMSG_COMPAT_DATA(cmsg) \ argument
110 ((void __user *)((char __user *)(cmsg) + sizeof(struct compat_cmsghdr)))
128 struct compat_cmsghdr __user *cmsg, int cmsg_len) in cmsg_compat_nxthdr()
130 char __user *ptr = (char __user *)cmsg + CMSG_COMPAT_ALIGN(cmsg_len); in cmsg_compat_nxthdr()
186 struct compat_cmsghdr cmsg; in cmsghdr_from_user_compat_to_kern() local
187 if (copy_from_user(&cmsg, ucmsg, sizeof(cmsg))) in cmsghdr_from_user_compat_to_kern()
189 if (!CMSG_COMPAT_OK(cmsg.cmsg_len, ucmsg, kmsg)) in cmsghdr_from_user_compat_to_kern()
191 tmp = ((cmsg.cmsg_len - sizeof(*ucmsg)) + sizeof(struct cmsghdr)); in cmsghdr_from_user_compat_to_kern()
195 kcmsg->cmsg_level = cmsg.cmsg_level; in cmsghdr_from_user_compat_to_kern()
196 kcmsg->cmsg_type = cmsg.cmsg_type; in cmsghdr_from_user_compat_to_kern()
[all …]
/Linux-v5.10/arch/um/os-Linux/
Dfile.c510 struct cmsghdr *cmsg; in os_rcv_fd() local
529 cmsg = CMSG_FIRSTHDR(&msg); in os_rcv_fd()
530 if (cmsg == NULL) { in os_rcv_fd()
535 if ((cmsg->cmsg_level != SOL_SOCKET) || in os_rcv_fd()
536 (cmsg->cmsg_type != SCM_RIGHTS)) { in os_rcv_fd()
541 new = ((int *) CMSG_DATA(cmsg))[0]; in os_rcv_fd()
655 struct cmsghdr *cmsg = CMSG_FIRSTHDR(&msg); in os_sendmsg_fds() local
661 cmsg->cmsg_level = SOL_SOCKET; in os_sendmsg_fds()
662 cmsg->cmsg_type = SCM_RIGHTS; in os_sendmsg_fds()
663 cmsg->cmsg_len = CMSG_LEN(fds_size); in os_sendmsg_fds()
[all …]
/Linux-v5.10/net/rxrpc/
Dsendmsg.c489 struct cmsghdr *cmsg; in rxrpc_sendmsg_cmsg() local
496 for_each_cmsghdr(cmsg, msg) { in rxrpc_sendmsg_cmsg()
497 if (!CMSG_OK(msg, cmsg)) in rxrpc_sendmsg_cmsg()
500 len = cmsg->cmsg_len - sizeof(struct cmsghdr); in rxrpc_sendmsg_cmsg()
502 cmsg->cmsg_level, cmsg->cmsg_type, len); in rxrpc_sendmsg_cmsg()
504 if (cmsg->cmsg_level != SOL_RXRPC) in rxrpc_sendmsg_cmsg()
507 switch (cmsg->cmsg_type) { in rxrpc_sendmsg_cmsg()
512 p->call.user_call_ID = *(u32 *)CMSG_DATA(cmsg); in rxrpc_sendmsg_cmsg()
517 CMSG_DATA(cmsg); in rxrpc_sendmsg_cmsg()
528 p->abort_code = *(unsigned int *)CMSG_DATA(cmsg); in rxrpc_sendmsg_cmsg()
[all …]
/Linux-v5.10/fs/nfsd/
Dnfs4recover.c750 __cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg, struct nfsd_net *nn) in __cld_pipe_upcall() argument
754 struct cld_upcall *cup = container_of(cmsg, struct cld_upcall, cu_u); in __cld_pipe_upcall()
757 msg.data = cmsg; in __cld_pipe_upcall()
774 cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg, struct nfsd_net *nn) in cld_pipe_upcall() argument
783 ret = __cld_pipe_upcall(pipe, cmsg, nn); in cld_pipe_upcall()
790 __cld_pipe_inprogress_downcall(const struct cld_msg_v2 __user *cmsg, in __cld_pipe_inprogress_downcall() argument
798 if (get_user(cmd, &cmsg->cm_cmd)) { in __cld_pipe_inprogress_downcall()
806 ci = &cmsg->cm_u.cm_clntinfo; in __cld_pipe_inprogress_downcall()
826 cnm = &cmsg->cm_u.cm_name; in __cld_pipe_inprogress_downcall()
854 struct cld_msg_v2 __user *cmsg = (struct cld_msg_v2 __user *)src; in cld_pipe_downcall() local
[all …]
/Linux-v5.10/net/ipv4/
Dip_sockglue.c246 struct cmsghdr *cmsg; in ip_cmsg_send() local
249 for_each_cmsghdr(cmsg, msg) { in ip_cmsg_send()
250 if (!CMSG_OK(msg, cmsg)) in ip_cmsg_send()
254 cmsg->cmsg_level == SOL_IPV6 && in ip_cmsg_send()
255 cmsg->cmsg_type == IPV6_PKTINFO) { in ip_cmsg_send()
258 if (cmsg->cmsg_len < CMSG_LEN(sizeof(*src_info))) in ip_cmsg_send()
260 src_info = (struct in6_pktinfo *)CMSG_DATA(cmsg); in ip_cmsg_send()
269 if (cmsg->cmsg_level == SOL_SOCKET) { in ip_cmsg_send()
270 err = __sock_cmsg_send(sk, msg, cmsg, &ipc->sockc); in ip_cmsg_send()
276 if (cmsg->cmsg_level != SOL_IP) in ip_cmsg_send()
[all …]
/Linux-v5.10/crypto/
Daf_alg.c449 struct cmsghdr *cmsg; in af_alg_cmsg_send() local
451 for_each_cmsghdr(cmsg, msg) { in af_alg_cmsg_send()
452 if (!CMSG_OK(msg, cmsg)) in af_alg_cmsg_send()
454 if (cmsg->cmsg_level != SOL_ALG) in af_alg_cmsg_send()
457 switch (cmsg->cmsg_type) { in af_alg_cmsg_send()
459 if (cmsg->cmsg_len < CMSG_LEN(sizeof(*con->iv))) in af_alg_cmsg_send()
461 con->iv = (void *)CMSG_DATA(cmsg); in af_alg_cmsg_send()
462 if (cmsg->cmsg_len < CMSG_LEN(con->iv->ivlen + in af_alg_cmsg_send()
468 if (cmsg->cmsg_len < CMSG_LEN(sizeof(u32))) in af_alg_cmsg_send()
470 con->op = *(u32 *)CMSG_DATA(cmsg); in af_alg_cmsg_send()
[all …]

12