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

📄 vfdtstr.h

📁 以太网交换机协议平台stp协议的设计与实现源代码。
💻 H
字号:
/*
 * $Log:: /OEM Source Code/Spantree/vfdtstr. $
 * 
 * 1     12/04/98 2:36p Release Engineer
 * code cleanup, bug fixes, code style
 * changes, linted, system level test
 * STP v4.3.0
 * 
 * 1     2/06/96 11:06p Ross
 * Adding new version control
*/
/*	$Modname: vfdtstr.h$  $version: 1.13$      $date: 04/17/95$   */
/*
* 	$lgb$
1.0 08/21/92 ross
1.1 08/21/92 ross
1.2 08/22/92 ross Added support for multiple instances of stp_class
1.3 08/22/92 ross added copyright and pragma noalign at top.
1.4 11/23/92 ross changed ETHERNET_ADDRESS to MAC_ADDRESS to appear more generic (cosmetic)
1.5 01/10/93 ross added dlci to FD table.
1.6 01/20/93 ross
1.7 01/30/93 ross delete references to stp dlci
1.8 03/29/93 ross added some mib statistics
1.9 10/11/93 ross update for changes in LSL, bug in frame relay receive.
1.10 08/25/94 ross added support for BYTE_ENUM and USHORT_ENUM
1.11 03/31/95 ross Changes for new rwutils library.
1.12 04/17/95 ross remove pragmas.  Courtesy of Hung.
1.13 04/17/95 ross remove some more pragmas.
* 	$lge$
*/
/************************************************************************/
/*	Copyright (C) 1989-1998 RouterWare, Inc. 										*/
/*	Unpublished - rights reserved under the Copyright Laws of the			*/
/*	United States.  Use, duplication, or disclosure by the 					*/
/*	Government is subject to restrictions as set forth in 					*/
/*	subparagraph (c)(1)(ii) of the Rights in Technical Data and 			*/
/*	Computer Software clause at 252.227-7013.										*/
/*	RouterWare, Inc., 3961 MacArthur Blvd. Suite 212, Newport Beach Ca   */
/************************************************************************/
/* for database filtering */

#if !defined (SMALL_ENTRY)

	#define LINK_TYPEDEF_DEFINED

	typedef	struct	LINK
	{
		struct	LINK	*sptr_forward_link;
		struct	LINK	*sptr_backward_link;
	} LINK;

	typedef	struct	SINGLE_LINK
	{
		struct	SINGLE_LINK	*sptr_forward_link;
	} SINGLE_LINK;

	typedef	struct	FILTERING_DATABASE_ENTRY
	{
		LINK										links;   			
	
		MAC_ADDRESS								source_address;	
		ULONG										timer_value;		

		BYTE								  		port_number;		
		BYTE_ENUM (FD_TABLE_ENTRY_TYPE)	type;
	} FILTERING_DATABASE_ENTRY;

	typedef	struct	FILTERING_DATABASE_TABLE
	{
		FILTERING_DATABASE_ENTRY	entry[NUMBER_OF_FILTERING_DATABASE_ENTRIES];
	} FILTERING_DATABASE_TABLE;

	typedef	struct	LOOKUP_TABLE_POINTERS
	{
		FILTERING_DATABASE_ENTRY	*sptr_forward_link;
		FILTERING_DATABASE_ENTRY	*sptr_backward_link;
	} LOOKUP_TABLE_POINTERS;

	typedef	struct	HASH_TABLE
	{
		LOOKUP_TABLE_POINTERS	entry[NUMBER_OF_ENTRIES_IN_HASH_TABLE];
	} HASH_TABLE;

#else

	/* for database filtering */

	typedef	struct	USHORT_LINK
	{
		USHORT	next_entry_index;					/* 0 */
		USHORT	previous_entry_index;			/* 2 */
	} USHORT_LINK;

	typedef	struct	FILTERING_DATABASE_ENTRY
	{
		USHORT_LINK									links;
		BYTE											port_number;				/* 4 */
		enum FD_TABLE_ENTRY_TYPE				type;		/* 5 */
		USHORT										timer_value;

		MAC_ADDRESS							source_address;			/* 8 */
		enum FILTERING_DATABASE_ENTRY_TYPE	type;
	} FILTERING_DATABASE_ENTRY;

	typedef	struct	FILTERING_DATABASE_TABLE
	{
		FILTERING_DATABASE_ENTRY	entry[NUMBER_OF_FILTERING_DATABASE_ENTRIES]; 
	} FILTERING_DATABASE_TABLE; 

	typedef	struct	HASH_TABLE		 /* used to quickly access FDT's source address */
	{
		USHORT_LINK entry[NUMBER_OF_ENTRIES_IN_HASH_TABLE];
	} HASH_TABLE; 

	#define sptr_forward_link next_entry_index
	#define sptr_backward_link previous_entry_index

#endif

⌨️ 快捷键说明

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