enum { IPaddrlen= 16, IPv4addrlen= 4, IPv4off= 12,}; uchar* defmask(uchar*);void maskip(uchar*, uchar*, uchar*);int eipfmt(Fmt*);int isv4(uchar*);vlong parseip(uchar*, char*);vlong parseipmask(uchar*, char*);char* v4parseip(uchar*, char*);char* v4parsecidr(uchar*, uchar*, char*); void hnputv(void*, uvlong);void hnputl(void*, uint);void hnputs(void*, ushort);uvlong nhgetv(void*);uint nhgetl(void*);ushort nhgets(void*); int v6tov4(uchar*, uchar*);void v4tov6(uchar*, uchar*); #define ipcmp(x, y) memcmp(x, y, IPaddrlen)#define ipmove(x, y) memmove(x, y, IPaddrlen) extern uchar IPv4bcast[IPaddrlen];extern uchar IPv4bcastobs[IPaddrlen];extern uchar IPv4allsys[IPaddrlen];extern uchar IPv4allrouter[IPaddrlen];extern uchar IPnoaddr[IPaddrlen];extern uchar v4prefix[IPaddrlen];extern uchar IPallbits[IPaddrlen]; #define CLASS(p) ((*(uchar*)(p))>>6)
enum
{
IPaddrlen= 16,
IPv4addrlen= 4,
IPv4off= 12,
};
uchar* defmask(uchar*);
void maskip(uchar*, uchar*, uchar*);
int eipfmt(Fmt*);
int isv4(uchar*);
vlong parseip(uchar*, char*);
vlong parseipmask(uchar*, char*);
char* v4parseip(uchar*, char*);
char* v4parsecidr(uchar*, uchar*, char*);
void hnputv(void*, uvlong);
void hnputl(void*, uint);
void hnputs(void*, ushort);
uvlong nhgetv(void*);
uint nhgetl(void*);
ushort nhgets(void*);
int v6tov4(uchar*, uchar*);
void v4tov6(uchar*, uchar*);
#define ipcmp(x, y) memcmp(x, y, IPaddrlen)
#define ipmove(x, y) memmove(x, y, IPaddrlen)
extern uchar IPv4bcast[IPaddrlen];
extern uchar IPv4bcastobs[IPaddrlen];
extern uchar IPv4allsys[IPaddrlen];
extern uchar IPv4allrouter[IPaddrlen];
extern uchar IPnoaddr[IPaddrlen];
extern uchar v4prefix[IPaddrlen];
extern uchar IPallbits[IPaddrlen];
#define CLASS(p) ((*(uchar*)(p))>>6)