+# FIXME: duplicated code with NNTP.pm
+my $WEAKEN = {}; # string(inbox) -> inbox
+my $WEAKTIMER;
+sub weaken_task () {
+ $WEAKTIMER = undef;
+ $_->weaken_all for values %$WEAKEN;
+ $WEAKEN = {};
+}
+
+# Use the same configuration parameter as git since this is primarily
+# a slow-client sponge for git-http-backend
+# TODO: support per-respository http.maxRequestBuffer somehow...
+our $MAX_REQUEST_BUFFER = $ENV{GIT_HTTP_MAX_REQUEST_BUFFER} ||
+ (10 * 1024 * 1024);
+
+my $null_io = IO::File->new('/dev/null', '<');
+my $http_date;
+my $prev = 0;
+sub http_date () {
+ my $now = time;
+ $now == $prev ? $http_date : ($http_date = time2str($prev = $now));
+}
+