1. NOM▲
ether_aton, ether_ntoa, ether_ntohost, ether_hosttonn, ether_line, ether_ntoa_r, ether_aton_r - Routines de manipulation d'adresses Ethernet
2. SYNOPSIS ▲
#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);
3. DESCRIPTION ▲
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 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 tampon alloué statiquement, que les appels ultérieurs écraseront.
La fonction ether_ntohost() met en correspondance une adresse Ethernet avec un nom d'hôte trouvé dans /etc/ethers et renvoie une valeur non nulle si elle ne trouve rien.
La fonction ether_hostton() met en correspondance un nom d'hôte et une adresse Ethernet de /etc/ethers et renvoie une valeur non nulle si elle ne trouve aucune correspondance.
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 et nom d'hôte, ou une valeur non nulle si le fichier ne peut être lu. 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 multithread sûres 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 {
uint8_t ether_addr_octet[6
];
}
4. ATTRIBUTS ▲
4.1. Multithreading (voir pthreads(7)) ▲
Les fonctions ether_aton() et ether_ntoa() ne sont pas sûres dans un contexte multithread.
Les fonctions ether_ntohost(), ether_hostton(), ether_line(), ether_ntoa_r() et ether_aton_r() sont sûres dans un contexte multithread.
5. CONFORMITÉ ▲
4.3BSD, SunOS.
6. BOGUES ▲
L'implémentation de ether_line() dans la glibc 2.2.5 est erronée.
7. VOIR AUSSI ▲
ethers(5)
8. COLOPHON ▲
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
9. TRADUCTION ▲
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».