From: Konrad Lipinski Date: Fri, 15 Jul 2016 11:15:05 +0000 (+0200) Subject: kdbus: allow unix domain socket fd passing X-Git-Tag: submit/tizen/20161216.052309~113 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c5de5a163ac8917dfdb8da86def70ede9058009f;p=platform%2Fkernel%2Flinux-exynos.git kdbus: allow unix domain socket fd passing [ This commit re-applies change Ifafec44da924ec8ed677629606c92a45e7171636 to new kdbus upstream version. ] Signed-off-by: Karol Lewandowski Change-Id: Ib293d0d864a3a91cf8422bcccc1f7593285868a1 --- diff --git a/ipc/kdbus/message.c b/ipc/kdbus/message.c index ae565cd343f8..66b9325f03d0 100644 --- a/ipc/kdbus/message.c +++ b/ipc/kdbus/message.c @@ -229,8 +229,6 @@ exit: static struct file *kdbus_get_fd(int fd) { struct file *f, *ret; - struct inode *inode; - struct socket *sock; if (fd < 0) return ERR_PTR(-EBADF); @@ -239,15 +237,10 @@ static struct file *kdbus_get_fd(int fd) if (!f) return ERR_PTR(-EBADF); - inode = file_inode(f); - sock = S_ISSOCK(inode->i_mode) ? SOCKET_I(inode) : NULL; - if (f->f_mode & FMODE_PATH) ret = f; /* O_PATH is always allowed */ else if (f->f_op == &kdbus_handle_ops) ret = ERR_PTR(-EOPNOTSUPP); /* disallow kdbus-fd over kdbus */ - else if (sock && sock->sk && sock->ops && sock->ops->family == PF_UNIX) - ret = ERR_PTR(-EOPNOTSUPP); /* disallow UDS over kdbus */ else ret = f; /* all other are allowed */