Fix to explicitly allow only string 0 or 1

This commit is contained in:
Ilia Ross
2026-06-15 14:35:24 +02:00
parent cbebe22a14
commit a1c88df428

View File

@@ -17,9 +17,10 @@ my $user = clean_unit_value($in{'user'});
my $enabled = $in{'enabled'};
get_user_details($user) || error($text{'systemd_euser'});
systemd_can_linger(\%access, $user) || systemd_acl_error('plinger');
if (!defined($enabled) || $enabled !~ /^[01]$/) {
if (!defined($enabled) || ($enabled ne '0' && $enabled ne '1')) {
error($text{'systemd_elinger'});
}
$enabled = $enabled eq '1' ? 1 : 0;
# Apply the requested linger state through loginctl.
my ($ok, $out) = set_user_linger($user, $enabled);