On 06/30/2014 04:12 PM, Namhyung Kim wrote: > It seems context_new() and _free() are used for checking validity of > a specified context. The 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 | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/src/chcon.c b/src/chcon.c > index 32d4b0f..cd5fba3 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) > + if (security_check_context (specified_context) < 0) > error (EXIT_FAILURE, 0, _("invalid context: %s"), > quotearg_colon (specified_context)); > - context_free (context); > } > > if (reference_file && component_specified) >
security_check_context() is already used by `runcon`, so this change looks good to me.