ether_hostton

Command: man perldoc info search(apropos)  


ETHERS(3) FreeBSD Library Functions Manual ETHERS(3)

NAME
ethers, ether_line, ether_aton, ether_ntoa, ether_ntohost, ether_hostton
-- Ethernet address conversion and lookup routines

LIBRARY
Standard C Library (libc, -lc)

SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <net/ethernet.h>

int
ether_line(const char *l, struct ether_addr *e, char *hostname);

struct ether_addr *
ether_aton(const char *a);

char *
ether_ntoa(const struct ether_addr *n);

int
ether_ntohost(char *hostname, const struct ether_addr *e);

int
ether_hostton(const char *hostname, struct ether_addr *e);

DESCRIPTION
These functions operate on ethernet addresses using an ether_addr struc-
ture, which is defined in the header file <netinet/if_ether.h>:

/*
* The number of bytes in an ethernet (MAC) address.
*/
#define ETHER_ADDR_LEN 6

/*
* Structure of a 48-bit Ethernet address.
*/
struct ether_addr {
u_char octet[ETHER_ADDR_LEN];
};

The function ether_line() scans l, an ASCII string in ethers(5) format
and sets e to the ethernet address specified in the string and h to the
hostname. This function is used to parse lines from /etc/ethers into
their component parts.

The ether_aton() function converts an ASCII representation of an ethernet
address into an ether_addr structure. Likewise, ether_ntoa() converts an
ethernet address specified as an ether_addr structure into an ASCII
string.

The ether_ntohost() and ether_hostton() functions map ethernet addresses
to their corresponding hostnames as specified in the /etc/ethers data-
base. The ether_ntohost() function converts from ethernet address to
hostname, and ether_hostton() converts from hostname to ethernet address.

RETURN VALUES
The ether_line() function returns zero on success and non-zero if it was
unable to parse any part of the supplied line l. It returns the
extracted ethernet address in the supplied ether_addr structure e and the
hostname in the supplied string h.

On success, ether_ntoa() returns a pointer to a string containing an
ASCII representation of an ethernet address. If it is unable to convert
the supplied ether_addr structure, it returns a NULL pointer. Likewise,
ether_aton() returns a pointer to an ether_addr structure on success and
a NULL pointer on failure.

The ether_ntohost() and ether_hostton() functions both return zero on
success or non-zero if they were unable to find a match in the
/etc/ethers database.

NOTES
The user must insure that the hostname strings passed to the
ether_line(), ether_ntohost() and ether_hostton() functions are large
enough to contain the returned hostnames.

NIS INTERACTION
If the /etc/ethers contains a line with a single + in it, the
ether_ntohost() and ether_hostton() functions will attempt to consult the
NIS ethers.byname and ethers.byaddr maps in addition to the data in the
/etc/ethers file.

SEE ALSO
ethers(5), yp(8)

HISTORY
This particular implementation of the ethers library functions were writ-
ten for and first appeared in FreeBSD 2.1.

BUGS
The ether_aton() and ether_ntoa() functions returns values that are
stored in static memory areas which may be overwritten the next time they
are called.

FreeBSD 6.2 April 12, 1995 FreeBSD 6.2

Copyright ©2006 TheBestISP.com