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

Réseau Discussion :

Erreur connect() lors de la 2eme connection TCP


Sujet :

Réseau

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 189
    Points : 60
    Points
    60
    Par défaut Erreur connect() lors de la 2eme connection TCP
    Bonjour,

    grosse modo j'aimerais créer deux connections TCP entre un serveur et un client. La premiere connection étant initié par le client et la deuxieme initiée par le serveur.

    Plus en détail, dans mon application un serveur fait un accept(...&client....) et est donc en possession d'une struct sockaddr client remplie.

    J'aimerais maintenant faire en sorte que ce serveur se connecte vers le client dont les paramètres de connection sont connus grace à la struct sockaddr recue via le accept. Bien entendu le client de départ fera maintenant office de serveur.

    J'aimerais savoir si je peux utiliser directement la struct sockaddr client en changeant uniquement le port... je pense que non car en faisant celà le connect me donne une erreur. Mais je ne vois pas comment faire autrement.

    Si vous avez des idées elles sont les bienvenues. Merci davance

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 955
    Points : 4 384
    Points
    4 384
    Par défaut
    Citation Envoyé par innosang
    Bonjour,

    grosse modo j'aimerais créer deux connections TCP entre un serveur et un client. La premiere connection étant initié par le client et la deuxieme initiée par le serveur.

    Plus en détail, dans mon application un serveur fait un accept(...&client....) et est donc en possession d'une struct sockaddr client remplie.

    J'aimerais maintenant faire en sorte que ce serveur se connecte vers le client dont les paramètres de connection sont connus grace à la struct sockaddr recue via le accept. Bien entendu le client de départ fera maintenant office de serveur.

    J'aimerais savoir si je peux utiliser directement la struct sockaddr client en changeant uniquement le port... je pense que non car en faisant celà le connect me donne une erreur. Mais je ne vois pas comment faire autrement.

    Si vous avez des idées elles sont les bienvenues. Merci davance
    non bien sûr on ne peut pas "connect" deux fois les mêmes interlocateurs via les mêmes ports…

    si vous voulez inverser les rôles, le client devrait communiquer au serveur le port sur lequel celui-ci devrait le recontacter…
    ce qui signifie allouer un nouveau socket et le "bind" à ce port côté client…
    cela peut se faire au moment où le client accède un serveur, il crée un socket qu'il binde à son port qui servira de serveur "en retour" et passe le numéro de ce port au serveur… qui lui s'y connectera comme client…

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/05/2008, 11h56
  2. Réponses: 4
    Dernier message: 09/04/2008, 03h24
  3. Réponses: 16
    Dernier message: 17/12/2007, 21h37
  4. Erreur de Connection lors du test d'un Service Web
    Par metalcoyote dans le forum Services Web
    Réponses: 5
    Dernier message: 18/09/2007, 16h00
  5. Erreur connect() lors de la 2eme connection TCP
    Par innosang dans le forum Développement
    Réponses: 2
    Dernier message: 15/01/2007, 17h38

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