sock: break up sock_cmsg_snd into __sock_cmsg_snd and loop
To process cmsg's of the SOL_SOCKET level in addition to cmsgs of another level, protocols can call sock_cmsg_send(). This causes a double walk on the cmsghdr list, one for SOL_SOCKET and one for the other level. Extract the inner demultiplex logic from the loop that walks the list, to allow having this called directly from a walker in the protocol specific code. Signed-off-by: Willem de Bruijn <willemb@google.com> Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
833716e0ed
commit
39771b127b
@@ -1420,6 +1420,8 @@ struct sockcm_cookie {
|
||||
u32 mark;
|
||||
};
|
||||
|
||||
int __sock_cmsg_send(struct sock *sk, struct msghdr *msg, struct cmsghdr *cmsg,
|
||||
struct sockcm_cookie *sockc);
|
||||
int sock_cmsg_send(struct sock *sk, struct msghdr *msg,
|
||||
struct sockcm_cookie *sockc);
|
||||
|
||||
|
Reference in New Issue
Block a user