Re: [PATCH] Add restorecon -x opt to not cross FS boundaries (cf github #208)

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

 



On Tue, May 26, 2020 at 1:04 PM Peter Whittaker <pww@xxxxxxxxxxxx> wrote:
>
> Folks, this patch adds and documents a "-x" option for restorecon
> to prevent it from crossing file system boundaries, as requested
> in github issue #208.
>
> P
>
> Signed-off-by: Peter Whittaker <pww@xxxxxxxxxxxx>

You didn't update the actual ropts string so restorecon -x fails even
after this patch.
Did you test your change?
In your patch description, you can put the following line before your
Signed-off-by
and drop the separate references to github issue #208 in the subject
line and body:
Fixes: https://github.com/SELinuxProject/selinux/issues/208

> ---
>  policycoreutils/setfiles/restorecon.8 |  7 +++++++
>  policycoreutils/setfiles/setfiles.c   | 11 +++++++++--
>  2 files changed, 16 insertions(+), 2 deletions(-)
>
> diff --git a/policycoreutils/setfiles/restorecon.8 b/policycoreutils/setfiles/restorecon.8
> index bbfc83fe..0d1930de 100644
> --- a/policycoreutils/setfiles/restorecon.8
> +++ b/policycoreutils/setfiles/restorecon.8
> @@ -13,6 +13,7 @@ restorecon \- restore file(s) default SELinux security contexts.
>  .RB [ \-F ]
>  .RB [ \-W ]
>  .RB [ \-I | \-D ]
> +.RB [ \-x ]
>  .RB [ \-e
>  .IR directory ]
>  .IR pathname \ ...
> @@ -31,6 +32,7 @@ restorecon \- restore file(s) default SELinux security contexts.
>  .RB [ \-F ]
>  .RB [ \-W ]
>  .RB [ \-I | \-D ]
> +.RB [ \-x ]
>
>  .SH "DESCRIPTION"
>  This manual page describes the
> @@ -153,6 +155,11 @@ option of GNU
>  .B find
>  produces input suitable for this mode.
>  .TP
> +.B \-x
> +prevent
> +.B restorecon
> +from crossing file system boundaries.
> +.TP
>  .SH "ARGUMENTS"
>  .IR pathname \ ...
>  The pathname for the file(s) to be relabeled.
> diff --git a/policycoreutils/setfiles/setfiles.c b/policycoreutils/setfiles/setfiles.c
> index 16bd592c..afd579e3 100644
> --- a/policycoreutils/setfiles/setfiles.c
> +++ b/policycoreutils/setfiles/setfiles.c
> @@ -43,8 +43,8 @@ static __attribute__((__noreturn__)) void usage(const char *const name)
>  {
>         if (iamrestorecon) {
>                 fprintf(stderr,
> -                       "usage:  %s [-iIDFmnprRv0] [-e excludedir] pathname...\n"
> -                       "usage:  %s [-iIDFmnprRv0] [-e excludedir] -f filename\n",
> +                       "usage:  %s [-iIDFmnprRv0x] [-e excludedir] pathname...\n"
> +                       "usage:  %s [-iIDFmnprRv0x] [-e excludedir] -f filename\n",
>                         name, name);
>         } else {
>                 fprintf(stderr,
> @@ -386,6 +386,13 @@ int main(int argc, char **argv)
>                 case '0':
>                         null_terminated = 1;
>                         break;
> +                case 'x':
> +                        if (iamrestorecon) {
> +                               r_opts.xdev = SELINUX_RESTORECON_XDEV;
> +                        } else {
> +                               usage(argv[0]);
> +                        }
> +                        break;
>                 case 'h':
>                 case '?':
>                         usage(argv[0]);
> --
> 2.20.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