[5.2] 0174442 Don't fail at jailing if vcache user does not exist

PÃ¥l Hermunn Johansen hermunn at varnish-software.com
Thu Sep 7 08:35:05 UTC 2017


commit 0174442d7398e01cb1bd1f5ce611ca3ce442313b
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Thu Sep 7 07:55:59 2017 +0000

    Don't fail at jailing if vcache user does not exist
    
    Fixes	#2417

diff --git a/bin/varnishd/mgt/mgt_jail_unix.c b/bin/varnishd/mgt/mgt_jail_unix.c
index 6513f44..d39a3d6 100644
--- a/bin/varnishd/mgt/mgt_jail_unix.c
+++ b/bin/varnishd/mgt/mgt_jail_unix.c
@@ -167,8 +167,10 @@ vju_init(char **args)
 
 	vju_mgr_gid = getgid();
 
-	if (vju_wrkuser == NULL)
-		(void)vju_getwrkuid(VCACHE_USER);
+	if (vju_wrkuser == NULL && vju_getwrkuid(VCACHE_USER)) {
+		vju_wrkuid = vju_uid;
+		vju_wrkgid = vju_gid;
+	}
 
 	if (vju_wrkuser != NULL && vju_wrkgid != vju_gid)
 		ARGV_ERR("Unix jail: user %s and %s have "
@@ -257,7 +259,7 @@ vju_vsm_dir(int fd)
 	/* Called under JAIL_MASTER_FILE */
 
 	AZ(fchmod(fd, 0750));
-	AZ(fchown(fd, vju_wrkuid, vju_gid));
+	AZ(fchown(fd, vju_wrkuid, vju_wrkgid));
 }
 
 static void __match_proto__(jail_fixfile_f)


More information about the varnish-commit mailing list