1 |
/* vi: set sw=4 ts=4: */ |
/* vi: set sw=4 ts=4: */ |
2 |
#ifndef __UTILS_H__ |
#ifndef UTILS_H |
3 |
#define __UTILS_H__ 1 |
#define UTILS_H 1 |
4 |
|
|
5 |
#include "libnetlink.h" |
#include "libnetlink.h" |
6 |
#include "ll_map.h" |
#include "ll_map.h" |
7 |
#include "rtm_map.h" |
#include "rtm_map.h" |
8 |
|
|
9 |
#if __GNUC_PREREQ(4,1) |
PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN |
|
# pragma GCC visibility push(hidden) |
|
|
#endif |
|
10 |
|
|
11 |
extern family_t preferred_family; |
extern family_t preferred_family; |
12 |
extern smallint show_stats; /* UNUSED */ |
extern smallint show_stats; /* UNUSED */ |
58 |
|
|
59 |
extern uint32_t get_addr32(char *name); |
extern uint32_t get_addr32(char *name); |
60 |
extern int get_addr_1(inet_prefix *dst, char *arg, int family); |
extern int get_addr_1(inet_prefix *dst, char *arg, int family); |
61 |
extern int get_prefix_1(inet_prefix *dst, char *arg, int family); |
/*extern int get_prefix_1(inet_prefix *dst, char *arg, int family);*/ |
62 |
extern int get_addr(inet_prefix *dst, char *arg, int family); |
extern int get_addr(inet_prefix *dst, char *arg, int family); |
63 |
extern int get_prefix(inet_prefix *dst, char *arg, int family); |
extern int get_prefix(inet_prefix *dst, char *arg, int family); |
64 |
|
|
65 |
extern int get_integer(int *val, char *arg, int base); |
extern unsigned get_unsigned(char *arg, const char *errmsg); |
66 |
extern int get_unsigned(unsigned *val, char *arg, int base); |
extern uint32_t get_u32(char *arg, const char *errmsg); |
67 |
#define get_byte get_u8 |
extern uint16_t get_u16(char *arg, const char *errmsg); |
|
#define get_ushort get_u16 |
|
|
#define get_short get_s16 |
|
|
extern int get_u32(uint32_t *val, char *arg, int base); |
|
|
extern int get_u16(uint16_t *val, char *arg, int base); |
|
|
extern int get_s16(int16_t *val, char *arg, int base); |
|
|
extern int get_u8(uint8_t *val, char *arg, int base); |
|
|
extern int get_s8(int8_t *val, char *arg, int base); |
|
68 |
|
|
69 |
|
extern const char *rt_addr_n2a(int af, void *addr, char *buf, int buflen); |
70 |
|
#ifdef RESOLVE_HOSTNAMES |
71 |
extern const char *format_host(int af, int len, void *addr, char *buf, int buflen); |
extern const char *format_host(int af, int len, void *addr, char *buf, int buflen); |
72 |
extern const char *rt_addr_n2a(int af, int len, void *addr, char *buf, int buflen); |
#else |
73 |
|
#define format_host(af, len, addr, buf, buflen) \ |
74 |
|
rt_addr_n2a(af, addr, buf, buflen) |
75 |
|
#endif |
76 |
|
|
77 |
void invarg(const char *, const char *) NORETURN; |
void invarg(const char *, const char *) NORETURN; |
78 |
void duparg(const char *, const char *) NORETURN; |
void duparg(const char *, const char *) NORETURN; |
85 |
const char *ipx_ntop(int af, const void *addr, char *str, size_t len); |
const char *ipx_ntop(int af, const void *addr, char *str, size_t len); |
86 |
int ipx_pton(int af, const char *src, void *addr); |
int ipx_pton(int af, const char *src, void *addr); |
87 |
|
|
88 |
#if __GNUC_PREREQ(4,1) |
POP_SAVED_FUNCTION_VISIBILITY |
|
# pragma GCC visibility pop |
|
|
#endif |
|
89 |
|
|
90 |
#endif /* __UTILS_H__ */ |
#endif |