X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=net%2Fcore%2Fscm.c;h=b88f6f9d0b97503ddd353e163e73680704cde79a;hb=5a0e3ad6af8660be21ca98a971cd00f331318c05;hp=b7ba91b074b33995deee5278fb54c30d100d041b;hpb=22b61a11fd4e6d7a48d694ce350331bebc0394ed;p=firefly-linux-kernel-4.4.55.git diff --git a/net/core/scm.c b/net/core/scm.c index b7ba91b074b3..b88f6f9d0b97 100644 --- a/net/core/scm.c +++ b/net/core/scm.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -156,6 +157,8 @@ int __scm_send(struct socket *sock, struct msghdr *msg, struct scm_cookie *p) switch (cmsg->cmsg_type) { case SCM_RIGHTS: + if (!sock->ops || sock->ops->family != PF_UNIX) + goto error; err=scm_fp_copy(cmsg, &p->fp); if (err<0) goto error;