• [^] # Re: PLouf ?

    Posté par . En réponse au journal Ecrasez un Mammouth !. Évalué à 3.

    A mon avis ton erreur est due au fait que le socket n'est pas supprimmé tout de suite mais par défaut environ 1 minute après la terminaison de ton serveur.

    Pour corriger ce problème il faut positionner l'option SO_REUSEADDR sur le socket pour lui indiquer que ce n'est pas fatal. Un appel a setsockopt() juste après ta création du socket avec socket() devrait faire l'affaire:


    int optval = 1;
    int socket;
    socket = socket(...);
    if (setsockopt(socket, SO_REUSEADDR, &optval, sizeof(optval)) == -1)
    // erreur
    ...


    man setsockopt pour le reste ;)