Contents of /trunk/mkinitrd-magellan/busybox/networking/libiproute/utils.h
Parent Directory | Revision Log
Revision 532 -
(show annotations)
(download)
Sat Sep 1 22:45:15 2007 UTC (16 years, 9 months ago) by niro
File MIME type: text/plain
File size: 2475 byte(s)
Sat Sep 1 22:45:15 2007 UTC (16 years, 9 months ago) by niro
File MIME type: text/plain
File size: 2475 byte(s)
-import if magellan mkinitrd; it is a fork of redhats mkinitrd-5.0.8 with all magellan patches and features; deprecates magellan-src/mkinitrd
1 | /* vi: set sw=4 ts=4: */ |
2 | #ifndef __UTILS_H__ |
3 | #define __UTILS_H__ 1 |
4 | |
5 | #include "libbb.h" |
6 | |
7 | #include "libnetlink.h" |
8 | #include "ll_map.h" |
9 | #include "rtm_map.h" |
10 | |
11 | extern int preferred_family; |
12 | extern int show_stats; |
13 | extern int show_details; |
14 | extern int show_raw; |
15 | extern int resolve_hosts; |
16 | extern int oneline; |
17 | extern char * _SL_; |
18 | |
19 | #ifndef IPPROTO_ESP |
20 | #define IPPROTO_ESP 50 |
21 | #endif |
22 | #ifndef IPPROTO_AH |
23 | #define IPPROTO_AH 51 |
24 | #endif |
25 | |
26 | #define SPRINT_BSIZE 64 |
27 | #define SPRINT_BUF(x) char x[SPRINT_BSIZE] |
28 | |
29 | extern void incomplete_command(void) ATTRIBUTE_NORETURN; |
30 | |
31 | #define NEXT_ARG() do { argv++; if (--argc <= 0) incomplete_command(); } while (0) |
32 | |
33 | typedef struct |
34 | { |
35 | uint8_t family; |
36 | uint8_t bytelen; |
37 | int16_t bitlen; |
38 | uint32_t data[4]; |
39 | } inet_prefix; |
40 | |
41 | #define DN_MAXADDL 20 |
42 | #ifndef AF_DECnet |
43 | #define AF_DECnet 12 |
44 | #endif |
45 | |
46 | struct dn_naddr |
47 | { |
48 | unsigned short a_len; |
49 | unsigned char a_addr[DN_MAXADDL]; |
50 | }; |
51 | |
52 | #define IPX_NODE_LEN 6 |
53 | |
54 | struct ipx_addr { |
55 | uint32_t ipx_net; |
56 | uint8_t ipx_node[IPX_NODE_LEN]; |
57 | }; |
58 | |
59 | extern uint32_t get_addr32(char *name); |
60 | 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); |
62 | extern int get_addr(inet_prefix *dst, char *arg, int family); |
63 | extern int get_prefix(inet_prefix *dst, char *arg, int family); |
64 | |
65 | extern int get_integer(int *val, char *arg, int base); |
66 | extern int get_unsigned(unsigned *val, char *arg, int base); |
67 | #define get_byte get_u8 |
68 | #define get_ushort get_u16 |
69 | #define get_short get_s16 |
70 | extern int get_u32(uint32_t *val, char *arg, int base); |
71 | extern int get_u16(uint16_t *val, char *arg, int base); |
72 | extern int get_s16(int16_t *val, char *arg, int base); |
73 | extern int get_u8(uint8_t *val, char *arg, int base); |
74 | extern int get_s8(int8_t *val, char *arg, int base); |
75 | |
76 | extern const char *format_host(int af, int len, void *addr, char *buf, int buflen); |
77 | extern const char *rt_addr_n2a(int af, int len, void *addr, char *buf, int buflen); |
78 | |
79 | void invarg(const char * const, const char * const) ATTRIBUTE_NORETURN; |
80 | void duparg(char *, char *) ATTRIBUTE_NORETURN; |
81 | void duparg2(char *, char *) ATTRIBUTE_NORETURN; |
82 | int matches(char *arg, char *pattern); |
83 | extern int inet_addr_match(inet_prefix *a, inet_prefix *b, int bits); |
84 | |
85 | const char *dnet_ntop(int af, const void *addr, char *str, size_t len); |
86 | int dnet_pton(int af, const char *src, void *addr); |
87 | |
88 | const char *ipx_ntop(int af, const void *addr, char *str, size_t len); |
89 | int ipx_pton(int af, const char *src, void *addr); |
90 | |
91 | #endif /* __UTILS_H__ */ |