aboutgitcodebugslistschat
path: root/icmp.h
blob: 4152b7e22ac621d95006c0dc9e7508c9af10d7d7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef ICMP_H
#define ICMP_H

struct ctx;

void icmp_sock_handler(struct ctx *c, int s, uint32_t events, char *pkt_buf,
		       struct timespec *now);
int icmp_tap_handler(struct ctx *c, int af, void *addr,
		     struct tap_msg *msg, int count, struct timespec *now);
int icmp_sock_init(struct ctx *c);

/**
 * struct icmp_ctx - Execution context for ICMP routines
 * @s4:		ICMP socket number
 * @s6:		ICMPv6 socket number
 * @fd_min:	Lowest file descriptor number for ICMP/ICMPv6 ever used
 * @fd_max:	Highest file descriptor number for ICMP/ICMPv6 ever used
 */
struct icmp_ctx {
	int s4;
	int s6;
	int fd_min;
	int fd_max;
};

#endif /* ICMP_H */