Патч на СИ для Linux-программы
Необходимые условия:
1. вы работаете за Linux-десктопом
2. хорошо программируете на СИ (gcc)
3. знаете как создавать и использовать сокеты под Линукс
4. умеете пользоваться telnet
5. Понимаете что-такое протокол SMTP и как можно с помощью одного telnet отправить письмо
6. Умеете писать простенькие скрипты на PHP
Только если вы владеете предыдущими пунктами стоит читать дальше.
Итак, нужно для моего сервера, на котором стоит courier в качестве MTA, написать патч (если это можно запихнуть в модуль, то ещё лучше) и простенький php-скриптик (по сути заглушку для проверки патча).
Всё это нужно для реализации индивидуальных чёрных списков на моём сервере.
Курьер должен с помощью этого патча вызывать запрос к сокету, на котором висит простенький php-скрипт. Запрос нужно передать сразу как только курьер получит нужные заголовки, до того как письмо попадёт в очередь на доставку. Через сокет php-скрипту передаются емейл отправителя и емейл получателя. php-скрипт скрипт отвечает OK, если для данной пары разрешён приём либо выдаёт текст ошибки, которая должна передаться курьеру, а тот которую должен передать тому, кто хочет отправить письмо.
Возможно на первый взгляд это выглядит сложно, но если вы linux-профи, то вряд ли этот таск займёт у вас больше пары дней.