Линда Кайе
Тотальная неудачница и убийца жёстких дисков.
#post-id: 6497-17-32
#original-date: 10.05.2018 Thu
#original-time: 5:32 PM
#original-day:  6497
#original-host: WinXP Home SP3 (Build 2600)

У меня ранее сервер рассылал уведомления по почте через ssmtp. Для того чтобы всё было красиво, bash скрипт формировал из шаблонов письмо и скармливал его программе, а та дописывала что нужно и слала на сервер.

И вот вчера у меня дошли руки прикрутить к этому PGP. Выяснила, как (с какими параметрами) Бэки вызывает GnuPG для подписи и шифрования письма и что скармливает ему. Ну и повторила, наделав дополнительных шаблонов.

Правда, случился затык, над которым я просидела всю ночь. Если письмо формировалось с переносами в виде LF (в, собственно, Баше), то подпись всегда оказывалась невалидной. Но если сделать всё то же самое ручками и с CRLF, то всё прекрасно работало. Собственно, Бэки как раз CRLF скармливала GnuPG, а тот в Windows тоже выдавал CRLF в текстовых файлах. Но мне-то нужно под Линуксом.

В итоге остановилась на флаге «--textmode», который позволяет игнорировать разные варианты переносов. Но до причины странного поведения я так и не докопалась. В Linux GnuPG выдаёт те же файлы с LF, и разные варианты переносов нигде не перемешиваются =_=