Sendmail encoding piece jointe pdf
Lost
-
bibi -
bibi -
Bonjour,
J'ai un programme C sur une application qui a pour but d'envoyer par mail un fichier pdf en pièce jointe.
Ce prog appelle un script qui construit un fichier qui sera le paramètre d'entrée de la commande sendmail
Le pb est le suivant : Je mets plusieurs expéditeurs et certains reçoivent le fichier correctement mais d'autres le reçoivent corrompu !!!
Voici les infos majeures du fichier :
/usr/bin/echo "From: $ME\r\n\c" > $FICHIER
/usr/bin/echo "To: $adr\r\n\c" >> $FICHIER
/usr/bin/echo "Subject: $SUJET\r\n\c" >> $FICHIER
/usr/bin/echo "Priority: normal\r\n\c" >> $FICHIER
/usr/bin/echo "MIME-Version: 1.0\r\n\c" >> $FICHIER
/usr/bin/echo "Content-type: multipart/mixed; \c" >> $FICHIER
/usr/bin/echo "boundary=\042$BOUNDARY\042\r\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "This is a multi-part message in MIME format.\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "--$BOUNDARY\r\n\c" >> $FICHIER
/usr/bin/echo "Content-type: text/plain; charset=iso-8859-1\r\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "$COMMENT\n\c" >> $FICHIER
Et plus loin pour la pièce jointe :
/usr/bin/echo "Content-type: application/octet-stream; \c" >> $FICHIER.uu
/usr/bin/echo "name=\042$nom\042\r\n\c" >> $FICHIER.uu
/usr/bin/echo "Content-Transfer-Encoding: x-uuencode\r\n\c" >> $FICHIER.uu
/usr/bin/echo "Content-Disposition: inline; \c" >> $FICHIER.uu
/usr/bin/echo "filename=\042$nom\042\r\n\c" >> $FICHIER.uu
/usr/bin/echo "\r\n\c" >> $FICHIER.uu
# Encode le fichier
uuencode $file < $file >> $FICHIER.uu
Et enfin l'envoi : cat $FICHIER.uu | sendmail -f$ME $adr
Pourquoi ça ne marche pas sur certains serveurs en réception ? Que dois-je modifier pour que ce soit plus universel ?
J'ai essayé avec plusieurs variantes dont le charset us-ascii, ainsi que le content-type application/pdf
Pour encoder, j'utilise uuencode, serait-ce possible d'obtenir l'exécutable base64 (version unix) pour faire un test ?
Est-ce que qqn a une idée parce que je sèche !
Merci bcp.
TiTi
J'ai un programme C sur une application qui a pour but d'envoyer par mail un fichier pdf en pièce jointe.
Ce prog appelle un script qui construit un fichier qui sera le paramètre d'entrée de la commande sendmail
Le pb est le suivant : Je mets plusieurs expéditeurs et certains reçoivent le fichier correctement mais d'autres le reçoivent corrompu !!!
Voici les infos majeures du fichier :
/usr/bin/echo "From: $ME\r\n\c" > $FICHIER
/usr/bin/echo "To: $adr\r\n\c" >> $FICHIER
/usr/bin/echo "Subject: $SUJET\r\n\c" >> $FICHIER
/usr/bin/echo "Priority: normal\r\n\c" >> $FICHIER
/usr/bin/echo "MIME-Version: 1.0\r\n\c" >> $FICHIER
/usr/bin/echo "Content-type: multipart/mixed; \c" >> $FICHIER
/usr/bin/echo "boundary=\042$BOUNDARY\042\r\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "This is a multi-part message in MIME format.\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "--$BOUNDARY\r\n\c" >> $FICHIER
/usr/bin/echo "Content-type: text/plain; charset=iso-8859-1\r\n\c" >> $FICHIER
/usr/bin/echo "\r\n\c" >> $FICHIER
/usr/bin/echo "$COMMENT\n\c" >> $FICHIER
Et plus loin pour la pièce jointe :
/usr/bin/echo "Content-type: application/octet-stream; \c" >> $FICHIER.uu
/usr/bin/echo "name=\042$nom\042\r\n\c" >> $FICHIER.uu
/usr/bin/echo "Content-Transfer-Encoding: x-uuencode\r\n\c" >> $FICHIER.uu
/usr/bin/echo "Content-Disposition: inline; \c" >> $FICHIER.uu
/usr/bin/echo "filename=\042$nom\042\r\n\c" >> $FICHIER.uu
/usr/bin/echo "\r\n\c" >> $FICHIER.uu
# Encode le fichier
uuencode $file < $file >> $FICHIER.uu
Et enfin l'envoi : cat $FICHIER.uu | sendmail -f$ME $adr
Pourquoi ça ne marche pas sur certains serveurs en réception ? Que dois-je modifier pour que ce soit plus universel ?
J'ai essayé avec plusieurs variantes dont le charset us-ascii, ainsi que le content-type application/pdf
Pour encoder, j'utilise uuencode, serait-ce possible d'obtenir l'exécutable base64 (version unix) pour faire un test ?
Est-ce que qqn a une idée parce que je sèche !
Merci bcp.
TiTi
A voir également:
- Sendmail encoding piece jointe pdf
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Pièce d'identité - Accueil - Services publics
- 1 pièce jointe - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Télécharger dictionnaire larousse pdf gratuit - Télécharger - Dictionnaires & Langues
2 réponses
Salut,
tu peux en effet essayer base64 :
http://www.fourmilab.ch/webtools/base64/
les clients qui recoivent le fichier corrompu on un client de messagerie particulier aux autres ? (gnere qui n'arriverai pas à décoder la pièce jointe)
tu peux en effet essayer base64 :
http://www.fourmilab.ch/webtools/base64/
les clients qui recoivent le fichier corrompu on un client de messagerie particulier aux autres ? (gnere qui n'arriverai pas à décoder la pièce jointe)