summaryrefslogtreecommitdiffstats
path: root/include/libnetfilter_conntrack/libnetfilter_conntrack_l3extensions.h
blob: 86e002addb3599f3ef6f36a2bbbdfb87158ea9ff (plain)
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
27
28
29
/*
 * (C) 2005 by Pablo Neira Ayuso <pablo@eurodev.net>
 *
 * This software may be used and distributed according to the terms
 * of the GNU General Public License, incorporated herein by reference.
 */

#ifndef _LIBNETFILTER_CONNTRACK_L3EXTENSIONS_H_
#define _LIBNETFILTER_CONNTRACK_L3EXTENSIONS_H_

#include "linux_list.h"

struct nfct_l3proto {
	struct list_head head;
	
	char 		*name;
	u_int16_t 	protonum;
	char		*version;
	
	void (*parse_proto)(struct nfattr **, struct nfct_tuple *);
	void (*build_tuple_proto)(struct nfnlhdr *, int, struct nfct_tuple *);
	int (*print_proto)(char *, struct nfct_tuple *);
	int (*compare)(struct nfct_conntrack *, struct nfct_conntrack *,
		       unsigned int);
};

extern void nfct_register_l3proto(struct nfct_l3proto *h);

#endif