⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ip_masq.h

📁 GNU Hurd 源代码
💻 H
字号:
/* *	IP_MASQ user space control interface *	$Id: ip_masq.h,v 1.2 1998/12/08 05:41:48 davem Exp $ */#ifndef _LINUX_IP_MASQ_H#define _LINUX_IP_MASQ_H#ifdef __KERNEL__#include <linux/types.h>#include <linux/stddef.h>#else#include <sys/types.h>#include <stddef.h>#endifstruct ip_masq_user {	int 	protocol;	u_int16_t	sport, dport, mport;	u_int32_t 	saddr, daddr, maddr;	u_int32_t	rt_daddr;	/* dst address to use for rt query */	u_int32_t	rt_saddr;		u_int32_t	ip_tos;		/* TOS */	unsigned timeout;		/* in ticks (HZ per sec) */	unsigned flags;	int fd;				/* NOT IMPL: attach tunnel to this fd */	int state;			/* NOT IMPL: return conn state */};#define IP_MASQ_USER_F_LISTEN	0x01	/* put entry to LISTEN state */#define IP_MASQ_USER_F_DEAD	0x02	/* mark as DEAD */#define IP_MASQ_USER_F_FORCE	0x04	/* force operation */struct ip_masq_timeout {	int protocol;	union {		struct {			unsigned established;			unsigned syn_sent;			unsigned syn_recv;			unsigned fin_wait;			unsigned time_wait;			unsigned close;			unsigned close_wait;			unsigned last_ack;			unsigned listen;		} tcp;		unsigned udp;		unsigned icmp;	} u;};/*  *	AUTOFW stuff  */#define IP_FWD_RANGE 		1#define IP_FWD_PORT		2#define IP_FWD_DIRECT		3#define IP_AUTOFW_ACTIVE	1#define IP_AUTOFW_USETIME	2#define IP_AUTOFW_SECURE	4/* WARNING: bitwise equal to ip_autofw  in net/ip_autofw.h */struct ip_autofw_user {	void * next;	u_int16_t type;	u_int16_t low;	u_int16_t hidden;	u_int16_t high;	u_int16_t visible;	u_int16_t protocol;	u_int32_t lastcontact;	u_int32_t where;	u_int16_t ctlproto;	u_int16_t ctlport;	u_int16_t flags;	/* struct timer_list timer; */};/*  *	PORTFW stuff  */struct ip_portfw_user {	u_int16_t	protocol;       /* Which protocol are we talking? */	u_int32_t	laddr, raddr;   /* Remote address */	u_int16_t	lport, rport;   /* Local and remote port */	int 		pref;		/* Preference value */};/*  *	MFW stuff  */struct ip_mfw_user {	u_int32_t           fwmark;	/* Firewalling mark */	u_int32_t           raddr;  	/* remote port */	u_int16_t           rport;	/* remote port */	u_int16_t           dummy;          /* Make up to multiple of 4 */	int 		pref;		/* Preference value */	unsigned 	flags;		/* misc flags */};#define IP_MASQ_MFW_SCHED	0x01#define IP_FW_MASQCTL_MAX 256#define IP_MASQ_TNAME_MAX  32struct ip_masq_ctl {	int m_target;	int m_cmd;	char m_tname[IP_MASQ_TNAME_MAX];	union {		struct ip_portfw_user portfw_user;		struct ip_autofw_user autofw_user;		struct ip_mfw_user mfw_user;		struct ip_masq_user user;		unsigned char m_raw[IP_FW_MASQCTL_MAX];	} u;};#define IP_MASQ_CTL_BSIZE (offsetof (struct ip_masq_ctl,u))#define IP_MASQ_TARGET_CORE	1#define IP_MASQ_TARGET_MOD	2	/* masq_mod is selected by "name" */#define IP_MASQ_TARGET_USER	3	#define IP_MASQ_TARGET_LAST	4#define IP_MASQ_CMD_NONE	0	/* just peek */#define IP_MASQ_CMD_INSERT	1#define IP_MASQ_CMD_ADD		2#define IP_MASQ_CMD_SET		3#define IP_MASQ_CMD_DEL		4#define IP_MASQ_CMD_GET		5#define IP_MASQ_CMD_FLUSH	6#define IP_MASQ_CMD_LIST	7	/* actually fake: done via /proc */#define IP_MASQ_CMD_ENABLE	8#define IP_MASQ_CMD_DISABLE	9#endif /* _LINUX_IP_MASQ_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -