1 | #ifndef _NETINET_ETHER_H |
2 | #include <inet/netinet/ether.h> |
3 | |
4 | # ifndef _ISOMAC |
5 | |
6 | libc_hidden_proto (ether_aton_r) |
7 | libc_hidden_proto (ether_ntoa_r) |
8 | |
9 | /* Because the `ethers' lookup does not fit so well in the scheme we |
10 | define a dummy struct here which helps us to use the available |
11 | functions. */ |
12 | struct etherent |
13 | { |
14 | const char *e_name; |
15 | struct ether_addr e_addr; |
16 | }; |
17 | |
18 | #define DECLARE_NSS_PROTOTYPES(service) \ |
19 | extern enum nss_status _nss_ ## service ## _setetherent (int __stayopen); \ |
20 | extern enum nss_status _nss_ ## service ## _endetherent (void); \ |
21 | extern enum nss_status _nss_ ## service ## _getetherent_r \ |
22 | (struct etherent *result, char *buffer, \ |
23 | size_t buflen, int *errnop); \ |
24 | extern enum nss_status _nss_ ## service ## _gethostton_r \ |
25 | (const char *name, struct etherent *eth, \ |
26 | char *buffer, size_t buflen, int *errnop); \ |
27 | extern enum nss_status _nss_ ## service ## _getntohost_r \ |
28 | (const struct ether_addr *addr, \ |
29 | struct etherent *eth, \ |
30 | char *buffer, size_t buflen, int *errnop); |
31 | |
32 | DECLARE_NSS_PROTOTYPES (files) |
33 | |
34 | #undef DECLARE_NSS_PROTOTYPES |
35 | |
36 | # endif /* !_ISOMAC */ |
37 | #endif |
38 | |