diff mbox series

libsemanage/genhomedircon: check usepasswd

Message ID 20201029172845.1321021-1-vmojzis@redhat.com (mailing list archive)
State Changes Requested
Headers show
Series libsemanage/genhomedircon: check usepasswd | expand

Commit Message

Vit Mojzis Oct. 29, 2020, 5:28 p.m. UTC
Only add user homedir contexts when usepasswd = True

Resolves:
   #cat /etc/selinux/semanage.conf | grep usepasswd
   usepasswd=False
   #useradd -Z unconfined_u -d /tmp test
   #matchpathcon /tmp
   /tmp	unconfined_u:object_r:user_home_dir_t:s0

Signed-off-by: Vit Mojzis <vmojzis@redhat.com>
---
 libsemanage/src/genhomedircon.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Petr Lautrbach Oct. 30, 2020, 12:33 p.m. UTC | #1
On Thu, Oct 29, 2020 at 06:28:45PM +0100, Vit Mojzis wrote:
> Only add user homedir contexts when usepasswd = True
> 
> Resolves:
>    #cat /etc/selinux/semanage.conf | grep usepasswd
>    usepasswd=False
>    #useradd -Z unconfined_u -d /tmp test
>    #matchpathcon /tmp
>    /tmp	unconfined_u:object_r:user_home_dir_t:s0
> 
> Signed-off-by: Vit Mojzis <vmojzis@redhat.com>
> ---
>  libsemanage/src/genhomedircon.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libsemanage/src/genhomedircon.c b/libsemanage/src/genhomedircon.c
> index d08c88de..fc75fa8c 100644
> --- a/libsemanage/src/genhomedircon.c
> +++ b/libsemanage/src/genhomedircon.c
> @@ -1332,7 +1332,7 @@ static int write_context_file(genhomedircon_settings_t * s, FILE * out)
>  			s->fallback->home = NULL;
>  		}
>  	}
> -	if (user_context_tpl || username_context_tpl) {
> +	if (!(s->usepasswd) && (user_context_tpl || username_context_tpl)) {

I guess this condition is reversed - we want to write user contexts when usepasswd is True


>  		if (write_username_context(s, out, username_context_tpl,
>  					   s->fallback) != STATUS_SUCCESS) {
>  			retval = STATUS_ERR;
> -- 
> 2.26.2
>
diff mbox series

Patch

diff --git a/libsemanage/src/genhomedircon.c b/libsemanage/src/genhomedircon.c
index d08c88de..fc75fa8c 100644
--- a/libsemanage/src/genhomedircon.c
+++ b/libsemanage/src/genhomedircon.c
@@ -1332,7 +1332,7 @@  static int write_context_file(genhomedircon_settings_t * s, FILE * out)
 			s->fallback->home = NULL;
 		}
 	}
-	if (user_context_tpl || username_context_tpl) {
+	if (!(s->usepasswd) && (user_context_tpl || username_context_tpl)) {
 		if (write_username_context(s, out, username_context_tpl,
 					   s->fallback) != STATUS_SUCCESS) {
 			retval = STATUS_ERR;