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 :

AF_INET UDP et AF_UNIX sur dans le même fichier


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut AF_INET UDP et AF_UNIX sur dans le même fichier
    bonjour,

    j'ai actuellement mis en place un socket de type UNIX domain pour une communication inter-processus et j'aimerai ajouter un second second de type AF_INET sur UDP mais je n'arrive pas à implémenter les deux ensembles.

    une idée ?

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 485
    Par défaut
    Qu'appelles-tu « le même fichier » ?

    Si tu parles du fichier de type socket créé justement par bind dans le premier cas, alors il est normal que tu ne puisses pas le faire en UDP puisque le fait de créer une entrée dans le catalogue du système de fichiers comme point de connexion est une propriété du domaine AF_UNIX.

    Plus précisément, les sockets sont une interface unifiée pour faire de la communication inter-processus proposée par BSD. Et c'est cette interface, disponible et relativement adaptée, que l'on a utilisé pour gérer les réseaux quand ils se sont démocratisés.

    Donc, tu crées un socket comme si tu créais un tube et si tu dois te mettre à l'écoute d'une connexion entrante, alors tu liesbind ») ce socket à une adresse. Et cette adresse dépend justement du domaine dans lequel tu travailles :

    — Unix (avec AF_UNIX) : tu es en local sur ta machine (ou ton mainframe) et tu t'en sers pour communiquer avec les processus à côté. Le domaine d'adressage est celui du système de fichier ;
    — Internet (avec AF_INET) : le domaine d'adressage est celui… des adresses Internet ! Tu vas donc lier ton socket à une adresse IP, munie d'un numéro de port puisque tu travailles en UDP (même chose pour TCP).

  3. #3
    Membre éprouvé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Par défaut
    Salut.

    Désolé je me suis peut-être mal exprimé. Quand je disais fichier, je parlais du même fichier .C !

    J'ai un socket AF_UNIX mais également un AF_INET. Ces deux sockets sont en mode lecture et écriture (recvfrom et sendto) mais j'aimerai que tout ceci soit totalement asynchrone.J'ai essayé de faire quelque chose avec un select mais je n'y arrive pas.

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 485
    Par défaut
    Citation Envoyé par cyrill.gremaud Voir le message
    Désolé je me suis peut-être mal exprimé. Quand je disais fichier, je parlais du même fichier .C !
    Tu parles peut-être d'un « descripteur de fichier » (fd), alors. Là encore, 1 descripteur = 1 fichier, tube, ou socket.

    J'ai un socket AF_UNIX mais également un AF_INET. Ces deux sockets sont en mode lecture et écriture (recvfrom et sendto) mais j'aimerai que tout ceci soit totalement asynchrone.J'ai essayé de faire quelque chose avec un select mais je n'y arrive pas.
    C'est pourtant bien comme cela qu'il faut procéder. Montre-nous ici ton code (encadré par les balises [code] et [/code]), et on tâchera de t'aider.

Discussions similaires

  1. Question sur un cut/paste dans un même fichier
    Par dlm64 dans le forum Shell et commandes GNU
    Réponses: 12
    Dernier message: 02/12/2012, 10h03
  2. Réponses: 5
    Dernier message: 15/03/2007, 11h21
  3. spooler dans le même fichier
    Par big1 dans le forum SQL
    Réponses: 1
    Dernier message: 25/09/2006, 14h06
  4. Réponses: 8
    Dernier message: 23/06/2006, 13h51
  5. Réponses: 5
    Dernier message: 08/12/2004, 20h42

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