1 |
diff -Nur --no-dereference e-smith-ldap-5.6.0.old/root/sbin/e-smith/ldif-fix e-smith-ldap-5.6.0/root/sbin/e-smith/ldif-fix |
2 |
--- e-smith-ldap-5.6.0.old/root/sbin/e-smith/ldif-fix 2022-04-17 23:45:45.494000000 -0400 |
3 |
+++ e-smith-ldap-5.6.0/root/sbin/e-smith/ldif-fix 2022-04-17 23:47:33.914000000 -0400 |
4 |
@@ -74,6 +74,7 @@ |
5 |
$data->{"cn=nobody,$groupou,$basedn"}->{objectclass} = [ qw/posixGroup/ ]; |
6 |
$data->{"uid=www,$userou,$basedn"}->{objectclass} = [ qw/account/ ]; |
7 |
$data->{"cn=www,$groupou,$basedn"} = { objectclass => [ qw/posixGroup/ ], memberuid => [ qw/admin/ ] }; |
8 |
+$data->{"cn=rsshusers,$groupou,$basedn"}->{objectclass} = [ qw/posixGroup/ ]; |
9 |
$data->{"cn=shared,$groupou,$basedn"} = { |
10 |
objectclass => [ qw/posixGroup mailboxRelatedObject/ ], |
11 |
mail => "everyone\@$domain", |
12 |
@@ -107,6 +108,9 @@ |
13 |
# users/ibays need to be a member of shared |
14 |
push @{$data->{"cn=shared,$groupou,$basedn"}->{memberuid}}, $key if $type =~ /^(user|ibay)$/ || $key eq 'admin'; |
15 |
|
16 |
+ # users need to be a member of rsshusers if their shell is /usr/bin/rssh |
17 |
+ push @{$data->{"cn=rsshusers,$groupou,$basedn"}->{memberuid}}, $key if ($type =~ /^(user)$/ || $key eq 'admin') && (($acct->prop('Shell') || '/usr/bin/rssh') eq '/usr/bin/rssh'); |
18 |
+ |
19 |
if ($auth ne 'enabled') { |
20 |
# Allow removal of shadow properties |
21 |
push @{$data->{$dn}->{_delete}->{objectclass}}, 'shadowAccount'; |