blob: e1e574d88e6253e5fa66d64ac882d69b61da9e56 [file] [log] [blame]
#!/usr/bin/perl -wT
print "Access-Control-Allow-Origin: *\n";
if ($ENV{'REQUEST_METHOD'} eq "OPTIONS") {
# CORS preflight
print "Access-Control-Allow-Headers: *\n";
print "\n";
} elsif ($ENV{'REQUEST_METHOD'} eq "POST") {
print "Content-type: text/plain\n\n";
if ($ENV{'CONTENT_LENGTH'}) {
read(STDIN, $postData, $ENV{'CONTENT_LENGTH'}) || die "Could not get post data\n";
} else {
$postData = "";
}
@list = split(/&/, $ENV{'QUERY_STRING'});
foreach $element (@list) {
($key, $value) = split(/=/, $element);
$values{$key} = $value;
}
open FILE, $values{'path'} || die("Could not open file\n");
seek FILE, $values{'start'}, 0;
read FILE, $expectedData, $values{'length'};
close(FILE);
if ($postData eq $expectedData) {
print "OK";
} else {
print "FAILED";
}
} else {
print "Content-type: text/plain\n\n";
print "Wrong method: " . $ENV{'REQUEST_METHOD'} . "\n";
}