亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? klips2-design-api.txt

?? FREESWAN VPN源代碼包
?? TXT
?? 第 1 頁 / 共 3 頁
字號:
1#  -*- mode: Outline -*-# #  klips2-design-api.txt#	Richard Guy Briggs <rgb@conscoop.ottawa.on.ca>##  RCSID $Id: klips2-design-api.txt,v 1.1.1.1 2002/09/05 03:13:16 ken Exp $#* Outline Commands cheat sheet (C-c C-s to see this)        C-c C-t         Hide EVERYTHING in buffer        C-c C-a         Show EVERYTHING in buffer        C-c C-d         Hide THIS item and subitems (subtree)        C-c C-s         Show THIS item and subitems (subtree)        C-c C-c         Hide ONE item        C-c C-e         Show ONE item* Introduction	This document describes all the APIs used in this design.	Please see klips2-design.txt for an overview of the	architecture.  This document is divided into an emacs outline	mode cheat sheet, Introduction, Generic Iptables	interfaces, KLIPS2 Interfaces, Definitions and Data structures	used, and document version.** Interface:	interface description, listing origin and destination	entities, separated by an ">->" with diagram label, if it	exists within double quotes ``"''** Label:	diagram label** Name:	the name of the function used and a very brief description** Synopsis:	function form, argument position, type and return type** Arguments:	description of each argument** Description:	description of interface and function** Implementation notes:	caveats and side effects** Return value:	function return values** Example:	usage example** See also:	related documentation or further explanation* Generic Iptables interfaces** iptables(8) >-> generic match iptables(8) library** ip6tables(8) >-> generic match ip6tables(8) library	Interface:		iptables(8) >-> generic match iptables(8) library		ip6tables(8) >-> generic match ip6tables(8) library	Label:	Name:		(*generic_parse) - parse, convert and check generic options	Synopsis:		static int		generic_parse(			int c,			char **argv,			int invert,			unsigned int *flags,			const struct ipt_entry *entry,			unsigned int *nfcache,			struct ipt_entry_match **match		)	Arguments:		c			argument count		argv			text arguments to be parsed by this match		invert			invert this match?		flags			bitmap to indicate which arguments have been processed		entry			pointer to table entry associated with match		nfcache			bitmap of skb parts examined by this match		match			match data -- customised match data is contained in			"data" member	Description:		This function parses, converts and checks iptables(8)		and ip6tables(8) command line "generic" text		arguments for use by the "generic" match NetFilter kernel		module.		Input is expected to be in the form of a text string		specifying a "generic" characteristic associated with the		packet.	Implementation notes:		A data structure to store parsed and converted		arguments in a form consumable by the corresponding		kernel module is pointed to by match->data.  Replace		ipt_generic_info with the customised data structure.	Return value:		1 if an option was eaten, 0 if not.	Example:		static int		generic_parse(			int c,			char **argv,			int invert,			unsigned int *flags,			const struct ipt_entry *entry,			unsigned int *nfcache,			struct ipt_entry_match **match		) {			struct ipt_generic_info *info = (struct ipt_generic_info*)(*match)->data;			/* parse option arguments */			...			return 1;		}		struct iptables_match generic_match_lib = {			NULL,			"generic",			NETFILTER_VERSION,			IPT_ALIGN(sizeof(struct ipt_generic_info)),			IPT_ALIGN(sizeof(struct ipt_generic_info)),			&generic_help,			&generic_init,			&generic_parse,			&generic_final_check,			&generic_print,			&generic_save,			generic_opts		};		void		_init(void)		{			register_match(&generic_match_lib);		}	See also:** iptables(8) >-> GENERIC target iptables(8) library** ip6tables(8) >-> GENERIC target ip6tables(8) library		Interface:		iptables(8) >-> GENERIC target iptables(8) library		ip6tables(8) >-> GENERIC target ip6tables(8) library	Label:	Name:	Synopsis:		static int generic_parse(			int c,			char **argv,			int invert,			unsigned int *flags,			const struct ipt_entry *entry,			struct ipt_entry_target **target		)	Arguments:		c			argument count		argv			text arguments to be parsed by this target		invert			invert flag (doesn't make sense for targets)		flags			bitmap to indicate which arguments have been processed		entry			pointer to table entry associated with target		target			target data -- customised target data is contained in			"data" member	Description:		This function parses, converts and checks iptables(8)		and ip6tables(8) command line "GENERIC" text		arguments for use by the "GENERIC" target NetFilter kernel		module.		Input is expected to be in the form of a text string		specifying a "generic" characteristic to be applied to the		packet.	Implementation notes:		A data structure to store parsed and converted		arguments in a form consumable by the corresponding		kernel module is pointed to by target->data.  Replace		ipt_generic_target_info with the customised data		structure, if there is any.	Return value:		1 if an option was eaten, 0 if not.	Example:		static int		generic_parse(			int c,			char **argv,			int invert,			unsigned int *flags,			const struct ipt_entry *entry,			struct ipt_entry_target **target		) {			struct ipt_generic_target_info *info = (struct ipt_generic_target_info*)(*target)->data;			/* parse option arguments */			...			return 1;		}		struct iptables_target generic_target_lib = {			NULL,			"GENERIC",			NETFILTER_VERSION,			IPT_ALIGN(sizeof(struct ipt_generic_target_info)),			IPT_ALIGN(sizeof(struct ipt_generic_target_info)),			&generic_help,			&generic_init,			&generic_parse,			&generic_final_check,			&generic_print,			&generic_save,			generic_opts		};		void		_init(void)		{			register_target(&generic_target_lib);		}	See also:		http://netfilter.samba.org/unreliable-guides/netfilter-hacking-HOWTO/netfilter-hacking-HOWTO.linuxdoc-4.html** NetFilter >-> generic match NetFilter kernel module	Interface:		NetFilter >-> generic match NetFilter kernel module	Label:	Name:		(*generic_match) - does the packet match the generic		specifications?	Synopsis:		static int generic_match(			const struct sk_buff *skb,			const struct net_device *in,			const struct net_device *out,			const void *matchinfo,			int offset,			const void *hdr,			u_int16_t datalen,			int *hotdrop		)	Arguments:		skb			skb to test for match		in			incoming network interface		out			outgoing network interface		matchinfo			match information		offset			packet offset		hdr			transport layer header pointer		datalen			length of skb		hotdrop			flag to immediately drop packet	Description:		This function checks if the skb supplied matches		the generic packet characteristics specified in		matchinfo.	Implementation notes:		Replace ipt_generic_info with the customised data		structure.	Return value:		It returns true (1) for	match, false (0) for no match.	Example:		static int		generic_match(			const struct sk_buff *skb,			const struct net_device *in,			const struct net_device *out,			const void *matchinfo,			int offset,			const void *hdr,			u_int16_t datalen,			int *hotdrop		) {			struct ipt_generic_info *info = (struct ipt_generic_info*)matchinfo;			if(/* test skb for match to matchinfo data */) {				return 1;			}			return 0;		}		static struct ipt_match generic_match_mod = {			{ NULL, NULL },			"generic",			&generic_match,			&generic_checkentry,			NULL,			THIS_MODULE		};		static int __init		init(void)		{			return ipt_register_match(&generic_match_mod);		}		static void __exit		fini(void)		{			ipt_unregister_match(&generic_match_mod);		}	See also:		http://netfilter.samba.org/unreliable-guides/netfilter-hacking-HOWTO/netfilter-hacking-HOWTO.linuxdoc-4.html** NetFilter >-> GENERIC target NetFilter kernel module	Interface:		NetFilter >-> GENERIC target NetFilter kernel module	Label:	Name:		(*generic_target) - process outgoing packet with		"generic" information supplied	Synopsis:		static unsigned int		generic_target(			struct sk_buff **pskb,			unsigned int hooknum,			const struct net_device *in,			const struct net_device *out,			const void *targinfo,			void *userinfo		)	Arguments:		pskb			skb to be processed by target        	hooknum			which hook from which it was called		in			network device it came from		out			network device to which it is headed		targinfo			data used by target for processing		userinfo			optional user data passed in from mainline			hook	Description:		This is a NetFilter target.  It applies the generic		information supplied with the target to the outgoing		packet.	Implementation notes:		Replace ipt_generic_target_info with the customised data		structure, if there is one.	Return value:	       It returns <verdict>.	Example:		File net/ipv4/netfilter/ipt_GENERIC.c:		#include <linux/netfilter_ipv4/ip_tables.h>		static unsigned int		generic_target(struct sk_buff **pskb,			unsigned int hooknum,			const struct net_device *in,			const struct net_device *out,			const void *targinfo,			void *userinfo)		{			struct ipt_generic_target_info *info = (struct ipt_generic_target_info*)targinfo;			/* do target processing */			return <verdict>;		}		static struct ipt_target generic_target_mod = {			{ NULL, NULL },			"GENERIC",			generic_target,			generic_checkentry,			NULL,			THIS_MODULE		};		static int __init init(void)		{			if (ipt_register_target(&generic_target_mod))				return -EINVAL;			return 0;		}		static void __exit fini(void)		{			ipt_unregister_target(&generic_target_mod);		}	See also:		http://netfilter.samba.org/unreliable-guides/netfilter-hacking-HOWTO/netfilter-hacking-HOWTO.linuxdoc-4.html* KLIPS2 Interfaces** KMd >-> iptables(8) "Policy"** KMd >-> ip6tables(8) "Policy"	Interface:		KMd >-> iptables(8)		KMd >-> ip6tables(8)	Label:		"Policy"	Name:		system(3) call to iptables(8) - execute a shell		command to do IP packet filter administration to set		ipsec policy	Synopsis:		#include <stdlib.h>		int system(const char * "iptables \			--table ipsec \			--new-table chain ");		int system(const char * "iptables \			--table ipsec \			--policy chain target");		int system(const char * "iptables \			--table ipsec \			--{append,delete,insert,replace} chain \			--protocol protocol \			--source src \			--destination dst \			--jump target \			--in-interface IPSECdev \			--out-interface IPSECdev \			--source-port SPORT \			--destination-port DPORT \			--uid-owner UID \			--gid-owner GID \			--pid-owner PID \			--sid-owner SID \			--espspi SPI \			--seclev seclevstr \			--salist SAList \		");	Arguments:		--table ipsec			specify ipsec SPDB NetFilter kernel table		--new-chain chain			create new chain in ipsec SPDB		--policy chain target			set default target for specified chain		--{append,delete,insert,replace} chain			manipulate a rule in the specified chain		--protocol protocol			protocol for the matching rule		--source src			source address for the matching rule		--destination dst			destination address for the matching rule		--in-interface IPSECdev			incoming ipsec device for the matching rule		--out-interface IPSECdev			outgoing ipsec device for the matching rule		--source-port SPORT			source port for the matching rule (tcp or udp)		--destination-port DPORT			destination port for the matching rule (tcp or udp)		--uid-owner UID			user ID for the matching rule		--espspi SPI			Encapsulation Security Payload Security Parameters			Index for the matching rule		--seclev seclevstr			security or sensitivity level or label for the			matching rule		--salist SAList			Security Association IDentifier list for the matching			rule		--jump target			target for a matching packet	Description:		This is the SPDB (or as yet undefined PF_POLICY)		interface from the key management daemons to the		kernel via netfilter.		The default chains of in and out are created when the		table is created.  Additional chains can be created as		needed with the iptables --new-chain command and can		be listed as targets to match entries.		The default policy of each chain can be changed from		the initialised value of DROP (TRAP?) with the		iptables --policy command.  The default policy of each		chain is one of the standard NetFilter targets of		ACCEPT, DROP, REJECT.  IPSec adds the targets TRAP,		HOLD (internal), PEEK and IPSEC.  Only the IPSEC		target takes any arguments, which consists of a list		of SAs to be used for processing.		Rules are appended, inserted, deleted or replaced to		set the IPSec policy.		Packets can be matched on IP transport protocol,		source or destination address, incoming or outgoing		ipsec device, source or destination port for tcp or		udp, user ID, Encapsulation Security Payload or		Authentication Header Security Parameters Index,		security or sensitivity level or label, Security		Association IDentifier list.  A target must be		specified for each matching rule using the iptables		--jump option.	Implementation notes:		If the in and out chains don't yet exist, they must be		created with the iptables --new-chain command.  (These		will most likely be created by loading the module and		so this paragraph may disappear.)  		An alternative may be to have the KMd link directly		with iptables.o rather than invoking system(3) to call		iptables(8).		It looks like it may be possible to call the libipt		functions directly, which will be a big help in		speeding things up since text conversion and parsing		won't have to be done.  This will change most of the		char fields to binary fields and change the calling		function and return codes.	Return value:		system(3) returns:		The value returned is 127 if the execve() call for		/bin/sh fails, -1 if there was another error.		iptables(8) returns:		Various error messages are printed to standard error.		The exit code is 0 for correct functioning.  Errors		which appear to be caused by invalid or abused command		line parameters cause an exit code of 2, and other		errors cause an exit code of 1.	Example:		#include <stdlib.h>		int return;		...		if((return = system("iptables \			--table ipsec \			--insert out \			--source this-subnet.example.com \			--destination that-subnet.example.com \			--jump IPSEC \			--use-salist esp.12345678@that-sg.example.com \			"))){			fprintf(stderr, "error $d calling iptables\n");			exit 1;		}	See also:		system(3), iptables(8)** iptables(8) >-> seclev match iptables(8) library** ip6tables(8) >-> seclev match ip6tables(8) library	Interface:		iptables(8) >-> seclev match iptables(8) library

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
伊人色综合久久天天人手人婷| 亚洲色图在线看| 欧美午夜精品久久久久久孕妇| 玖玖九九国产精品| 人妖欧美一区二区| 天天做天天摸天天爽国产一区| 又紧又大又爽精品一区二区| 精品久久人人做人人爽| 欧美男人的天堂一二区| 欧美日韩综合一区| 在线精品国精品国产尤物884a| 在线精品视频一区二区三四| 色婷婷综合久久久久中文一区二区 | 一区二区三区在线视频播放| 在线观看91精品国产入口| 成人的网站免费观看| 粉嫩蜜臀av国产精品网站| 国产福利一区二区三区视频| 成人禁用看黄a在线| 成人精品国产免费网站| 成人美女视频在线观看| av午夜一区麻豆| 91久久精品日日躁夜夜躁欧美| 91在线小视频| 色成年激情久久综合| 成人aa视频在线观看| 91美女精品福利| 91黄色免费版| 欧美日韩午夜在线视频| 欧美一区二区精美| 精品国产一区二区三区久久久蜜月 | 亚洲综合男人的天堂| 中文字幕中文字幕在线一区| 最好看的中文字幕久久| 亚洲欧美韩国综合色| 亚洲女同ⅹxx女同tv| 日韩高清欧美激情| 激情综合亚洲精品| 国产99精品国产| 成人影视亚洲图片在线| 欧美视频在线观看一区| 日韩视频免费观看高清在线视频| 欧美videos大乳护士334| 欧美国产国产综合| 亚洲精品成人在线| 丝瓜av网站精品一区二区 | 日韩av中文字幕一区二区 | 欧美精品vⅰdeose4hd| 欧美成人官网二区| 欧美国产日韩精品免费观看| 中文字幕永久在线不卡| 奇米色777欧美一区二区| 国产传媒日韩欧美成人| 在线观看视频一区二区欧美日韩| 欧美一级艳片视频免费观看| 亚洲欧美中日韩| 天天色综合成人网| 国模套图日韩精品一区二区| 成人动漫在线一区| 欧美日韩在线观看一区二区| 日韩午夜激情av| 国产精品久久久久一区二区三区| 亚洲成人你懂的| 高清国产一区二区| 5月丁香婷婷综合| 中文一区二区完整视频在线观看| 亚洲图片欧美视频| 国产二区国产一区在线观看| 欧美猛男超大videosgay| 久久精品一级爱片| 亚洲午夜久久久久中文字幕久| 国产综合久久久久久鬼色| 欧美日韩久久久| 中文字幕成人网| 青青草精品视频| 日本道在线观看一区二区| 久久久国产一区二区三区四区小说 | 国产福利精品一区二区| 欧美二区在线观看| 一区二区在线观看免费| 国产精品一区免费在线观看| 欧美麻豆精品久久久久久| 中文av字幕一区| 国产在线一区观看| 69av一区二区三区| 亚洲精品成人在线| 国产精品亚洲一区二区三区在线 | 国产精品自在在线| 日韩欧美中文字幕公布| 日韩伦理电影网| 国产成人av福利| 久久综合久久综合久久| 天天综合日日夜夜精品| 色哟哟精品一区| 中文字幕二三区不卡| 国产91精品一区二区| 日韩午夜激情av| 日韩电影免费一区| 99久久99久久精品国产片果冻| 国产精品私房写真福利视频| 国产一区欧美日韩| 欧美电影影音先锋| 亚洲欧美日韩综合aⅴ视频| 91尤物视频在线观看| 国产色综合一区| 国产剧情一区二区| 国产欧美日韩视频在线观看| 韩国成人在线视频| 精品日产卡一卡二卡麻豆| 亚洲国产另类av| 欧美日韩综合在线免费观看| 亚洲午夜影视影院在线观看| 欧美综合亚洲图片综合区| 亚洲人午夜精品天堂一二香蕉| 国产91清纯白嫩初高中在线观看| 欧美日韩日日夜夜| 午夜国产不卡在线观看视频| 欧美日韩情趣电影| 性久久久久久久久久久久| 欧洲精品一区二区| 亚洲一区二区三区四区不卡| 一本大道久久a久久精二百| 亚洲人成电影网站色mp4| 成人app在线| 日韩视频免费观看高清完整版| 蜜桃精品在线观看| 久久久久久久国产精品影院| 成人h动漫精品一区二| 一区二区三区精密机械公司| 欧美日韩不卡在线| 精品一区二区三区的国产在线播放 | 3d动漫精品啪啪一区二区竹菊 | 91精品国产综合久久福利软件| 久久国产人妖系列| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 久久99精品久久久久| 国产人成亚洲第一网站在线播放 | 精品国产乱码久久久久久免费 | 欧美在线短视频| 青青草成人在线观看| 精品久久久网站| caoporm超碰国产精品| 亚洲成va人在线观看| www国产成人| 91九色02白丝porn| 久久91精品久久久久久秒播 | 国产不卡视频一区二区三区| 亚洲免费在线视频一区 二区| 欧美精品 国产精品| 国产盗摄一区二区三区| 亚洲一卡二卡三卡四卡无卡久久| 精品少妇一区二区三区在线播放| 99久久精品99国产精品| 日本va欧美va精品| 国产精品色婷婷| 91精品国产综合久久精品图片| 国产成人一级电影| 婷婷成人综合网| 中文字幕精品一区二区精品绿巨人| 欧美日韩一本到| 成人av动漫网站| 日本怡春院一区二区| 自拍偷拍国产亚洲| www成人在线观看| 欧美高清视频一二三区 | 91一区在线观看| 精品亚洲免费视频| 亚洲第一福利一区| 国产精品卡一卡二| 日韩欧美国产午夜精品| 91传媒视频在线播放| 成人av第一页| 国产一区二区三区视频在线播放| 性欧美大战久久久久久久久| 成人免费一区二区三区视频| 91精品国产综合久久精品app| 一本色道久久综合精品竹菊| 国产精品一区二区果冻传媒| 日本午夜精品视频在线观看| 亚洲一区日韩精品中文字幕| 国产精品久久国产精麻豆99网站| 日韩欧美国产小视频| 欧美理论电影在线| 欧美伊人久久大香线蕉综合69| av爱爱亚洲一区| 国产91丝袜在线播放| 韩国在线一区二区| 卡一卡二国产精品 | 国产suv精品一区二区三区 | 日韩欧美视频在线| 欧美久久久久久久久| 欧美日韩亚洲综合在线| 91福利在线导航| 欧美自拍丝袜亚洲| 91久久精品一区二区三| 色综合久久久久综合体桃花网| 成人福利视频在线| av亚洲精华国产精华精| 99国产精品国产精品毛片| 成人久久视频在线观看|