SQL Redux

Martin Hepworth maxsec at TOTALISE.CO.UK
Thu Jul 31 14:24:24 IST 2003


Steve

ok I got code to look like

   # Sanitize reports
   my($reports) = map { ($_ eq '')?'NULL':"$_" } join(' ', @report_array);
   my($aplaces) = map { ($_ eq '')?'NULL':"$_" } join(',',
@{$message->{archiveplaces}});
   my($myspamreport) = map { ($_ eq '')?'NULL':"$_" } $spamreport;

   my($insmessage) = $message;
$insmessage->{to} = map { ($_ eq '')?'NULL':"$_" }
join(',',@{$message->{to}});
   $insmessage->{subject} = map { ($_ eq '')?'NULL':"$_" }
$message->{subject};
   $insmessage->{issaspam} = map { ($_ eq '')?'NULL':"$_" }
$message->{issaspam};

   $insmessage->{isrblspam} = map { ($_ eq '')?'NULL':"$_" }
$message->{isrblspam};

   # Insert the data
   MailScanner::Log::WarnLog("trying to insert row:  %s, %s, %s, %s, %s,
%s, %s,
%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s",  $timestamp,
$insmessage->{
id}, $insmessage->{size}, $insmessage->{from}, $insmessage->{to},
$insmessage->{subject}, $insmessage->{clientip}, $aplaces,
$insmessage->{isspam}
, $insmessage->{ishigh}, $insmessage->{issaspam},
$insmessage->{isrblspam}, $ins
message->{spamwhitelisted}, $insmessage->{sascore}, $myspamreport,
$insmessage->
{virusinfected}, $insmessage->{nameinfected},
$insmessage->{otherinfected}, $rep
orts, $hostname);
   $sth->execute(
    $timestamp,
    $dbh->quote($insmessage->{id}),
    $insmessage->{size},
    $dbh->quote($insmessage->{from}),
    $dbh->quote($insmessage->{to}),
    $dbh->quote($insmessage->{subject}),
    $dbh->quote($insmessage->{clientip}),
    $dbh->quote($aplaces),
    $insmessage->{isspam},
    $insmessage->{ishigh},
    $insmessage->{issaspam},
    $insmessage->{isrblspam},
    $insmessage->{spamwhitelisted},
    $insmessage->{sascore},
    $dbh->quote($myspamreport),
    $insmessage->{virusinfected},
    $insmessage->{nameinfected},
    $insmessage->{otherinfected},
    $dbh->quote($reports),
    $dbh->quote($hostname))
   or MailScanner::Log::WarnLog("Cannot insert row: %s", $DBI::errstr);


and it's still not inserting in the DB..maillog says...

Jul 31 14:17:02 soloman MailScanner[61293]: trying to insert row:
2003-07-31 14:17:02, h6VDGvXL061292, 1060,
martinh at soloman.solid-state-logic.com, martinh at solid-state-logic.com,
test7, 127.0.0.1, NULL, 0, 0, 1, 1, 0, 0, NULL, 0, 0, 0, NULL,
soloman.solid-state-logic.com
Jul 31 14:17:02 soloman MailScanner[61293]: Cannot insert row: MySQL
server has gone away

Anybody any clues - my perl isn't great so..

--
martin



More information about the MailScanner mailing list