Accéder au contenu.
Menu Sympa

technique - RE: [TECH] Programmation socket, AF_INET, bind, udp

Objet : Liste pour les discussions techniques (liste à inscription publique)

Archives de la liste

RE: [TECH] Programmation socket, AF_INET, bind, udp


Chronologique Discussions 
  • From: "Daniel Daube" <ddaube AT free.fr>
  • To: "'Mathieu Ignacio'" <mignacio AT april.org>, "'Liste de diffusion technique'" <technique AT april.org>
  • Subject: RE: [TECH] Programmation socket, AF_INET, bind, udp
  • Date: Sun, 9 Nov 2008 08:34:53 +0430

Merci de me desinscrire de cette liste (je vais bien finir par y
arriver....?)





-----Original Message-----
From: Mathieu Ignacio [mailto:mignacio AT april.org]
Sent: Saturday, November 08, 2008 9:38 PM
To: Liste de diffusion technique
Subject: Re: [TECH] Programmation socket, AF_INET, bind, udp

Mathieu Ignacio wrote:
> J'ai donc essayé d'utiliser une socket PF_PACKET, et je n'ai aucun
> problème lorsque l'interface est monté, mais mon recv/recvfrom me
> renvoit une erreur "Network is down" si l'interface est down. Quelqu'un
> a-t-il un pointeur sur une doc qui pourrait m'aider à résoudre ce
> problème ? J'ai bien essayé de récupérer les bouts de code C de pump et
> udhcpc pour faire qlq tests, mais je ne code plus des masses en C depuis
> quelques années (python forever !), et le remplissage des structures
> sockets me pose bien des problèmes.
>
> Merci pour tout.
> a+.
>
>
Bon, je vais me répondre un peu à moi-même car ça intéresse peut-être
d'autres personnes.

Après avoir potassé tout un tas de client DHCP en C et avoir demandé à
droite à gauche, je me suis aperçu que j'avais loupé un détail. A force de
monter des interfaces avec des IP, j'avais complètement associé de mettre
une IP à une interface et son montage donc pour moi UP était égal
IP+montage.
Que nenni !
Un bête "ifconfig eth0 up" permet de monter l'interface réseau sans avoir
aucune IP associé à cette interface, ça ne pose non seulement aucun
problème mais c'est même la seule manière de procéder pour faire un client
dhcp (mon but).

Une fois que j'ai compris ça, j'ai regardé les sources d'une manière
différente et la fonction qui permet de mettre UP une interface est ioctl
sur la socket avec l'option SIOCSIFFLAGS.

Pour la réponse précise à la question initiale, il ne me reste plus qu'a
expérimenter.

a+.
Et merci pour vos réponses.

--
Mathieu
http://matou.isanerd.net/







Archives gérées par MHonArc 2.6.16.

Haut de le page