Thread (6 messages) flat view 6 messages, 5 authors, 2011-03-23

Re: [PATCH v2] net/unix: Add secdata to unix_stream msgs

From: Eric Paris <eparis@redhat.com>
Date: 2011-03-23 15:57:37
Also in: lkml

On Tue, 2011-03-22 at 19:32 -0700, David Miller wrote:
From: Pat Kane <redacted>
Date: Tue, 22 Mar 2011 19:38:37 -0500
quoted
The unix_dgram routines add secdata to socket messages,
but the unix_stream routines do not. I have added the
two missing lines of code.

Signed-off-by: Pat Kane <redacted>
The security hooks appear to be only intended to operate on datagram
sockets, and as such I think the omission of UNIX stream sockets was
very much on purpose.

The SELINUX hook implementations even have "_dgram()" in their names.

Catherine Zhang added to CC: as she last made modifications to these
hooks.
And I'll add Paul Moore as I think he understands the intersection
of /net and /security better than anyone.
quoted
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index 1663e1a..8753cdd 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -1642,6 +1642,8 @@ static int unix_stream_sendmsg(struct kiocb *kiocb, struct socket *sock,
 		max_level = err + 1;
 		fds_sent = true;
 
+		unix_get_secdata(siocb->scm, skb);
+
 		err = memcpy_fromiovec(skb_put(skb, size), msg->msg_iov, size);
 		if (err) {
 			kfree_skb(skb);
@@ -1930,6 +1932,7 @@ static int unix_stream_recvmsg(struct kiocb *iocb, struct socket *sock,
 		} else {
 			/* Copy credentials */
 			scm_set_cred(siocb->scm, UNIXCB(skb).pid, UNIXCB(skb).cred);
+			unix_set_secdata(siocb->scm, skb);
 			check_creds = 1;
 		}
 
-- 
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help