From: Iker Pedrosa Date: Wed, 10 Nov 2021 11:02:04 +0000 (+0100) Subject: newgrp: fix segmentation fault X-Git-Tag: 4.10~19^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=497e90751bc0d95cc998b0f06305040563903948;p=thirdparty%2Fshadow.git newgrp: fix segmentation fault Fix segmentation fault in newgrp when xgetspnam() returns a NULL value that is immediately freed. The error was committed in https://github.com/shadow-maint/shadow/commit/e65cc6aebcb4132fa413f00a905216a5b35b3d57 Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2019553 Signed-off-by: Iker Pedrosa --- diff --git a/src/newgrp.c b/src/newgrp.c index 730f47e8a..566f1c899 100644 --- a/src/newgrp.c +++ b/src/newgrp.c @@ -163,8 +163,8 @@ static void check_perms (const struct group *grp, spwd = xgetspnam (pwd->pw_name); if (NULL != spwd) { pwd->pw_passwd = xstrdup (spwd->sp_pwdp); + spw_free (spwd); } - spw_free (spwd); if ((pwd->pw_passwd[0] == '\0') && (grp->gr_passwd[0] != '\0')) { needspasswd = true;