… | |
… | |
450 | } elsif (-f _ && -r _) { |
450 | } elsif (-f _ && -r _) { |
451 | -x _ and $self->err(403, "forbidden"); |
451 | -x _ and $self->err(403, "forbidden"); |
452 | |
452 | |
453 | if (%{$conn{$self->{remote_id}}} > $::MAX_TRANSFERS_IP) { |
453 | if (%{$conn{$self->{remote_id}}} > $::MAX_TRANSFERS_IP) { |
454 | my $timeout = $::NOW + 10; |
454 | my $timeout = $::NOW + 10; |
455 | while (%{$conn{$self->{remote_id}}} >= $::MAX_TRANSFERS_IP) { |
455 | while (%{$conn{$self->{remote_id}}} > $::MAX_TRANSFERS_IP) { |
456 | if ($timeout < $::NOW) { |
456 | if ($timeout < $::NOW) { |
457 | $self->block($::BLOCKTIME, "too many connections"); |
457 | $self->block($::BLOCKTIME, "too many connections"); |
458 | } else { |
458 | } else { |
459 | $httpevent->wait; |
459 | $httpevent->wait; |
460 | } |
460 | } |