From e4081e44e0dcc4bfe11d0da0ae47518df087349d Mon Sep 17 00:00:00 2001 From: Namhyung Kim Date: Tue, 1 Jul 2014 00:12:41 +0900 Subject: [PATCH] chcon: use security_check_context() for context validation context_new() and _free() are used for checking validity of a specified context. libselinux provides security_check_context for this purpose so use it. Note that context_new() can fail for a valid context - e.g. ENOMEM. * src/chcon.c (main): Use security_check_context(). --- src/chcon.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/chcon.c b/src/chcon.c index 32d4b0f8b7..8c18167ffb 100644 --- a/src/chcon.c +++ b/src/chcon.c @@ -555,13 +555,10 @@ main (int argc, char **argv) } else { - context_t context; specified_context = argv[optind++]; - context = context_new (specified_context); - if (!context) - error (EXIT_FAILURE, 0, _("invalid context: %s"), + if (security_check_context (specified_context) < 0) + error (EXIT_FAILURE, errno, _("invalid context: %s"), quotearg_colon (specified_context)); - context_free (context); } if (reference_file && component_specified) -- 2.47.2