Передача текста из MySQL в Spamassassins Spamc Client - PullRequest
2 голосов
/ 01 декабря 2011

Это мой первый пост здесь, и я немного отсталый. Я пытаюсь передать текст из базы данных MySQL через клиент spamassains spamc. Я могу сделать это, записав в файл, а затем передав этот файл в spamc, как в spamc < 'textfile.txt', но это происходит медленно из-за чтения / записи на диск.

Кто-нибудь знает, как это сделать напрямую?

1 Ответ

1 голос
/ 01 декабря 2011

Отправьте запрос в клиент командной строки в пакетном режиме через канал, затем перенаправьте вывод в spamc:

echo "SELECT col1, col2 FROM yourtable" | mysql --batch -uuser -ppassword | spamc

Я предполагаю, что вы выбираете полные сообщения электронной почты из вашей базы данных.Если нет, вы получите несколько флагов спама за отсутствующие заголовки.Вот пример, который я только что побежал ...

X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
        localhost
X-Spam-Flag: YES
X-Spam-Level: *****
X-Spam-Status: Yes, score=5.5 required=5.0 tests=MISSING_DATE,MISSING_FROM,
        MISSING_HEADERS,MISSING_MID,MISSING_SUBJECT,NO_HEADERS_MESSAGE,NO_RECEIVED,
        NO_RELAYS,TVD_SPACE_RATIO autolearn=no version=3.3.1
X-Spam-Report:
        * -0.0 NO_RELAYS Informational: message was not relayed via SMTP
        *  1.2 MISSING_HEADERS Missing To: header
        *  0.1 MISSING_MID Missing Message-Id: header
        *  1.8 MISSING_SUBJECT Missing Subject: header
        *  1.0 MISSING_FROM Missing From: header
        * -0.0 NO_RECEIVED Informational: message has no Received headers
        *  0.0 TVD_SPACE_RATIO TVD_SPACE_RATIO
        *  1.4 MISSING_DATE Missing Date: header
        *  0.0 NO_HEADERS_MESSAGE Message appears to be missing most RFC-822
        *      headers
...