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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? nat_tcp_state.c

?? VXWORKS NAT 部分源代碼3 有興趣朋友可以參考下
?? C
字號(hào):
/* nat_configure.c */

/* Copyright 2000-2003 Wind River Systems, Inc. */

/* @format.tab-size 4, @format.use-tabs true, @format.new-line lf */

/*
modification history
--------------------
01a,23apr03,zhu  updated copyright
Date	Init	Comment
080701	tk		Add code to make an event callback to the external agent upon
				TCP session termination.
*/
#include "nat.h"
/************************************************************************/
void tcp_state_transistion_global_rx (BYTE_ENUM (NAT_TCP_STATE_INPUT) state_input,
	NAT_CURRENCY_TRANSLATION_ENTRY *sptr_tcp_translation_entry)
{
	BYTE_ENUM (NAT_TCP_PORT_STATE) current_state;

	nat_printf (NAT_PRINTF_TRACE, "TCP state transition (inbound packet)\n");

	if (state_input == NAT_ACK)
	{
		current_state = sptr_tcp_translation_entry->local_state;
	
		sptr_tcp_translation_entry->local_state = 
			nat.tcp_state_table[current_state].transistion_table[state_input].next_state;
/*
		if (nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value != NULL)
		{
			sptr_tcp_translation_entry->local_connection_timer = 
				*nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value;
		}
*/
		nat_printf (NAT_PRINTF_TRACE, "local state = %d, next state = %d\n",
			current_state, sptr_tcp_translation_entry->local_state);
	}
	else
	{
		current_state = sptr_tcp_translation_entry->global_state;

		sptr_tcp_translation_entry->global_state = 
			nat.tcp_state_table[current_state].transistion_table[state_input].next_state;
/*
		if (nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value != NULL)
		{
			sptr_tcp_translation_entry->global_connection_timer = 
				*nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value;
		}
*/
		if (nat.tcp_state_table[current_state].transistion_table[state_input].fptr_transistion_function != NULL)
		{
			(*nat.tcp_state_table[current_state].transistion_table[state_input].fptr_transistion_function)
				(state_input, current_state, GLOBAL_RX_PACKET, sptr_tcp_translation_entry);
		}

		nat_printf (NAT_PRINTF_TRACE, "global state = %d, next state = %d\n",
				current_state, sptr_tcp_translation_entry->global_state);
	}
}
/************************************************************************/
void tcp_state_transistion_local_rx (BYTE_ENUM (NAT_TCP_STATE_INPUT) state_input,
	NAT_CURRENCY_TRANSLATION_ENTRY *sptr_tcp_translation_entry)
{
	BYTE_ENUM (NAT_TCP_PORT_STATE) current_state;
	NAT_EVENT_INFO	event_info;

	nat_printf (NAT_PRINTF_TRACE, "TCP state transition (outbound packet)\n");

	if (state_input == NAT_ACK)
	{
		current_state = sptr_tcp_translation_entry->global_state;
	
		sptr_tcp_translation_entry->global_state = 
			nat.tcp_state_table[current_state].transistion_table[state_input].next_state;
/*
		if (nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value != NULL)
		{
			sptr_tcp_translation_entry->global_connection_timer = 
				*nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value;
		}
*/
		nat_printf (NAT_PRINTF_TRACE, "global state = %d, next state = %d\n",
			current_state, sptr_tcp_translation_entry->global_state);

	}
	else
	{
		current_state = sptr_tcp_translation_entry->local_state;

		sptr_tcp_translation_entry->local_state = 
			nat.tcp_state_table[current_state].transistion_table[state_input].next_state;
/*
		if (nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value != NULL)
		{
			sptr_tcp_translation_entry->local_connection_timer = 
				*nat.tcp_state_table[current_state].transistion_table[state_input].new_connection_timer_value;
		}
*/
		if (nat.tcp_state_table[current_state].transistion_table[state_input].fptr_transistion_function != NULL)
		{
			(*nat.tcp_state_table[current_state].transistion_table[state_input].fptr_transistion_function)
				(state_input, current_state, LOCAL_RX_PACKET, sptr_tcp_translation_entry);
		}

		nat_printf (NAT_PRINTF_TRACE, "local state = %d, next state = %d\n",
			current_state, sptr_tcp_translation_entry->local_state);
	}

	/* if TCP flag is set to FIN, and the packet is going to an external agent,
	   make an event callback to the agent to notify the session termination.
	*/
	if (state_input == NAT_FIN)
	{
		if (nat.agent_info != NULL)
		{
			/*event_info.bind_info = (NAT_BIND_INFO *) sptr_tcp_translation_entry->bind_id;*/
			
			if (nat.agent_info->event_callback == NULL)
			{
				
				return;
			}
			nat.agent_info->event_callback((u_long)&nat, 
					nat.agent_info->id, NAT_BIND_TERMINATION, &event_info);
		}
	}
}
/************************************************************************/
void tcp_reset_state_handler (BYTE_ENUM (NAT_TCP_STATE_INPUT) state_input,
		BYTE_ENUM (NAT_TCP_PORT_STATE) current_state, BYTE_ENUM (NAT_PACKET_DIRECTION) packet_direction,
		NAT_CURRENCY_TRANSLATION_ENTRY *sptr_tcp_translation_entry)
{

	PARAMETER_NOT_USED (current_state);
	PARAMETER_NOT_USED (state_input);							

	if (packet_direction == LOCAL_RX_PACKET)
	{
		tcp_state_transistion_global_rx (NAT_FORCED_RESET, sptr_tcp_translation_entry);
	}
	else
	{
		tcp_state_transistion_local_rx (NAT_FORCED_RESET, sptr_tcp_translation_entry);
	}
	
}
/************************************************************************/
void tcp_syn_state_handler (BYTE_ENUM (NAT_TCP_STATE_INPUT) state_input,
		BYTE_ENUM (NAT_TCP_PORT_STATE) current_state, BYTE_ENUM (NAT_PACKET_DIRECTION) packet_direction,
		NAT_CURRENCY_TRANSLATION_ENTRY *sptr_tcp_translation_entry)
{

	PARAMETER_NOT_USED (current_state);
	PARAMETER_NOT_USED (state_input);		

	if (packet_direction == LOCAL_RX_PACKET)
	{
		delete_sequence_entry_list (&sptr_tcp_translation_entry->local_sequence_delta_list);
	}
	else
	{
		delete_sequence_entry_list (&sptr_tcp_translation_entry->global_sequence_delta_list);
	}

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久精品蜜桃| 91麻豆精品国产自产在线观看一区| 久久久亚洲精品石原莉奈| 老司机午夜精品| 久久久久久亚洲综合影院红桃| 国产精一品亚洲二区在线视频| 国产亚洲一区二区在线观看| 成人深夜在线观看| 亚洲色欲色欲www在线观看| 欧美性淫爽ww久久久久无| 午夜a成v人精品| 精品美女被调教视频大全网站| 国产乱码精品一区二区三区av| 国产片一区二区三区| 一本大道久久a久久综合| 亚洲成人综合在线| 精品欧美乱码久久久久久| 国产成人亚洲综合a∨猫咪| 国产精品欧美一区二区三区| 欧美在线一区二区| 久久99久久99| 亚洲欧美日韩在线播放| 欧美一区二区视频免费观看| 国产精品小仙女| 一区二区三区日韩| 欧美va亚洲va国产综合| 91丨porny丨中文| 日韩在线一二三区| 中文字幕一区在线| 欧美一区二区精美| 99国产麻豆精品| 蜜臀av一区二区三区| 亚洲三级在线观看| 久久综合色一综合色88| 色噜噜狠狠一区二区三区果冻| 另类欧美日韩国产在线| 亚洲精品ww久久久久久p站| 精品国产sm最大网站免费看| 91国产成人在线| 国产不卡在线一区| 蜜臀av亚洲一区中文字幕| 亚洲精品午夜久久久| 精品处破学生在线二十三| 色噜噜狠狠成人中文综合| 精品制服美女丁香| 一区二区三区日韩欧美| 国产精品三级视频| 久久婷婷色综合| 欧美日本一区二区在线观看| 成人一区二区在线观看| 美国三级日本三级久久99| 一区二区三区在线观看国产 | 欧美成人官网二区| 日本高清无吗v一区| 成人一级片在线观看| 看片的网站亚洲| 亚洲成av人影院| 日韩一区在线播放| 中文字幕不卡在线观看| 久久精品一区二区三区不卡| 欧美一区二区三区人| 色八戒一区二区三区| 成人丝袜视频网| 国产a精品视频| 精品无码三级在线观看视频| 日韩电影一区二区三区| 日韩影视精彩在线| 首页亚洲欧美制服丝腿| 亚洲超碰精品一区二区| 亚洲图片自拍偷拍| 亚洲妇女屁股眼交7| 亚洲综合免费观看高清在线观看| 国产精品午夜春色av| 亚洲国产高清aⅴ视频| 欧美国产1区2区| 欧美极品少妇xxxxⅹ高跟鞋| 国产日韩精品一区二区三区 | 狠狠色丁香婷综合久久| 狠狠狠色丁香婷婷综合激情| 国产综合色在线视频区| 国产一区二区电影| 粉嫩一区二区三区性色av| 国产精品99久久久久久似苏梦涵| 国产伦理精品不卡| 东方欧美亚洲色图在线| 成人免费视频视频| 91麻豆swag| 欧美视频一区二区三区在线观看| 欧美日韩情趣电影| 欧美一级久久久| 久久新电视剧免费观看| 国产亚洲短视频| 国产精品国产三级国产三级人妇| 亚洲欧美一区二区三区国产精品 | 欧美精品第1页| 日韩欧美视频一区| 亚洲精品在线观看视频| 国产精品麻豆一区二区| 一区二区三区在线视频观看| 日韩国产欧美三级| 国产高清不卡二三区| 色综合天天在线| 欧美美女直播网站| 亚洲精品一区二区精华| 国产精品久久99| 亚洲一区二区不卡免费| 韩国三级电影一区二区| 成人性生交大片免费看中文| 91欧美一区二区| 91精品国产丝袜白色高跟鞋| 久久奇米777| 亚洲一区二区偷拍精品| 精品一区二区三区视频在线观看| 国产91精品免费| 欧美亚洲禁片免费| 日韩欧美成人一区二区| 亚洲天堂网中文字| 日韩av一区二区三区| 波多野结衣视频一区| 日韩亚洲欧美一区| 中文字幕一区二区三区乱码在线| 亚洲福中文字幕伊人影院| 国产精品影视网| 欧美午夜精品一区二区三区| 国产亚洲婷婷免费| 性做久久久久久免费观看| 国产成人99久久亚洲综合精品| 欧美日韩亚洲不卡| 国产精品美女久久久久高潮| 美女视频网站黄色亚洲| 色婷婷国产精品| 久久久久久综合| 婷婷六月综合亚洲| 91老师片黄在线观看| 26uuu国产在线精品一区二区| 亚洲一区二区三区四区在线观看 | 91福利区一区二区三区| 久久久久久99精品| 午夜激情久久久| 91蜜桃在线免费视频| 久久只精品国产| 日产国产高清一区二区三区 | 美腿丝袜亚洲一区| 91福利国产精品| 亚洲欧洲日产国码二区| 国产一区欧美二区| 欧美一区二区三区免费在线看| 亚洲乱码国产乱码精品精可以看| 国产成人午夜精品5599| 欧美电视剧在线看免费| 午夜精品影院在线观看| 欧美午夜精品久久久| 亚洲欧美日韩一区二区三区在线观看| 国产精品456| 国产偷国产偷亚洲高清人白洁| 日韩福利视频网| 欧美日韩极品在线观看一区| 亚洲另类一区二区| eeuss鲁片一区二区三区在线看| 国产日产欧美一区二区视频| 国产一区二区三区蝌蚪| 日韩欧美一区二区免费| 日本不卡一区二区三区| 777午夜精品视频在线播放| 亚洲va欧美va天堂v国产综合| 欧美亚洲国产一区二区三区 | 欧美高清激情brazzers| 亚洲成av人影院| 欧美久久久久久蜜桃| 亚洲综合在线观看视频| 日本道精品一区二区三区| 亚洲男女毛片无遮挡| 91官网在线免费观看| 亚洲一二三区视频在线观看| 欧美日韩精品欧美日韩精品一| 丝袜国产日韩另类美女| 欧美一级片在线| 黄色资源网久久资源365| 国产免费观看久久| fc2成人免费人成在线观看播放| 椎名由奈av一区二区三区| 在线观看日韩国产| 性欧美大战久久久久久久久| 91精品在线一区二区| 久久国产乱子精品免费女| 精品国产一区二区三区av性色| 国产福利91精品一区| 国产精品色在线| 色吧成人激情小说| 日韩国产高清影视| 久久人人97超碰com| 一本色道综合亚洲| 日韩精品乱码免费| 国产无一区二区| 在线观看一区不卡| 久久精品国产在热久久| 国产精品美女久久久久aⅴ| 在线免费观看日韩欧美| 免费av成人在线| 国产精品青草久久|