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

Boost C++ Discussion :

boost::asio probleme de reception


Sujet :

Boost C++

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 40
    Points : 33
    Points
    33
    Par défaut boost::asio probleme de reception
    Salut,
    Alors voila mon probleme. Je voudrais récupérer les données sur "mport" provenant uniquement de "mAdrIP", hors je récupère tout ce qu'il y a en UDP sur "mport".

    Voila mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
            boost::asio::io_service io_service;
            udp::socket m_socket(io_service);
    	udp::endpoint endpoint (boost::asio::ip::address::from_string(mAdrIP), mport);
    	boost::asio::socket_base::reuse_address option(true);
    	m_socket.open(udp::v4());
    	m_socket.set_option(option);
    	m_socket.bind(endpoint);
    	while(getRunning()==true)
    	{
    		recv_buf.assign(00);
    		m_socket.receive(boost::asio::buffer(recv_buf));
    		XMLsrc = recv_buf.data();
    	        parser->startParse(XMLsrc);
    	}
    Si quelqu'un avait une solution à mon problème, ça serai cool

  2. #2
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Il faut utiliser receive_from :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    size_t len = socket.receive_from(boost::asio::buffer(recv_buf), endpoint);
    cf ici

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 40
    Points : 33
    Points
    33
    Par défaut
    Si je met :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    size_t len = socket.receive_from(boost::asio::buffer(recv_buf), endpoint);
    "endpoint" ne correspond pas à l'endroit auquel je veux qu'il lise les paquets mais plutôt à l'endroit duquel vienne les paquets si j'ai bien compris la doc non?

  4. #4
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    C'est un filtre en quelque sorte....

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 40
    Points : 33
    Points
    33
    Par défaut
    Ben ça ne marche pas plus, je recupere toujours toutes les trames UDP de mport peu importe l'IP dont elles proviennent.

Discussions similaires

  1. Probleme a utiliser boost asio
    Par Pierrick584 dans le forum Linux
    Réponses: 0
    Dernier message: 20/06/2011, 01h43
  2. Réponses: 5
    Dernier message: 13/07/2006, 10h11
  3. Réponses: 3
    Dernier message: 12/07/2006, 15h56
  4. Problème de reception parametre dans script sh
    Par lolo_ici_et_la dans le forum Linux
    Réponses: 1
    Dernier message: 05/01/2006, 17h55
  5. Réponses: 4
    Dernier message: 02/06/2005, 13h08

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