Чтение почтового спула в C - PullRequest
0 голосов
/ 06 марта 2011

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

Моя идея состоит в том, чтобы запускать эту программу из задания cron каждые X минут, проверять наличие новой электронной почты, действовать на электронную почту, если она есть, и удалять электронную почту.

Конечно, я мог бы легко открыть и прочитать / var / spool / mail / username напрямую как обычный текстовый файл, а затем обрезать файл после прочтения. Но как правильно разобраться с ситуацией, не наступая на sendmail? Для этого пользователя может появиться другое электронное письмо, пока я все еще читаю файл или усекаю его.

1 Ответ

1 голос
/ 06 марта 2011

Как правило, то, что вы пытаетесь сделать, лучше выполнить с помощью фильтрации на стороне сервера, поскольку почта приходит, а не пытаться выполнять поиск по почтовому ящику время от времени.Это сложно, и если вы ошибетесь, вы в конечном итоге потеряете почту.

Вместо этого посмотрите на фильтрацию на стороне сервера, как procmail или аналогичную, чтобы выполнить то, что вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...