Linux |
CentOS 5.3 |
|
ether_line(3) |
ether_aton, ether_ntoa, ether_ntohost, ether_hosttonn, ether_line, ether_ntoa_r, ether_aton_r − Routines de manipulation d’adresses Ethernet. |
#include <netinet/ether.h> char * ether_ntoa(const struct ether_addr *addr); struct ether_addr * ether_aton(const char *asc); int ether_ntohost(char *hostname, const struct ether_addr *addr); int ether_hostton(const char *hostname, struct ether_addr *addr); int ether_line(const char *line, struct ether_addr *addr, char *hostname); /* extensions GNU */ char * ether_ntoa_r(const struct ether_addr *addr, char *buf); struct ether_addr * ether_aton_r(const char *asc, struct ether_addr *addr); |
ether_aton() convertit une adresse d’hôte Ethernet sur 48-bits asc de la notation standard hexadécimal et séparateurs deux-points en données binaire dans l’ordre des octets du réseau et renvoie un pointeur dans un tampon alloué de manière statique, que les appels ultérieurs écraseront. ether_aton() renvoie NULL si l’adresse est invalide. La fonction ether_ntoa() convertit l’adresse d’hôte Ethernet binaire addr dans l’ordre des octets du réseau en une chaîne dans la notation standard hexadécimal et deux-points, en omettant les zéros en tête. La chaîne est renvoyée dans un tamppon alloué de manière statique, que les appels ultérieurs écraseront. La fonction ether_ntohost() met en correspondance une adresse Ethernet en un nom d’hôte trouvé dans /etc/ethers et renvoie une valeur non-nulle si elle ne trouve pas. La fonction ether_ntohost() met en correspondance un nom d’hôte et une adresse Ethernet dans /etc/ethers et renvoie une valeur non-nulle si elle ne trouve pas. La fonction ether_line() examine une ligne dans le format de /etc/ethers (adresse Ethernet suivi de blancs et d’un nom d’hôte ; « # » introduit un commentaire) et renvoie une paire adresse/nom d’hôte, ou une valeur non-nulle si elle ne trouve pas. Le tampon pointé par hostname doit être assez grand, par exemple avoir la même longueur que la ligne line. Les fonctions ether_ntoa_r() et ether_aton_r() sont les versions réentrantes et sûres en multi-threads de ether_ntoa() et ether_aton() respectivement, et n’utilisent pas de tampons statiques. La structure ether_addr est définie dans net/ethernet.h ainsi : |
struct ether_addr { u_int8_t ether_addr_octet[6]; } |
L’implémentation de ether_line() dans la glibc 2.2.5 est erronée. |
BSD 4.3, SunOS |
ethers(5) |
Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 8 juillet 2003 et révisée le 2 mai 2006. L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 3 ether_aton ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel. |
ether_line(3) |