diff --git a/quota/linux-lib.pl b/quota/linux-lib.pl index 7fa777dc9..20f85bff0 100755 --- a/quota/linux-lib.pl +++ b/quota/linux-lib.pl @@ -753,7 +753,7 @@ failure. =cut sub copy_user_quota { -for($i=1; $i<@_; $i++) { +for(my $i=1; $i<@_; $i++) { $out = &backquote_logged("$config{'user_copy_command'} ". quotemeta($_[0])." ".quotemeta($_[$i])." 2>&1"); if ($?) { return $out; } @@ -770,7 +770,7 @@ failure. =cut sub copy_group_quota { -for($i=1; $i<@_; $i++) { +for(my $i=1; $i<@_; $i++) { $out = &backquote_logged("$config{'group_copy_command'} ". quotemeta($_[0])." ".quotemeta($_[$i])." 2>&1"); if ($?) { return $out; } @@ -1010,5 +1010,16 @@ my $out = &backquote_logged("xfs_quota -x -c 'limit -g bsoft=${sblocks}k bhard=$ &error($out) if ($?); } +=head2 can_quotacheck(fs) + +Returns 1 if some FS supports quota checking + +=cut +sub can_quotacheck +{ +my ($fs) = @_; +return !&is_xfs_fs($fs); +} + 1; diff --git a/quota/list_groups.cgi b/quota/list_groups.cgi index 253c819b0..fb6cd70bc 100755 --- a/quota/list_groups.cgi +++ b/quota/list_groups.cgi @@ -32,7 +32,9 @@ print &ui_tabs_start(\@tabs, "mode", $in{'mode'} || 'list', 1); if ($access{'ggrace'}) { push(@ulinks, &ui_link("group_grace_form.cgi?filesys=".&urlize($f), $text{'lusers_egrace'}) ); } -push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=group", $text{'lusers_check'}) ); +if (!defined(&can_quotacheck) || &can_quotacheck($f)) { + push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=group", $text{'lusers_check'}) ); + } # Groups list, in a tab print &ui_tabs_start_tab("mode", "list"); diff --git a/quota/list_users.cgi b/quota/list_users.cgi index d023cc1b2..f4c2809a3 100755 --- a/quota/list_users.cgi +++ b/quota/list_users.cgi @@ -32,7 +32,9 @@ print &ui_tabs_start(\@tabs, "mode", $in{'mode'} || 'list', 1); if ($access{'ugrace'}) { push(@ulinks, &ui_link("user_grace_form.cgi?filesys=".&urlize($f), $text{'lusers_egrace'}) ); } -push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=user", $text{'lusers_check'}) ); +if (!defined(&can_quotacheck) || &can_quotacheck($f)) { + push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=user", $text{'lusers_check'}) ); + } # Users list, in a tab print &ui_tabs_start_tab("mode", "list");