[libvirt] [PATCH 27/30] security: selinux: Add is_toplevel to SetImageLabelInternal

Daniel Henrique Barboza danielhb413 at gmail.com
Thu Oct 10 16:07:37 UTC 2019



On 10/7/19 6:49 PM, Cole Robinson wrote:
> This will simplify future patches and make the logic easier to follow
>
> Signed-off-by: Cole Robinson <crobinso at redhat.com>
> ---


Reviewed-by: Daniel Henrique Barboza <danielhb413 at gmail.com>


>   src/security/security_selinux.c | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
> index e384542c49..fd7dd080c1 100644
> --- a/src/security/security_selinux.c
> +++ b/src/security/security_selinux.c
> @@ -1824,6 +1824,7 @@ virSecuritySELinuxSetImageLabelInternal(virSecurityManagerPtr mgr,
>       virSecurityDeviceLabelDefPtr parent_seclabel = NULL;
>       char *use_label = NULL;
>       bool remember;
> +    bool is_toplevel = parent == src;
>       int ret;
>   
>       if (!src->path || !virStorageSourceIsLocalStorage(src))
> @@ -1845,7 +1846,7 @@ virSecuritySELinuxSetImageLabelInternal(virSecurityManagerPtr mgr,
>        * but the top layer, or read only image, or disk explicitly
>        * marked as shared.
>        */
> -    remember = src == parent && !src->readonly && !src->shared;
> +    remember = is_toplevel && !src->readonly && !src->shared;
>   
>       disk_seclabel = virStorageSourceGetSecurityLabelDef(src,
>                                                           SECURITY_SELINUX_NAME);
> @@ -1862,7 +1863,7 @@ virSecuritySELinuxSetImageLabelInternal(virSecurityManagerPtr mgr,
>               return 0;
>   
>           use_label = parent_seclabel->label;
> -    } else if (parent == src) {
> +    } else if (is_toplevel) {
>           if (src->shared) {
>               use_label = data->file_context;
>           } else if (src->readonly) {




More information about the libvir-list mailing list