!@ARGV or fail "bad usage: no non-option arguments permitted";
-#---------- main program ----------
-
-chdir $cachedir or fail "chdir $cachedir: $!";
-
-our ($service,$specpath,$spechost,$subdir);
-our ($tmpd,$gitd,$lock);
-our ($fetch,$url);
+#---------- utility functions ----------
sub xread {
my $length = shift;
return $buffer;
}
+#---------- main program ----------
+
+chdir $cachedir or fail "chdir $cachedir: $!";
+
+our ($service,$specpath,$spechost,$subdir);
+our ($tmpd,$gitd,$lock);
+our ($fetch,$url);
+
sub servinfo ($) {
my ($msg) = @_;
logm 'info', "service `$specpath': $msg";