version 1.2.2.1, 2013/06/03 10:52:28
|
version 1.2.2.2, 2013/06/03 11:41:45
|
Line 62 typedef union {
|
Line 62 typedef union {
|
} sockaddr_t; |
} sockaddr_t; |
#define E_SOCKADDR_INIT { .ss = { 0 } } |
#define E_SOCKADDR_INIT { .ss = { 0 } } |
|
|
|
typedef union { |
|
struct in_addr in; |
|
struct in6_addr in6; |
|
} inaddr_t; |
|
|
|
typedef struct { |
|
sockaddr_t addr; |
|
inaddr_t mask; |
|
} netaddr_t; |
|
|
#define E_CIDRMASK(x) ((((1 << (x)) - 1) << (32 - (x))) & 0xFFFFFFFF) |
#define E_CIDRMASK(x) ((((1 << (x)) - 1) << (32 - (x))) & 0xFFFFFFFF) |
|
|
|
|
Line 123 sockaddr_t *e_gethostbyname(const char *psHost, unsign
|
Line 133 sockaddr_t *e_gethostbyname(const char *psHost, unsign
|
* return: 0 is equal or !=0 is different |
* return: 0 is equal or !=0 is different |
*/ |
*/ |
int e_addrcmp(sockaddr_t * __restrict a, sockaddr_t * __restrict b, int p); |
int e_addrcmp(sockaddr_t * __restrict a, sockaddr_t * __restrict b, int p); |
|
/* |
|
* e_innet() - Test address match in network |
|
* |
|
* @net = network |
|
* @addr = address |
|
* return: -1 error, 0 match or 1 not match |
|
*/ |
|
int e_innet(netaddr_t * __restrict net, netaddr_t * __restrict addr); |
|
|
|
|
#endif |
#endif |