2010-11-15 6 views
5

J'ai un serveur UDP plutôt simple écrit sur c. Parfois, j'ai besoin de connaître la longueur actuelle de tous les paquets udp (octets) mis en file d'attente dans le socket. Si je comprends bien, getsockopt n'obtient pas de telles informations.Longueur actuelle de la file d'attente des paquets udp

Les solutions Linux et FreeBSD sont les bienvenues, merci!

Répondre

3

ioctl(FIONREAD, ...) devrait être à peu près ce que vous cherchez,

http://www.daemon-systems.org/man/ioctl.2.html

+0

Oui, c'est vrai! Merci beaucoup! – kost

+1

En fait, cela ne fonctionne pas sur Linux. Voir http://stackoverflow.com/questions/9278189/how-do-i-get-amount-of-queued-data-for-udp-socket – Anne

1

A partir de l'extérieur du serveur (ligne de commande), vous pouvez le faire

netstat -uln

qui vous montrera la longueur de toutes les prises d'écoute udp.

Questions connexes