diff options
author | darrenr <darrenr@FreeBSD.org> | 2000-05-24 04:21:35 +0000 |
---|---|---|
committer | darrenr <darrenr@FreeBSD.org> | 2000-05-24 04:21:35 +0000 |
commit | 28218f546c7ba8b4fba010c0b0a1af5867aba192 (patch) | |
tree | 9a2fc1fac66823268c991d7585f8101708423fd3 /sys/netinet/ip_proxy.h | |
parent | 08110f1e41975fed5b0ad5608d36a10683520a31 (diff) | |
download | FreeBSD-src-28218f546c7ba8b4fba010c0b0a1af5867aba192.zip FreeBSD-src-28218f546c7ba8b4fba010c0b0a1af5867aba192.tar.gz |
fix conflicts
Diffstat (limited to 'sys/netinet/ip_proxy.h')
-rw-r--r-- | sys/netinet/ip_proxy.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/sys/netinet/ip_proxy.h b/sys/netinet/ip_proxy.h index 9ccd46a..edee695 100644 --- a/sys/netinet/ip_proxy.h +++ b/sys/netinet/ip_proxy.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1997-1998 by Darren Reed. + * Copyright (C) 1997-2000 by Darren Reed. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and due credit is given @@ -55,7 +55,7 @@ typedef struct ap_session { int aps_psiz; /* size of private data */ struct ap_session *aps_hnext; struct ap_session *aps_next; -} ap_session_t ; +} ap_session_t; #define aps_sport aps_un.apu_tcp.apt_sport #define aps_dport aps_un.apu_tcp.apt_dport @@ -68,11 +68,13 @@ typedef struct ap_session { typedef struct aproxy { + struct aproxy *apr_next; char apr_label[APR_LABELLEN]; /* Proxy label # */ u_char apr_p; /* protocol */ int apr_ref; /* +1 per rule referencing it */ int apr_flags; int (* apr_init) __P((void)); + void (* apr_fini) __P((void)); int (* apr_new) __P((fr_info_t *, ip_t *, ap_session_t *, struct nat *)); int (* apr_inpkt) __P((fr_info_t *, ip_t *, @@ -83,6 +85,26 @@ typedef struct aproxy { #define APR_DELETE 1 +#define APR_ERR(x) (((x) & 0xffff) << 16) +#define APR_EXIT(x) (((x) >> 16) & 0xffff) +#define APR_INC(x) ((x) & 0xffff) + +#define FTP_BUFSZ 160 +/* + * For the ftp proxy. + */ +typedef struct ftpside { + char *ftps_rptr; + char *ftps_wptr; + u_32_t ftps_seq; + int ftps_junk; + char ftps_buf[FTP_BUFSZ]; +} ftpside_t; + +typedef struct ftpinfo { + u_int ftp_passok; + ftpside_t ftp_side[2]; +} ftpinfo_t; /* * Real audio proxy structure and #defines @@ -119,8 +141,12 @@ typedef struct { extern ap_session_t *ap_sess_tab[AP_SESS_SIZE]; extern ap_session_t *ap_sess_list; extern aproxy_t ap_proxies[]; +extern int ippr_ftp_pasvonly; +extern int appr_add __P((aproxy_t *)); +extern int appr_del __P((aproxy_t *)); extern int appr_init __P((void)); +extern void appr_unload __P((void)); extern int appr_ok __P((ip_t *, tcphdr_t *, struct ipnat *)); extern void appr_free __P((aproxy_t *)); extern void aps_free __P((ap_session_t *)); |