3 votes

Paquets UDP bruts utilisant Twisted

J'utilise actuellement Twisted 10.1 pour recevoir et analyser des paquets UDP, mais l'implémentation standard de reactor.listenUDP() ne me donne accès qu'aux données du paquet, et j'ai besoin de récupérer la longueur du paquet à partir des en-têtes UDP.

J'ai essayé les produits Twisted pairudp.py mais il échoue avec un "ImportError : No module named eunuchs.tuntap". La recherche de python-eunuchs dans le cache d'apt n'a rien donné, et si l'on regarde la page d'accueil d'Ubuntu recherche de colis Je constate que python-eunuchs ne fait plus partie d'Ubuntu depuis Dapper, vers 2006.

Dans tous les cas, le projet Twisted Pair lui-même est listé sur son site web. twistedmatrix.com n'est pas maintenue, et j'hésiterais donc à lancer un projet utilisant l'une de ses bibliothèques.

Quelqu'un peut-il me donner des indications ou même un exemple (fonctionnel ?) sur la façon dont je peux faire cela en utilisant Twisted 10.1 / 10.2 ?

Mise à jour

Comme l'a souligné Glyph, j'essaie de résoudre de manière complexe un problème qui peut être résolu simplement. Puisque je peux obtenir la longueur des données du paquet en utilisant len(data), et puisque la longueur d'un fichier En-tête de paquet UDP est de 8 octets, totalSizeOfUdpPacket = 8 + len(data).

* facepalm *

2voto

Claudiu Points 58398

Comme l'a souligné Glyph, vous essayez de résoudre de manière complexe un problème qui peut être résolu simplement. Puisque vous pouvez obtenir la longueur des données du paquet en utilisant len(data), et puisque la longueur d'un en-tête de paquet UDP est de 8 octets, totalSizeOfUdpPacket = 8 + len(data).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X