From: Andy Lutomirski Date: Thu, 1 May 2014 05:10:13 +0000 (-0700) Subject: setpriv: Fix --selinux-label X-Git-Tag: v2.25-rc1~219 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cc89383b3207f14671ad4266bb945347d5c1b609;p=thirdparty%2Futil-linux.git setpriv: Fix --selinux-label This commit: commit 05cef8eafbf169a8da1d2831f5ed3d5b1b81aaad Author: Sami Kerola Date: Sat Apr 13 20:54:59 2013 +0100 setpriv: check writing to a file descriptor was successful broke --selinux-label. It checks whether fsyncing /proc/self/attr/exec succeeds, and it doesn't, because fsync isn't supported on that file. I have stealthily improved the error message as part of this fix. Signed-off-by: Andy Lutomirski --- diff --git a/sys-utils/setpriv.c b/sys-utils/setpriv.c index 7bea626495..65921be18b 100644 --- a/sys-utils/setpriv.c +++ b/sys-utils/setpriv.c @@ -526,9 +526,9 @@ static void do_selinux_label(const char *label) err(SETPRIV_EXIT_PRIVERR, _("write failed: %s"), _PATH_PROC_ATTR_EXEC); - if (close_fd(fd) != 0) + if (close(fd) != 0) err(SETPRIV_EXIT_PRIVERR, - _("write failed: %s"), _PATH_PROC_ATTR_EXEC); + _("close failed: %s"), _PATH_PROC_ATTR_EXEC); } static void do_apparmor_profile(const char *label)