$mailprog = '/usr/lib/sendmail'; # Recipient of form responses $recipient = 'test@test.edu'; # Print out a content-type for HTTP/1.0 compatibility print "Content-type: text/html\n\n"; # Get the input read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); # Split the name-value pairs @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); # Un-Webify plus signs and %-encoding $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; # Stop people from using subshells to execute commands # Not a big deal when using sendmail, but very important # when using UCB mail (aka mailx). # $value =~ s/~!/ ~!/g; # Uncomment for debugging purposes # print "Setting $name to $value

"; $FORM{$name} = $value; } # Print title and header info for user response &user_response; $date = `date`; # Now send mail to $recipient formatted in HTML # Note: MIME, Subject and Content lines must appear EXACTLY as they do below # (only one \n after Subject line!) open (MAIL, "|$mailprog $recipient") || die "Can't open $mailprog!\n"; print MAIL "Reply-to: $FORM{'email'} ($FORM{'name'})\n"; print MAIL "MIME-Version: 1.0\n"; print MAIL "Subject: ES Internal Routing Form> $FORM{'name'}: $FORM{'id'} \n"; print MAIL "Content-Type: text/html; charset=us-ascii\n"; print MAIL "Content-Transfer-Encoding: 7bit\n"; print MAIL "\n"; print MAIL "HR "; print MAIL "ES Internal Routing Form\n"; print MAIL "\n"; print MAIL "\n"; print MAIL "

"; print MAIL ""; print MAIL ""; print MAIL "
"; print MAIL ""; print MAIL "Office
"; print MAIL "ES Internal Routing Form
"; print MAIL "
"; print MAIL "Processed By: $FORM{'fnba'} $FORM{'estb'} $FORM{'espr'}
"; print MAIL "Name: $FORM{'name'}
"; print MAIL "SS#: $FORM{'ss'}
"; print MAIL "ID#: $FORM{'id'}
"; print MAIL "Dept: $FORM{'deptnumber'}
"; print MAIL "Title: $FORM{'title'}
"; print MAIL "US Citizen? $FORM{'ckusyes'} $FORM{'ckusno'}
";