xref: /freebsd/tests/sys/netinet/libalias/util.h (revision c1fbb54f4b100d576da7ab065d1887a21f691936)
1*c1fbb54fSLutz Donnerhacke #include <sys/types.h>
2*c1fbb54fSLutz Donnerhacke 
3*c1fbb54fSLutz Donnerhacke #include <arpa/inet.h>
4*c1fbb54fSLutz Donnerhacke #include <netinet/ip.h>
5*c1fbb54fSLutz Donnerhacke #include <netinet/udp.h>
6*c1fbb54fSLutz Donnerhacke 
7*c1fbb54fSLutz Donnerhacke #ifndef _UTIL_H
8*c1fbb54fSLutz Donnerhacke #define _UTIL_H
9*c1fbb54fSLutz Donnerhacke 
10*c1fbb54fSLutz Donnerhacke int		randcmp(const void *a, const void *b);
11*c1fbb54fSLutz Donnerhacke void		hexdump(void *p, size_t len);
12*c1fbb54fSLutz Donnerhacke struct ip *	ip_packet(struct in_addr src, struct in_addr dst, u_char protocol, size_t len);
13*c1fbb54fSLutz Donnerhacke struct udphdr * set_udp(struct ip *p, u_short sport, u_short dport);
14*c1fbb54fSLutz Donnerhacke 
15*c1fbb54fSLutz Donnerhacke inline int
16*c1fbb54fSLutz Donnerhacke addr_eq(struct in_addr a, struct in_addr b)
17*c1fbb54fSLutz Donnerhacke {
18*c1fbb54fSLutz Donnerhacke 	return a.s_addr == b.s_addr;
19*c1fbb54fSLutz Donnerhacke }
20*c1fbb54fSLutz Donnerhacke 
21*c1fbb54fSLutz Donnerhacke #define a2h(a)	ntohl(a.s_addr)
22*c1fbb54fSLutz Donnerhacke 
23*c1fbb54fSLutz Donnerhacke inline int
24*c1fbb54fSLutz Donnerhacke rand_range(int min, int max)
25*c1fbb54fSLutz Donnerhacke {
26*c1fbb54fSLutz Donnerhacke 	return min + rand()%(max - min);
27*c1fbb54fSLutz Donnerhacke }
28*c1fbb54fSLutz Donnerhacke 
29*c1fbb54fSLutz Donnerhacke #endif /* _UTIL_H */
30