Re: [PATCH v2 1/2] dismod: print the policy version only in interactive mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 14, 2023 at 3:23 PM Masatake YAMATO <yamato@xxxxxxxxxx> wrote:
>
> Instead, a new action, 'v' for printing the policy (and/or
> module) version in batch mode is added.
>
> Signed-off-by: Masatake YAMATO <yamato@xxxxxxxxxx>

For both patches:
Acked-by: James Carter <jwcart2@xxxxxxxxx>

> ---
>  checkpolicy/test/dismod.c | 30 ++++++++++++++++++++----------
>  1 file changed, 20 insertions(+), 10 deletions(-)
>
> diff --git a/checkpolicy/test/dismod.c b/checkpolicy/test/dismod.c
> index 515fc9a5..fa729ef2 100644
> --- a/checkpolicy/test/dismod.c
> +++ b/checkpolicy/test/dismod.c
> @@ -91,6 +91,7 @@ static struct command {
>         {CMD|NOOPT, 'l', "Link in a module"},
>         {CMD,       'u', "Display the unknown handling setting"},
>         {CMD,       'F', "Display filename_trans rules"},
> +       {CMD,       'v', "display the version of policy and/or module"},
>         {HEADER, 0, ""},
>         {CMD|NOOPT, 'f',  "set output file"},
>         {CMD|NOOPT, 'm',  "display menu"},
> @@ -899,6 +900,19 @@ static int menu(void)
>         return 0;
>  }
>
> +static void print_version_info(policydb_t * p, FILE * fp)
> +{
> +       if (p->policy_type == POLICY_BASE) {
> +               fprintf(fp, "Binary base policy file loaded.\n");
> +       } else {
> +               fprintf(fp, "Binary policy module file loaded.\n");
> +               fprintf(fp, "Module name: %s\n", p->name);
> +               fprintf(fp, "Module version: %s\n", p->version);
> +       }
> +
> +       fprintf(fp, "Policy version: %d\n\n", p->policyvers);
> +}
> +
>  int main(int argc, char **argv)
>  {
>         char *ops = NULL;
> @@ -952,17 +966,10 @@ int main(int argc, char **argv)
>                 exit(1);
>         }
>
> -       if (policydb.policy_type == POLICY_BASE) {
> -               printf("Binary base policy file loaded.\n");
> -       } else {
> -               printf("Binary policy module file loaded.\n");
> -               printf("Module name: %s\n", policydb.name);
> -               printf("Module version: %s\n", policydb.version);
> -       }
> -
> -       printf("Policy version: %d\n\n", policydb.policyvers);
> -       if (!ops)
> +       if (!ops) {
> +               print_version_info(&policydb, stdout);
>                 menu();
> +       }
>         for (;;) {
>                 if (ops) {
>                         puts("");
> @@ -1069,6 +1076,9 @@ int main(int argc, char **argv)
>                 case 'l':
>                         link_module(&policydb, out_fp);
>                         break;
> +               case 'v':
> +                       print_version_info(&policydb, out_fp);
> +                       break;
>                 case 'q':
>                         policydb_destroy(&policydb);
>                         exit(0);
> --
> 2.40.1
>




[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux