Главная страница


ru.unix

 
 - RU.UNIX ----------------------------------------------------------------------
 From : Max Fedotov                          2:5054/1.20    10 Sep 2004  09:50:00
 To : All
 Subject : milter
 -------------------------------------------------------------------------------- 
 
 
 Продолжаю мучиться с подменой адреса получателя на сендмэйле. По совету здешних 
 обитателей посмотрел в сторону MilterAPI. Hаписал фильтр, который мне нужен, но 
 что-то не работает, сендмэйл даёт отлуп "User unknown". Что в фильтре:
 
 (...)
 
 sfsistat mlfi_envrcpt(SMFICTX *ctx, char **argv)
 {
     if(check_rcpt(argv[0]))
         fwd = 1;
     else
         fwd = 0;
 
     return SMFIS_CONTINUE;
 }
 
 sfsistat mlfi_eom(SMFICTX *ctx)
 {
     if (fwd == 1) {
         smfi_delrcpt(ctx,origemail);
         smfi_addrcpt(ctx,COPY_TO_ADDR);
         fwd = 0;
     }
 
     return SMFIS_CONTINUE;
 }
 
 (...)
 
 struct smfiDesc fwd_mail_filter = {
     "ForwardMailToSMSC",
     SMFI_VERSION,
     SMFIF_ADDRCPT|SMFIF_DELRCPT,
     NULL,
     NULL,
     mlfi_envfrom,
     mlfi_envrcpt,
     mlfi_header,
     NULL,
     NULL,
     mlfi_eom,
     NULL,
     mlfi_close
 };
 
 int main(int argc, char *argv[])
 {
     smfi_setconn("inet:999@localhost");
     if (smfi_register(fwd_mail_filter) == MI_FAILURE) {
         fprintf(stderr,"smfi_register_failed\n");
         exit(1);
     }
 
     return smfi_main();
 }
 
 Тупой дебаг на уровне printf() в самых разных местах показал, что всё
 отрабатывает нормально, нужный e-mail находится, глобальная переменная fwd
 выставляется как надо, но вот функция mlfi_eom, где собственно и должны
 проводиться все манипуляции с адресами получателей, вообще не выполняется.
 Подскажите как правильно надо проводить подмену адреса получателя и возможно ли 
 это вообще.
 
   Max.
 
 --- GoldED+/BSD 1.1.5
  * Origin:  ***  (2:5054/1.20)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 milter   Max Fedotov   10 Sep 2004 09:50:00 
 milter   Yuriy Talakan\'   10 Sep 2004 14:37:05 
 milter   Max Fedotov   10 Sep 2004 14:36:06 
Архивное /ru.unix/270341410cab.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional