summaryrefslogtreecommitdiffstats
path: root/src/usr/local/www/system_usermanager.php
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2015-09-16 15:47:28 -0400
committerjim-p <jimp@pfsense.org>2015-09-16 15:47:28 -0400
commit900ce3b0eeb9bec8797bea83372952e043e8d2fc (patch)
tree7f1fae9c806f13f85d9453206507be19045a025a /src/usr/local/www/system_usermanager.php
parent96283eb7c2ba9dbce399b556712d2fca50a8abbe (diff)
downloadpfsense-900ce3b0eeb9bec8797bea83372952e043e8d2fc.zip
pfsense-900ce3b0eeb9bec8797bea83372952e043e8d2fc.tar.gz
Work around a chicken-and-egg problem in user syncing. See #5152
See also: commit:5372d26d9d25d751d16865ed9d46869d3b0ec5e1
Diffstat (limited to 'src/usr/local/www/system_usermanager.php')
-rw-r--r--src/usr/local/www/system_usermanager.php3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/usr/local/www/system_usermanager.php b/src/usr/local/www/system_usermanager.php
index 2cd524b..d00d420 100644
--- a/src/usr/local/www/system_usermanager.php
+++ b/src/usr/local/www/system_usermanager.php
@@ -354,7 +354,10 @@ if ($_POST['save']) {
$a_user[] = $userent;
}
+ /* Add user to groups so PHP can see the memberships properly or else the user's shell account does not get proper permissions (if applicable) See #5152. */
+ local_user_set_groups($userent,$_POST['groups']);
local_user_set($userent);
+ /* Add user to groups again to ensure they are set everywhere, otherwise the user may not appear to be a member of the group. See commit:5372d26d9d25d751d16865ed9d46869d3b0ec5e1. */
local_user_set_groups($userent, $_POST['groups']);
write_config();
OpenPOWER on IntegriCloud