ipf.h revision 60841
1963Sats/* 24435Sgibbs * Copyright (C) 1993-2000 by Darren Reed. 38876Srgrimes * 4963Sats * Redistribution and use in source and binary forms are permitted 54435Sgibbs * provided that this notice is preserved and due credit is given 64435Sgibbs * to the original author and the contributors. 74435Sgibbs * 84435Sgibbs * @(#)ipf.h 1.12 6/5/96 913765Smpp * $Id: ipf.h,v 2.9.2.2 2000/05/06 11:20:20 darrenr Exp $ 108876Srgrimes */ 114435Sgibbs 124435Sgibbs#ifndef __IPF_H__ 134435Sgibbs#define __IPF_H__ 144435Sgibbs 154435Sgibbs#ifndef SOLARIS 164435Sgibbs#define SOLARIS (defined(sun) && (defined(__svr4__) || defined(__SVR4))) 174435Sgibbs#endif 184435Sgibbs#define OPT_REMOVE 0x000001 194435Sgibbs#define OPT_DEBUG 0x000002 204435Sgibbs#define OPT_OUTQUE FR_OUTQUE /* 0x00004 */ 218876Srgrimes#define OPT_INQUE FR_INQUE /* 0x00008 */ 2250477Speter#define OPT_LOG FR_LOG /* 0x00010 */ 237510Sjkh#define OPT_SHOWLIST 0x000020 244435Sgibbs#define OPT_VERBOSE 0x000040 254435Sgibbs#define OPT_DONOTHING 0x000080 2651673Smdodd#define OPT_HITS 0x000100 2751673Smdodd#define OPT_BRIEF 0x000200 2816374Snate#define OPT_ACCNT FR_ACCOUNT /* 0x0400 */ 2951673Smdodd#define OPT_FRSTATES FR_KEEPFRAG /* 0x0800 */ 3051673Smdodd#define OPT_IPSTATES FR_KEEPSTATE /* 0x1000 */ 3116374Snate#define OPT_INACTIVE FR_INACTIVE /* 0x2000 */ 3216374Snate#define OPT_SHOWLINENO 0x004000 334435Sgibbs#define OPT_PRINTFR 0x008000 344435Sgibbs#define OPT_ZERORULEST 0x010000 354435Sgibbs#define OPT_SAVEOUT 0x020000 364435Sgibbs#define OPT_AUTHSTATS 0x040000 374435Sgibbs#define OPT_RAW 0x080000 38117700Smarkm#define OPT_NAT 0x100000 3930398Sitojun#define OPT_GROUPS 0x200000 404435Sgibbs#define OPT_STATETOP 0x400000 414435Sgibbs#define OPT_FLUSH 0x800000 424435Sgibbs#define OPT_CLEAR 0x1000000 434435Sgibbs#define OPT_NODO 0x80000000 444435Sgibbs 4514259Sgibbs#define OPT_STAT OPT_FRSTATES 464435Sgibbs#define OPT_LIST OPT_SHOWLIST 474435Sgibbs 484435Sgibbs 494435Sgibbs#ifndef __P 504435Sgibbs# ifdef __STDC__ 514435Sgibbs# define __P(x) x 524435Sgibbs# else 534435Sgibbs# define __P(x) () 544435Sgibbs# endif 554435Sgibbs#endif 564435Sgibbs 574435Sgibbsstruct frpcmp; 584435Sgibbs 594435Sgibbs#ifdef ultrix 604435Sgibbsextern char *strdup __P((char *)); 614435Sgibbs#endif 62121492Simp 63121492Simpextern struct frentry *parse __P((char *, int)); 644435Sgibbs 65963Satsextern void printfr __P((struct frentry *)); 664435Sgibbsextern void binprint __P((struct frentry *)), initparse __P((void)); 67963Satsextern int portnum __P((char *, u_short *, int)); 6813765Smpp 69963Sats 70963Satsstruct ipopt_names { 71963Sats int on_value; 72963Sats int on_bit; 73963Sats int on_siz; 74963Sats char *on_name; 75963Sats}; 76963Sats 77117700Smarkm 78117700Smarkmextern char *proto; 79117700Smarkmextern char flagset[]; 80963Satsextern u_char flags[]; 81963Sats 82117700Smarkmextern u_char tcp_flags __P((char *, u_char *, int)); 83117700Smarkmextern int countbits __P((u_32_t)); 844435Sgibbsextern int ratoi __P((char *, int *, int, int)); 8554201Smdoddextern int ratoui __P((char *, u_int *, u_int, u_int)); 8654201Smdoddextern int hostmask __P((char ***, u_32_t *, u_32_t *, u_short *, int *, 8754201Smdodd u_short *, int)); 8854201Smdoddextern int ports __P((char ***, u_short *, int *, u_short *, int)); 8954201Smdoddextern char *portname __P((int, int)); 9054201Smdoddextern u_32_t buildopts __P((char *, char *, int)); 9154201Smdoddextern int genmask __P((char *, u_32_t *)); 92117700Smarkmextern int hostnum __P((u_32_t *, char *, int)); 93117700Smarkmextern u_32_t optname __P((char ***, u_short *, int)); 9454201Smdoddextern void printpacket __P((ip_t *)); 9554201Smdoddextern void printportcmp __P((int, struct frpcmp *)); 9654201Smdoddextern void printhostmask __P((int, u_32_t *, u_32_t *)); 97117700Smarkmextern void printbuf __P((char *, int, int)); 98117700Smarkm#if SOLARIS 99117700Smarkmextern int inet_aton __P((const char *, struct in_addr *)); 100117700Smarkmextern int gethostname __P((char *, int )); 101117700Smarkmextern void sync __P((void)); 102117700Smarkm#endif 103117700Smarkm 10454201Smdodd#if defined(sun) && !SOLARIS 105117700Smarkm# define STRERROR(x) sys_errlist[x] 106117700Smarkmextern char *sys_errlist[]; 107117700Smarkm#else 108117700Smarkm# define STRERROR(x) strerror(x) 109117700Smarkm#endif 110963Sats 11154201Smdodd#ifndef MIN 11254201Smdodd#define MIN(a,b) ((a) > (b) ? (b) : (a)) 113963Sats#endif 114963Sats 115963Sats#endif /* __IPF_H__ */ 116963Sats