xref: /freebsd-src/contrib/pf/tftp-proxy/filter.h (revision fc515400ab05695df359c4b4d5fab9285a642699)
1*67ecd4f3SMax Laier /*	$OpenBSD: filter.h,v 1.1 2005/12/28 19:07:07 jcs Exp $ */
2*67ecd4f3SMax Laier 
3*67ecd4f3SMax Laier /*
4*67ecd4f3SMax Laier  * Copyright (c) 2004, 2005 Camiel Dobbelaar, <cd@sentia.nl>
5*67ecd4f3SMax Laier  *
6*67ecd4f3SMax Laier  * Permission to use, copy, modify, and distribute this software for any
7*67ecd4f3SMax Laier  * purpose with or without fee is hereby granted, provided that the above
8*67ecd4f3SMax Laier  * copyright notice and this permission notice appear in all copies.
9*67ecd4f3SMax Laier  *
10*67ecd4f3SMax Laier  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11*67ecd4f3SMax Laier  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12*67ecd4f3SMax Laier  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13*67ecd4f3SMax Laier  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14*67ecd4f3SMax Laier  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15*67ecd4f3SMax Laier  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16*67ecd4f3SMax Laier  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17*67ecd4f3SMax Laier  */
18*67ecd4f3SMax Laier 
19*67ecd4f3SMax Laier #define	FTP_PROXY_ANCHOR "tftp-proxy"
20*67ecd4f3SMax Laier 
21*67ecd4f3SMax Laier int add_filter(u_int32_t, u_int8_t, struct sockaddr *, struct sockaddr *,
22*67ecd4f3SMax Laier     u_int16_t, u_int8_t);
23*67ecd4f3SMax Laier int add_nat(u_int32_t, struct sockaddr *, struct sockaddr *, u_int16_t,
24*67ecd4f3SMax Laier     struct sockaddr *, u_int16_t, u_int16_t, u_int8_t);
25*67ecd4f3SMax Laier int add_rdr(u_int32_t, struct sockaddr *, struct sockaddr *, u_int16_t,
26*67ecd4f3SMax Laier     struct sockaddr *, u_int16_t, u_int8_t);
27*67ecd4f3SMax Laier int do_commit(void);
28*67ecd4f3SMax Laier int do_rollback(void);
29*67ecd4f3SMax Laier void init_filter(char *, int);
30*67ecd4f3SMax Laier int prepare_commit(u_int32_t);
31*67ecd4f3SMax Laier int server_lookup(struct sockaddr *, struct sockaddr *, struct sockaddr *,
32*67ecd4f3SMax Laier     u_int8_t);
33