9 |
if [ -z "$ibay" ] |
if [ -z "$ibay" ] |
10 |
then |
then |
11 |
echo ibayName argument missing |
echo ibayName argument missing |
12 |
@@ -32,12 +33,15 @@ then |
@@ -32,12 +33,17 @@ |
13 |
fi |
fi |
14 |
|
|
15 |
ldapauth=$(/sbin/e-smith/config getprop ldap Authentication || echo disabled) |
ldapauth=$(/sbin/e-smith/config getprop ldap Authentication || echo disabled) |
19 |
-if [ "$ldapauth" == "enabled" ] |
-if [ "$ldapauth" == "enabled" ] |
20 |
+if [ "$ldapauth" != "enabled" ] |
+if [ "$ldapauth" != "enabled" ] |
21 |
then |
then |
|
- /usr/sbin/cpu userdel "$ibay" |
|
|
- /usr/sbin/cpu -C/etc/cpu-system.conf groupdel "$ibay" |
|
|
-else |
|
|
- exec /usr/sbin/userdel "$ibay" |
|
22 |
+ /usr/sbin/userdel "$ibay" || x=1 |
+ /usr/sbin/userdel "$ibay" || x=1 |
23 |
|
/usr/sbin/cpu userdel "$ibay" |
24 |
|
/usr/sbin/cpu -C/etc/cpu-system.conf groupdel "$ibay" |
25 |
|
else |
26 |
|
- exec /usr/sbin/userdel "$ibay" |
27 |
|
+ /usr/sbin/cpu userdel "$ibay" || x=1 |
28 |
|
+ /usr/sbin/cpu -C/etc/cpu-system.conf groupdel "$ibay" || x=1 |
29 |
fi |
fi |
30 |
+ |
+ |
|
+/usr/sbin/cpu userdel "$ibay" || x=1 |
|
|
+/usr/sbin/cpu -C/etc/cpu-system.conf groupdel "$ibay" || x=1 |
|
|
+ |
|
31 |
+exit $x |
+exit $x |
32 |
diff -up e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify.better-ldap e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify |
diff -up e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify.better-ldap e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify |
33 |
--- e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify.better-ldap 2010-11-02 13:37:55.000000000 -0600 |
--- e-smith-ibays-2.2.0/root/etc/e-smith/events/actions/ibay-modify.better-ldap 2010-11-02 13:37:55.000000000 -0600 |
89 |
"/bin/false", |
"/bin/false", |
90 |
"$ibayName" |
"$ibayName" |
91 |
- ) == 0 or die "Failed to create account $ibayName.\n"; |
- ) == 0 or die "Failed to create account $ibayName.\n"; |
92 |
+ ) == 0 or ( $x = 255, warn "Failed to create (unix) account $ibayName.\n"; |
+ ) == 0 or ( $x = 255, warn "Failed to create (unix) account $ibayName.\n" ); |
93 |
} |
} |
94 |
|
|
95 |
+ system( |
+ system( |
97 |
+ "-g", |
+ "-g", |
98 |
+ $ibay->prop("Gid"), |
+ $ibay->prop("Gid"), |
99 |
+ $ibayName |
+ $ibayName |
100 |
+ ) == 0 or ( $x = 255, warn "Failed to create (ldap) group $ibayName.\n" ); |
+ ) == 0 or ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to create (ldap) group $ibayName.\n" ); |
101 |
+ |
+ |
102 |
+ system( |
+ system( |
103 |
+ "/usr/sbin/cpu", "useradd", |
+ "/usr/sbin/cpu", "useradd", |
115 |
+ "-s", |
+ "-s", |
116 |
+ "/bin/false", |
+ "/bin/false", |
117 |
+ "$ibayName" |
+ "$ibayName" |
118 |
+ ) == 0 or ( $x = 255, warn "Failed to create (ldap) account $ibayName.\n" ); |
+ ) == 0 or ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to create (ldap) account $ibayName.\n" ); |
119 |
+ |
+ |
120 |
#------------------------------------------------------------ |
#------------------------------------------------------------ |
121 |
# Create the ibay files and set the password. |
# Create the ibay files and set the password. |
146 |
} |
} |
147 |
+ |
+ |
148 |
+ system("/usr/sbin/cpu", "usermod", "-L", $ibayName) == 0 |
+ system("/usr/sbin/cpu", "usermod", "-L", $ibayName) == 0 |
149 |
+ or ( $x = 255, warn "Error locking (ldap) account $ibayName" ); |
+ or ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Error locking (ldap) account $ibayName" ); |
150 |
} |
} |
151 |
elsif ($event eq 'ibay-modify') |
elsif ($event eq 'ibay-modify') |
152 |
{ |
{ |
171 |
|
|
172 |
+ system("/usr/sbin/cpu", "usermod", "-c", $ibay->prop("Name"), |
+ system("/usr/sbin/cpu", "usermod", "-c", $ibay->prop("Name"), |
173 |
+ "-G", "shared," . $ibay->prop("Group"), "$ibayName") == 0 |
+ "-G", "shared," . $ibay->prop("Group"), "$ibayName") == 0 |
174 |
+ or ( $x = 255, warn "Failed to modify (ldap) account $ibayName.\n" ); |
+ or ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to modify (ldap) account $ibayName.\n" ); |
175 |
} |
} |
176 |
|
|
177 |
#------------------------------------------------------------ |
#------------------------------------------------------------ |