ETHER_ATON(3)

NOM
ether_aton, ether_ntoa, ether_ntohost, ether_hosttonn, ether_line, ether_ntoa_r, ether_aton_r - Routines de manipulation d'adresses Ethernet

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);

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 n’est pas valable.

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];
}

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consultez attributes(7).
Interface | Attribut | Valeur
ether_aton(), ether_ntoa() | Sécurité multithread | MT-Unsafe
ether_ntohost(), ether_hostton(), ether_line(), ether_ntoa_r(), ether_aton_r() | Sécurité multithread | MT-Safe

CONFORMITÉ
4.3BSD, SunOS.

BOGUES
Dans les version 2.2.5 et antérieures de la glibc, l'implémentation de ether_line() est erronée.

VOIR AUSSI
ethers(5)

COLOPHON
Cette page fait partie de la publication 3.70 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/.

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 à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».