+++ /dev/null
-#!/usr/bin/perl
-
-use HTTP::Daemon;
-use HTTP::Status;
-use HTTP::Request;
-use LWP::UserAgent;
-use URI::Escape;
-use CGI;
-use FindBin;
-
-chdir $FindBin::Bin; # chdir to the directory of this perl script
-
-$drawgraphport = $ENV{'DRAW_GRAPH_PORT'} || $drawgraphport;
-
-my $d = new HTTP::Daemon LocalPort => $drawgraphport
- or die "Error: port $drawgraphport not available.";
-print "Please contact me at: <URL:", $d->url, ">\n";
-
-$SIG{CHLD} = "IGNORE"; # do not accumulate defunct processes
-
-while (my $c = $d->accept) {
- if (fork() == 0) {
- while (my $r = $c->get_request) {
- if ($r->method eq 'GET' && $r->url->path eq "/draw") {
- my $http_query = $r->url->equery;
- my $cgi = new CGI("$http_query");
- my $url = $cgi->param('url');
- $url = $url.'¶m.PID='.$$;
- print "URL: $url\n";
-
- my $ua = LWP::UserAgent->new;
- my $request = HTTP::Request->new(GET => "$url");
- my $response = $ua->request($request, "prova0.$$.dot");
-
- if (system("make PID=$$ > log.$$") == 0) {
- $c->send_file_response("prova.$$.html");
- } else {
- $c->send_error(RC_INTERNAL_SERVER_ERROR);
- }
- } elsif ($r->method eq 'GET' && $r->url->path eq "/get_gif") {
- my $http_query = $r->url->equery;
- my $cgi = new CGI("$http_query");
- my $pid = $cgi->param('pid');
- print "Returning GIF: $pid\n";
- $c->send_file_response("prova.$pid.gif");
- system("make PID=$pid clean ; rm -f prova0.$pid.dot");
- } elsif ($r->method eq 'GET' && $r->url->path eq "/help"){
- print "Help requested!\n";
- my $response = new HTTP::Response;
- $response->content("Graph Drawer Version: ???");
- $c->send_response($response);
- } else {
- $c->send_error(RC_FORBIDDEN)
- }
- }
- $c->close;
- undef($c);
- exit;
- } # fork
-}