#!/usr/bin/perl
##
## mex2t -cgi -db file
## junta pergunta (file) à db
use strict;
use utf8::all;
use CGI q(:all);
use IO::CaptureOutput qw/capture/;
use File::Path qw(make_path);
print header(-charset=>'utf-8');
print start_html(-title => 'MEX',
-style => { -src => '/styles2.css',
-type => 'text/css'
}
);
if(param()){
$CGI::POST_MAX = 1024 * 5000;
my $filename = param("mex");
#my $passarola_dir = "/home/passarola/.passarola/upload";
my $passarola_path = "#PASS_PATH";
my $passarola_dir = "$passarola_path/.passarola";
my $upload_dir = "$passarola_dir/upload";
if (not -d $upload_dir) { make_path $upload_dir; }
my $upload_filehandle = upload("mex");
open ( UPLOADFILE, ">$upload_dir/$filename" ) or die "$!";
while ( <$upload_filehandle> ) { print UPLOADFILE; } close UPLOADFILE;
# protect system by only allowing select bins to be executed
#$ENV{PATH} = "$passarola_path/bin";
#$ENV{HOME} = "$passarola_path";
chdir $passarola_dir;
my($out, $err, $ret);
capture sub{
$ret = system("pass-validate $upload_dir/$filename");
} => \$out, \$err;
print "Errors:
$err