Salve ilustres! Galera, estou dando um "up" em um servidor de e-mail que tenho aqui, montado por terceiros.
O cara usa o comando xfilter do maildrop para aplicar filtros nas mensagens. Este comando faz uma espécie de pipe, pegando o conteúdo da mensagem que está chegando e repassa, via STDIN para o aplicativo indicado no comando xfilter, recebendo de volta o seu conteúdo através da STDOUT do programa chamado. O programa utilizado para a filtragem pode ser um binário, um shell script, um python script, ou seja lá o que for que conseguir ler a STDIN, processá-la e devolver o resultado na STDOUT. Atualmente o servidor usa um python script para aplicar uma série de filtros nestas menagem, mas eu gostaria de substituí-lo por um shell script, que me é mais familiar e eu acredito ser mais leve e flexível. Para montar este script eu preciso de algo que remova determinados tipos de anexo, filtrando pela extensão do arquivo ou MIME. O python oferece recursos nativos para tratar de anexos de e-mail, mas o shell não (leia-se o bash), pelo menos, até onde eu saiba. Uma opção que eu teria seria usar o sed e filtrar o conteúdo recebido na STDIN procurando a parte do arquivo codificada e delimitada pelos BOUNDARY defindos no cabeçalho do e-mail. Mas isso, além de muito trabalhoso, pode falhar devido às inúmeras situações e maneiras em que uma mensagem pode conter anexos. Alguém saberia me indicar um programa em que eu pudesse passar a mensagem via STDIN e que me oferecesse a opção de identificar e remover os anexos que eu desejar? Abraço Cristiano