Регистрация...

Eserv Forum / E4 / Mail / Добавить пустую строку после заголовка письма

recent wikipost // (v1)
Продукты и услуги Скачать Документация Купить Поддержка Форумы Партнёрам Статьи О компании
Подскажите, можно ли как нибудь по простому для эксперимента добавить в pop2smtp после заголовка письма пустую строку, например прописать какой код в ..\E4\DATA\log\pop2smtp\HEADER.rules.txt или HEADER-END.rules.txt
Или в какой нибудь другой скрипт?
Не испорчу же формат письма? Просто сейчас занимаюсь исправлением писем с битым аттачментом, путем добавления пустой строки после заголовка- в 99% случаев это достаточно. см. http://forum.eserv.ru/E4/Mail/Проапгрейдить PopPull для совместимости с Яндекс POP3
 
Комментарии к этой версии (15.04.2014 07:34) [~serg] 2f671ece
АвторДатаТекстtags
pig15.04.2014 17:35
В HEADER-END:
S" " WMCR

По идее, хуже не станет.
wikipost
serg15.04.2014 18:31
А как её вставить, у меня в этом файле HEADER-END.rules.txt
\ Запускается в конце приема заголовка. uSKIP_MESSAGE @ 0= | PopSaveReceivedMsgid \ DumpRcpts

В конце и в начале файла выдает ошибку в логе
19:20:35 ERROR (4464): 4294965293
wikipost
pig15.04.2014 21:35
А, это не то... Точно, в разных ветках разная обработка. И здесь не прокатит. Надо в код плагина лезть.
wikipost
serg16.04.2014 02:20
Вообщем получилось вроде.
Сделал пока через одно место
E4\CommonPlugins\pop2smtp\headers\HEADER.rules.txt
HEADER-NAME 16 MIN S" X-Yandex-Forward" COMPARE 0= | " {CRLF}" STR@ SetHeader \EOF


В моих входящих заголовок "X-Yandex-Forward" часто идет последним прям перед телом письма. По образцу в этом файле удалось подменить его на пустую строку- алилуя, тестовое письмо пришло нормальное.

Теперь к АС просьба помочь прописать правильней код, чтобы пустая строка вставлялась перед телом письма.
wikipost
ac16.04.2014 08:58
В том-то и дело, что наличие пустой строки и так контролируется в коде приёма заголовка (CommonPlugins\pop2smtp\index.f стр.223):

hdr IF \ не было пустой строки, отделяющей заголовок


Если там вместо hdr поставить TRUE (т.е. безусловно считаем, что строка отсутствует) и перезапустить, то проблема уходит?
wikipost
serg16.04.2014 10:07
ред: 16.04.2014 13:38
Попробую вечером, отпишусь.
Я в начальной теме http://forum.eserv.ru/E4/Mail/Проапгрейдить PopPull для совместимости с Яндекс POP3 обращал внимание на то что от старого провайдера в логе идут две пустые строки, а от яндекса одна.
Похоже одна пустая строка теряется внутри pop2smtp и не доходит до smtp сервера.
wikipost
serg16.04.2014 21:29
ред: 17.04.2014 08:39
Протестировал.

ac пишет: Если там вместо hdr поставить TRUE

Не работает, но если в строку №226
HEADER-STR DUP IF " {s}{CRLF}" STR@ ELSE 2DROP S" " THEN

Добавить второй {CRLF}, то все получается даже если hdr вернуть назад.
wikipost
serg21.04.2014 15:08
ред: 22.04.2014 09:00
Ну вот уже почти неделя как добавил второй {CRLF}- полет нормальный.
Не нашли место кто крадёт один {CRLF}?
wikipost
Работает на Eserv/5.05567 (10.02.2020)