IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Segmentation fault avec un popen


Sujet :

C

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Segmentation fault avec un popen
    Bonjour à tous,

    j'ai un petit problème de "segmentation fault" avec ce bout de code servant à l'envoi de mail.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void sendmail(char* destinataire,char* message)
    {
            FILE * email= popen( "/usr/lib/sendmail", "wb" );
            fprintf( email, "To: %s\r\n",destinataire);
            fprintf( email, "From: %s\r\n",FROM );
            fprintf( email, "\r\n" );
            fprintf( email, "%s\r\n",message );
            pclose( email );
            syslog(LOG_INFO,"Mail envoyé|  %s",destinataire);
    }
    L'erreur se déclenche au premier fprintf (j'ai vérifié le pointeur destinataire est bien alloué)

    Merci

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    et quelle est la valeur de email ?
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour

    As tu vérifié que email n'était pas NULL ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    void sendmail(char* destinataire,char* message)
    {
            FILE * email= popen( "/usr/lib/sendmail", "wb" );
            if(NULL == email) {
                perror("/usr/lib/sendmail");
            } else {
                fprintf( email, "To: %s\r\n",destinataire);
                fprintf( email, "From: %s\r\n",FROM );
                fprintf( email, "\r\n" );
                fprintf( email, "%s\r\n",message );
                pclose( email );
                syslog(LOG_INFO,"Mail envoyé|  %s",destinataire);
            }
    }

  4. #4
    Futur Membre du Club
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Merci effectivement mail est null

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/lib/sendmail: Invalid argument
    Je dois pas avoir bien cerné le "sendmail"

  5. #5
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    mes connaissances sur popen sont très limitées mais je lis dans la doc :

    Citation Envoyé par doc popen
    L'argument mode est un pointeur sur une chaîne de caractères, terminée par un caractère nul, qui doit contenir à 'r' pour la lecture ou 'w' pour l'écriture.
    Je m'interroge sur la validité du mode "wb" ?
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  6. #6
    Futur Membre du Club
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par ram-0000 Voir le message
    Je m'interroge sur la validité du mode "wb" ?
    Effectivement "wb" -> "w"

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Segmentation fault avec strcmp
    Par FenX. dans le forum Débuter
    Réponses: 6
    Dernier message: 10/08/2007, 08h14
  2. segmentation fault avec wxGLCanvas
    Par Ardeciel dans le forum wxWidgets
    Réponses: 1
    Dernier message: 20/03/2007, 20h13
  3. Probleme de segmentation fault avec sprintf
    Par MathG dans le forum C++
    Réponses: 5
    Dernier message: 14/12/2006, 01h12
  4. Segmentation fault avec glCompressedTexImage2DARB
    Par patbier dans le forum OpenGL
    Réponses: 5
    Dernier message: 12/12/2005, 10h32
  5. Pb segmentation fault avec glutinit()
    Par pipistrelle dans le forum GLUT
    Réponses: 2
    Dernier message: 17/11/2004, 23h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo