// $Id$ #ifndef __INLINE_H__ #define __INLINE_H__ #ifdef GIDS #ifndef IPFW #ifdef NFNETLINKQ #include #include #include #endif /* NFNETLINKQ */ #include #include #else #include #include #include #include #endif /* IPFW */ #include "snort.h" typedef struct _inline_vals { int drop; int rejectsrc; int rejectdst; int reinject; int replace; int proto; } IV; #ifdef NFNETLINKQ u_int16_t nfqueue_num; struct nfnl_handle *nh; #else #ifndef IPFW struct ipq_handle *ipqh; #else int divert_socket; #endif /* IPFW */ #endif /* NFNETLINKQ */ IV iv; int InitInline(); void InitInlinePostConfig(void); void RejectFuRestart(); int InlineReject(Packet *); /* call to reject src in current packet for compat */ int InlineRejectBoth(Packet *); /* call to reject current packet in both directions */ int InlineRejectSrc(Packet *); /* call to reject src in current packet */ int InlineRejectDst(Packet *); /* call to reject dst in current packet */ #ifdef IPFW int InlineReinject(Packet *); /* call to reinject current packet */ #endif int InlineAccept(); int InlineReplace(); #ifdef NFNETLINKQ void NfnetlinkQLoop(); #else #ifndef IPFW void IpqLoop(); #else void IpfwLoop(); #endif /* IPFW */ #endif /* NFNETLINKQ */ #endif int InlineMode(); int InlineDrop(); /* call to drop current packet */ int opdsize; /* original packet p->dsize for resets */ #endif /* __INLINE_H__ */