diff options
author | John W. Linville <linville@tuxdriver.com> | 2006-08-04 14:24:15 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2006-08-04 14:24:15 -0400 |
commit | 71bfe47f023c55c322607939b786ce0a44627dfc (patch) | |
tree | f59c37feb00f1df2e0f4ec282ae9c80ad6bb0cdc /net/unix/af_unix.c | |
parent | 73c1ac1e3b6c989b9b5f7b2313ac590a1c3b6d6a (diff) | |
parent | efe78cda3596f8a6d1c2d4a6b1a221bafa3e1a48 (diff) | |
download | kernel-crypto-71bfe47f023c55c322607939b786ce0a44627dfc.tar.gz kernel-crypto-71bfe47f023c55c322607939b786ce0a44627dfc.tar.xz kernel-crypto-71bfe47f023c55c322607939b786ce0a44627dfc.zip |
Merge branch 'from-linus' into upstream
Diffstat (limited to 'net/unix/af_unix.c')
-rw-r--r-- | net/unix/af_unix.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index 6f290927926..de6ec519272 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -128,23 +128,17 @@ static atomic_t unix_nr_socks = ATOMIC_INIT(0); #define UNIX_ABSTRACT(sk) (unix_sk(sk)->addr->hash != UNIX_HASH_SIZE) #ifdef CONFIG_SECURITY_NETWORK -static void unix_get_peersec_dgram(struct sk_buff *skb) +static void unix_get_secdata(struct scm_cookie *scm, struct sk_buff *skb) { - int err; - - err = security_socket_getpeersec_dgram(skb, UNIXSECDATA(skb), - UNIXSECLEN(skb)); - if (err) - *(UNIXSECDATA(skb)) = NULL; + memcpy(UNIXSID(skb), &scm->secid, sizeof(u32)); } static inline void unix_set_secdata(struct scm_cookie *scm, struct sk_buff *skb) { - scm->secdata = *UNIXSECDATA(skb); - scm->seclen = *UNIXSECLEN(skb); + scm->secid = *UNIXSID(skb); } #else -static inline void unix_get_peersec_dgram(struct sk_buff *skb) +static inline void unix_get_secdata(struct scm_cookie *scm, struct sk_buff *skb) { } static inline void unix_set_secdata(struct scm_cookie *scm, struct sk_buff *skb) @@ -1322,8 +1316,7 @@ static int unix_dgram_sendmsg(struct kiocb *kiocb, struct socket *sock, memcpy(UNIXCREDS(skb), &siocb->scm->creds, sizeof(struct ucred)); if (siocb->scm->fp) unix_attach_fds(siocb->scm, skb); - - unix_get_peersec_dgram(skb); + unix_get_secdata(siocb->scm, skb); skb->h.raw = skb->data; err = memcpy_fromiovec(skb_put(skb,len), msg->msg_iov, len); |