+if (param('get_source')) {
+ # There's another copy of this in dictionary-update-receiver. Sorry.
+ print header('application/octet-stream') or die $!;
+ source_tarball('..', sub { print $_[0] or die $!; });
+ exit 0;
+}
+
+parse_info_serverside();
+
+my $midtmp= "_mid-pid$$.hold";
+open MIDTMP, ">$midtmp" or die "$midtmp $!";
+stat MIDTMP or die $!;
+my $ino= (stat _)[1];
+my $midino= "_mid-ino$$.hold";
+rename $midtmp, $midino or die "$midtmp $midino $!";
+close MIDTMP or die $!;
+
+our $hostname= `hostname -f`; $? and die $?; chomp $hostname or die;
+our $mid= "<$now.$$.$ino\@$hostname>";
+our $pwd= `pwd`; $? and die $?; chomp($pwd);
+our $caller= cgi_get_caller;
+
+sub addlog ($) {
+ print LOG "$mid $caller $_[0]\n" or die $!;
+ flush LOG or die $!;
+}
+
+open LOG, ">>_upload.log" or die $!;
+addlog("receiving");
+