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

📄 igmp_winrouter.c

📁 路由器协议平台igmp协议设计实现源码。
💻 C
字号:
/*
 $Log:: /OEM Source Code/igmp/igmp_winrouter.c                                                     $
 * 
 * 1     4/23/98 9:53p Release Engineer
 * Initial release
 * IGMP v4.1.0
 */
/************************************************************************/
/*  Copyright (C) 1997-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 */
/************************************************************************/
#if defined (__WINROUTER__)
#include <stdarg.h>
#include "igmp.h"
/********************************************************************************************/
ULONG routerware_control (enum ROUTERWARE_CONTROL_OPERATION command,...)
{
	va_list argptr;
	ULONG return_value;
	UINT parameter[10];
	BYTE parameter_index;

	va_start (argptr, command);

	for (parameter_index = 0x00; parameter_index < 6;)
		{
		parameter[parameter_index] = va_arg (argptr, UINT);

		parameter_index = (BYTE) (parameter_index + 1);
		}

	return_value = 0x00000000L;

	switch (command)
		{
		case RW_INITIALIZE:

			return_value = initialize_igmp (parameter[0x00]);
			break;

		case RW_GET_CLASS_ADDRESS:

			return_value = (ULONG) &igmp;
			break;

		case RW_GET_CLASS_SIZE:

			return_value = sizeof (IGMP_CLASS);
			break;

		case RW_GET_CONFIGURATION_TABLE_ADDRESS:

			return_value = igmp_get_configuration_table_address ();
			break;

		case RW_GET_EXPORT_TABLE:

			return_value = igmp_get_export_table_address ();
			break;

		case RW_GET_IMPORT_TABLE:

			return_value = igmp_get_winrouter_import_table_address ();
			break;

		case RW_CLOSE:
		case RW_HALT:

			return_value = igmp_shutdown ();
			break;

		default:
			/* don't do anything because its unsupported */
			break;
		}

	return (return_value);
}
/********************************************************************************************/
ULONG igmp_get_configuration_table_address (void)
{
	return ((ULONG) &igmp_configuration_table);
}
/********************************************************************************************/
ULONG igmp_get_winrouter_import_table_address (void)
{
	return ((ULONG) &winrouter_import_table);
}
/********************************************************************************************/
ULONG igmp_get_export_table_address (void)
{
	return ((ULONG) &igmp_host_export_table);
}
#endif /* __WINROUTER__ */

⌨️ 快捷键说明

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