summaryrefslogtreecommitdiff
path: root/src/id.c
diff options
context:
space:
mode:
authorJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>2013-06-20 21:21:37 +0300
committerPádraig Brady <P@draigBrady.com>2013-06-20 21:50:57 +0100
commit2bc0281352a894e75dedcf3cc41fcba487e3b74b (patch)
tree80dd493ae3a0d0d87da1c988acdbac713fd2c8b5 /src/id.c
parent2bb800dd414038f233576acf53c0f2fd0d3609cd (diff)
downloadcoreutils-2bc0281352a894e75dedcf3cc41fcba487e3b74b.tar.xz
id: adjust/restrict smack support to newer versions of libsmack
There was slight change to libsmack such that positive values are reserved for returning length of the label for smack_new_label_from_* functions. * m4/jm-macros.m4: Set HAVE_SMACK when both smack_new_label_from_self() and recently added smack_new_label_from_path() are present. The latter's presence indicates the newer API of the former. * src/id.c (main): Check that smack_new_label_from_self() < 0, and not just non-zero.
Diffstat (limited to 'src/id.c')
-rw-r--r--src/id.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/id.c b/src/id.c
index 937b7234d..c91dbcdbc 100644
--- a/src/id.c
+++ b/src/id.c
@@ -210,7 +210,8 @@ main (int argc, char **argv)
if (selinux_enabled && getcon (&context) && just_context)
error (EXIT_FAILURE, 0, _("can't get process context"));
#ifdef HAVE_SMACK
- else if (smack_enabled && smack_new_label_from_self ((char **) &context))
+ else if (smack_enabled
+ && smack_new_label_from_self ((char **) &context) < 0)
error (EXIT_FAILURE, 0, _("can't get process context"));
#endif
}