Я строю фильтр содержимого для Postfix (пакет 2.9.3, установленный через apt на тестовой виртуальной машине Ubuntu 12.04), и я начинаю с очень простого шаблона Ruby (1.9.3) и наращиваю функциональность. Как ни странно, когда сценарий включен, отправленные сообщения пересылаются как обычно, но также отправляются обратно отправителю, что не является нормальным. Отключение сценария отключает это поведение. Есть ли предложения о том, что мне нужно изменить, чтобы этого не произошло? Спасибо за любой совет!
smtp inet n - - - - smtpd -o content_filter=dumper:dummy
...
dumper unix - n n - 10 pipe
flags=RF user=mailuser argv=/home/mailuser/mailfilter/dumper.rb ${sender} ${recipient}`
#!/usr/bin/env ruby
require 'open3'
dir="/home/mailuser/emails"
logfile="maillog.log"
message = $stdin.read
cmd = "/usr/sbin/sendmail -G -i #{ARGV[0]} #{ARGV[1]}"
stdin, stdouterr, wait_thr = Open3.popen2e(cmd)
stdin.print(message)
logfile = File.open("#{dir}/#{logfile}", 'a')
logfile.write(stdouterr)
stdin.close
stdouterr.close
exit(0)
Это потому что ты забыл -r
Впереди #{ARGV[0]}
:)