diff --git a/systemd/set_linger.cgi b/systemd/set_linger.cgi index 99606afd5..2d54fef9e 100755 --- a/systemd/set_linger.cgi +++ b/systemd/set_linger.cgi @@ -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);