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

📄 vpnmac.c

📁 vc环境下的pgp源码
💻 C
📖 第 1 页 / 共 4 页
字号:
    OUT PUINT BytesTransferred       
    )
{
	DBG_FUNC("MacTransferData")
	NDIS_STATUS			status;
	PBINDING_CONTEXT	binding;
	PVPN_ADAPTER		adapter;
	PPGPNDIS_PACKET		pgpPacket;

	BOOLEAN			fragment = TRUE;

	DBG_ENTER();

	binding = (PBINDING_CONTEXT)MacBindingHandle;
	adapter = binding->adapter;

	// Check to see if the packet is in the list.
	// If not, it'a unsecured one pass it to the NIC driver.
	pgpPacket = PacketRemoveBySrcPacket(adapter, &adapter->incoming_indicateComplete_wait_list, MacReceiveContext);

	if (pgpPacket == NULL)
	{
		pgpPacket = PacketRemoveBySrcPacket(adapter, &adapter->incoming_fragment_indicateComplete_wait_list, MacReceiveContext);
	}
	else
	{
		fragment = FALSE;
	}
	
	if (pgpPacket == NULL)
	{
		pgpPacket = PGPNdisPacketAllocWithBindingContext(&status, adapter);

		pgpPacket->srcPacket = Packet;
		pgpPacket->Binding = binding;

		PacketEnqueue(adapter, &adapter->incoming_plaintransferComplete_wait_list, pgpPacket);

		NdisTransferData(&status,
						adapter->NdisBindingHandleToRealMac,
						MacReceiveContext,
						ByteOffset,
						BytesToTransfer,
						Packet,
						BytesTransferred);

		if (status != NDIS_STATUS_PENDING)
		{
			pgpPacket = PacketRemoveBySrcPacket(adapter, &adapter->incoming_plaintransferComplete_wait_list, Packet);
			PGPNdisPacketFreeWithBindingContext(adapter, pgpPacket);
		}
	}
	else
	{
		ASSERT(FALSE);
	}

	DBG_LEAVE(status);
	return NDIS_STATUS_SUCCESS;
}

/*
 *
 */

NDIS_STATUS MacDriverEntry(
    IN PDRIVER_OBJECT DriverObject,
    IN PUNICODE_STRING RegistryPath
    )
{
    DBG_FUNC("MacDriverEntry")

    NDIS_STATUS     status;

    NDIS_MAC_CHARACTERISTICS MacChar;

	DBG_ENTER();
	VpnAdapterGlobal = NULL;
    VpnAdapterCreated = FALSE;

    NdisZeroMemory(&MacChar,sizeof(MacChar));
    MacChar.MajorNdisVersion            = NDIS_MAJOR_VERSION;
    MacChar.MinorNdisVersion            = NDIS_MINOR_VERSION;
    MacChar.AddAdapterHandler           = MacAddAdapter;
    MacChar.CloseAdapterHandler         = MacCloseAdapter;
    MacChar.OpenAdapterHandler          = MacOpenAdapter;
    MacChar.QueryGlobalStatisticsHandler= MacQueryGlobalStatistics;
    MacChar.RemoveAdapterHandler        = MacRemoveAdapter;
    MacChar.ResetHandler                = MacReset;
    MacChar.RequestHandler              = MacRequest;
    MacChar.SendHandler                 = MacSend;
    MacChar.TransferDataHandler         = MacTransferData;
    MacChar.UnloadMacHandler            = MacUnload;
    MacChar.Name                        = DriverName;

    ASSERT(PGPnetDriver.NdisWrapperHandle);
    
    NdisRegisterMac(&status,
                    &PGPnetDriver.NdisMacHandle,
                    PGPnetDriver.NdisWrapperHandle,
                    (NDIS_HANDLE)&PGPnetDriver,
                    &MacChar,
                    sizeof(MacChar)
                    );

    if (status != NDIS_STATUS_SUCCESS)
    {
        DBG_PRINT(("!!!!! %s: NdisRegisterMac status=%Xh\n",
                   status););
    }
	
    return (status);
}


#if DBG_MESSAGE
static struct _SupportedOidArray {

	PCHAR		OidName;
	NDIS_OID	Oid;

} SupportedOidArray[ ] = {

	"OID_GEN_SUPPORTED_LIST",				0x00010101,
	"OID_GEN_HARDWARE_STATUS",				0x00010102,
	"OID_GEN_MEDIA_SUPPORTED",				0x00010103,
	"OID_GEN_MEDIA_IN_USE",					0x00010104,
	"OID_GEN_MAXIMUM_LOOKAHEAD",			0x00010105,
	"OID_GEN_MAXIMUM_FRAME_SIZE",			0x00010106,
	"OID_GEN_LINK_SPEED",					0x00010107,
	"OID_GEN_TRANSMIT_BUFFER_SPACE",		0x00010108,
	"OID_GEN_RECEIVE_BUFFER_SPACE",			0x00010109,
	"OID_GEN_TRANSMIT_BLOCK_SIZE",			0x0001010A,
	"OID_GEN_RECEIVE_BLOCK_SIZE",			0x0001010B,
	"OID_GEN_VENDOR_ID",					0x0001010C,
	"OID_GEN_VENDOR_DESCRIPTION",			0x0001010D,
	"OID_GEN_CURRENT_PACKET_FILTER",		0x0001010E,
	"OID_GEN_CURRENT_LOOKAHEAD",			0x0001010F,
	"OID_GEN_DRIVER_VERSION",				0x00010110,
	"OID_GEN_MAXIMUM_TOTAL_SIZE",			0x00010111,
	"OID_GEN_PROTOCOL_OPTIONS",				0x00010112,
	"OID_GEN_MAC_OPTIONS",					0x00010113,
	"OID_GEN_MEDIA_CONNECT_STATUS",			0x00010114,
	"OID_GEN_XMIT_OK",						0x00020101,
	"OID_GEN_RCV_OK",						0x00020102,
	"OID_GEN_XMIT_ERROR",					0x00020103,
	"OID_GEN_RCV_ERROR",					0x00020104,
	"OID_GEN_RCV_NO_BUFFER",				0x00020105,
	"OID_GEN_DIRECTED_BYTES_XMIT",			0x00020201,
	"OID_GEN_DIRECTED_FRAMES_XMIT",			0x00020202,
	"OID_GEN_MULTICAST_BYTES_XMIT",			0x00020203,
	"OID_GEN_MULTICAST_FRAMES_XMIT",		0x00020204,
	"OID_GEN_BROADCAST_BYTES_XMIT",			0x00020205,
	"OID_GEN_BROADCAST_FRAMES_XMIT",		0x00020206,
	"OID_GEN_DIRECTED_BYTES_RCV",			0x00020207,
	"OID_GEN_DIRECTED_FRAMES_RCV",			0x00020208,
	"OID_GEN_MULTICAST_BYTES_RCV",			0x00020209,
	"OID_GEN_MULTICAST_FRAMES_RCV",			0x0002020A,
	"OID_GEN_BROADCAST_BYTES_RCV",			0x0002020B,
	"OID_GEN_BROADCAST_FRAMES_RCV",			0x0002020C,
	"OID_GEN_RCV_CRC_ERROR",				0x0002020D,
	"OID_GEN_TRANSMIT_QUEUE_LENGTH",		0x0002020E,
	"OID_802_3_PERMANENT_ADDRESS",			0x01010101,
	"OID_802_3_CURRENT_ADDRESS",			0x01010102,
	"OID_802_3_MULTICAST_LIST",				0x01010103,
	"OID_802_3_MAXIMUM_LIST_SIZE",			0x01010104,
	"OID_802_3_RCV_ERROR_ALIGNMENT",		0x01020101,
	"OID_802_3_XMIT_ONE_COLLISION",			0x01020102,
	"OID_802_3_XMIT_MORE_COLLISIONS",		0x01020103,
	"OID_802_3_XMIT_DEFERRED",				0x01020201,
	"OID_802_3_XMIT_MAX_COLLISIONS",		0x01020202,
	"OID_802_3_RCV_OVERRUN",				0x01020203,
	"OID_802_3_XMIT_UNDERRUN",				0x01020204,
	"OID_802_3_XMIT_HEARTBEAT_FAILURE",		0x01020205,
	"OID_802_3_XMIT_TIMES_CRS_LOST",		0x01020206,
	"OID_802_3_XMIT_LATE_COLLISIONS",		0x01020207,
	"OID_802_3_PRIORITY",					0x01020208,
	"OID_802_5_PERMANENT_ADDRESS",			0x02010101,
	"OID_802_5_CURRENT_ADDRESS",			0x02010102,
	"OID_802_5_CURRENT_FUNCTIONAL",			0x02010103,
	"OID_802_5_CURRENT_GROUP",				0x02010104,
	"OID_802_5_LAST_OPEN_STATUS",			0x02010105,
	"OID_802_5_CURRENT_RING_STATUS",		0x02010106,
	"OID_802_5_CURRENT_RING_STATE",			0x02010107,
	"OID_802_5_LINE_ERRORS",				0x02020101,
	"OID_802_5_LOST_FRAMES",				0x02020102,
	"OID_802_5_BURST_ERRORS",				0x02020201,
	"OID_802_5_AC_ERRORS",					0x02020202,
	"OID_802_5_ABORT_DELIMETERS",			0x02020203,
	"OID_802_5_FRAME_COPIED_ERRORS",		0x02020204,
	"OID_802_5_FREQUENCY_ERRORS",			0x02020205,
	"OID_802_5_TOKEN_ERRORS",				0x02020206,
	"OID_802_5_INTERNAL_ERRORS",			0x02020207,
	"OID_FDDI_LONG_PERMANENT_ADDR",			0x03010101,
	"OID_FDDI_LONG_CURRENT_ADDR",			0x03010102,
	"OID_FDDI_LONG_MULTICAST_LIST",			0x03010103,
	"OID_FDDI_LONG_MAX_LIST_SIZE",			0x03010104,
	"OID_FDDI_SHORT_PERMANENT_ADDR",		0x03010105,
	"OID_FDDI_SHORT_CURRENT_ADDR",			0x03010106,
	"OID_FDDI_SHORT_MULTICAST_LIST",		0x03010107,
	"OID_FDDI_SHORT_MAX_LIST_SIZE",			0x03010108,
	"OID_FDDI_ATTACHMENT_TYPE",				0x03020101,
	"OID_FDDI_UPSTREAM_NODE_LONG",			0x03020102,
	"OID_FDDI_DOWNSTREAM_NODE_LONG",		0x03020103,
	"OID_FDDI_FRAME_ERRORS",				0x03020104,
	"OID_FDDI_FRAMES_LOST",					0x03020105,
	"OID_FDDI_RING_MGT_STATE",				0x03020106,
	"OID_FDDI_LCT_FAILURES",				0x03020107,
	"OID_FDDI_LEM_REJECTS",					0x03020108,
	"OID_FDDI_LCONNECTION_STATE",			0x03020109,
	"OID_FDDI_SMT_STATION_ID",				0x03030201,
	"OID_FDDI_SMT_OP_VERSION_ID",			0x03030202,
	"OID_FDDI_SMT_HI_VERSION_ID",			0x03030203,
	"OID_FDDI_SMT_LO_VERSION_ID",			0x03030204,
	"OID_FDDI_SMT_MANUFACTURER_DATA",		0x03030205,
	"OID_FDDI_SMT_USER_DATA",				0x03030206,
	"OID_FDDI_SMT_MIB_VERSION_ID",			0x03030207,
	"OID_FDDI_SMT_MAC_CT",					0x03030208,
	"OID_FDDI_SMT_NON_MASTER_CT",			0x03030209,
	"OID_FDDI_SMT_MASTER_CT",				0x0303020A,
	"OID_FDDI_SMT_AVAILABLE_PATHS",			0x0303020B,
	"OID_FDDI_SMT_CONFIG_CAPABILITIES",		0x0303020C,
	"OID_FDDI_SMT_CONFIG_POLICY",			0x0303020D,
	"OID_FDDI_SMT_CONNECTION_POLICY",		0x0303020E,
	"OID_FDDI_SMT_T_NOTIFY",				0x0303020F,
	"OID_FDDI_SMT_STAT_RPT_POLICY",			0x03030210,
	"OID_FDDI_SMT_TRACE_MAX_EXPIRATION",	0x03030211,
	"OID_FDDI_SMT_PORT_INDEXES",			0x03030212,
	"OID_FDDI_SMT_MAC_INDEXES",				0x03030213,
	"OID_FDDI_SMT_BYPASS_PRESENT",			0x03030214,
	"OID_FDDI_SMT_ECM_STATE",				0x03030215,
	"OID_FDDI_SMT_CF_STATE",				0x03030216,
	"OID_FDDI_SMT_HOLD_STATE",				0x03030217,
	"OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG",	0x03030218,
	"OID_FDDI_SMT_STATION_STATUS",			0x03030219,
	"OID_FDDI_SMT_PEER_WRAP_FLAG",			0x0303021A,
	"OID_FDDI_SMT_MSG_TIME_STAMP",			0x0303021B,
	"OID_FDDI_SMT_TRANSITION_TIME_STAMP",	0x0303021C,
	"OID_FDDI_SMT_SET_COUNT",				0x0303021D,
	"OID_FDDI_SMT_LAST_SET_STATION_ID",		0x0303021E,
	"OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS",	0x0303021F,
	"OID_FDDI_MAC_BRIDGE_FUNCTIONS",		0x03030220,
	"OID_FDDI_MAC_T_MAX_CAPABILITY",		0x03030221,
	"OID_FDDI_MAC_TVX_CAPABILITY",			0x03030222,
	"OID_FDDI_MAC_AVAILABLE_PATHS",			0x03030223,
	"OID_FDDI_MAC_CURRENT_PATH",			0x03030224,
	"OID_FDDI_MAC_UPSTREAM_NBR",			0x03030225,
	"OID_FDDI_MAC_DOWNSTREAM_NBR",			0x03030226,
	"OID_FDDI_MAC_OLD_UPSTREAM_NBR",		0x03030227,
	"OID_FDDI_MAC_OLD_DOWNSTREAM_NBR",		0x03030228,
	"OID_FDDI_MAC_DUP_ADDRESS_TEST",		0x03030229,
	"OID_FDDI_MAC_REQUESTED_PATHS",			0x0303022A,
	"OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE",	0x0303022B,
	"OID_FDDI_MAC_INDEX",					0x0303022C,
	"OID_FDDI_MAC_SMT_ADDRESS",				0x0303022D,
	"OID_FDDI_MAC_LONG_GRP_ADDRESS",		0x0303022E,
	"OID_FDDI_MAC_SHORT_GRP_ADDRESS",		0x0303022F,
	"OID_FDDI_MAC_T_REQ",					0x03030230,
	"OID_FDDI_MAC_T_NEG",					0x03030231,
	"OID_FDDI_MAC_T_MAX",					0x03030232,
	"OID_FDDI_MAC_TVX_VALUE",				0x03030233,
	"OID_FDDI_MAC_T_PRI0",					0x03030234,
	"OID_FDDI_MAC_T_PRI1",					0x03030235,
	"OID_FDDI_MAC_T_PRI2",					0x03030236,
	"OID_FDDI_MAC_T_PRI3",					0x03030237,
	"OID_FDDI_MAC_T_PRI4",					0x03030238,
	"OID_FDDI_MAC_T_PRI5",					0x03030239,
	"OID_FDDI_MAC_T_PRI6",					0x0303023A,
	"OID_FDDI_MAC_FRAME_CT",				0x0303023B,
	"OID_FDDI_MAC_COPIED_CT",				0x0303023C,
	"OID_FDDI_MAC_TRANSMIT_CT",				0x0303023D,
	"OID_FDDI_MAC_TOKEN_CT",				0x0303023E,
	"OID_FDDI_MAC_ERROR_CT",				0x0303023F,
	"OID_FDDI_MAC_LOST_CT",					0x03030240,
	"OID_FDDI_MAC_TVX_EXPIRED_CT",			0x03030241,
	"OID_FDDI_MAC_NOT_COPIED_CT",			0x03030242,
	"OID_FDDI_MAC_LATE_CT",					0x03030243,
	"OID_FDDI_MAC_RING_OP_CT",				0x03030244,
	"OID_FDDI_MAC_FRAME_ERROR_THRESHOLD",	0x03030245,
	"OID_FDDI_MAC_FRAME_ERROR_RATIO",		0x03030246,
	"OID_FDDI_MAC_NOT_COPIED_THRESHOLD",	0x03030247,
	"OID_FDDI_MAC_NOT_COPIED_RATIO",		0x03030248,
	"OID_FDDI_MAC_RMT_STATE",				0x03030249,
	"OID_FDDI_MAC_DA_FLAG",					0x0303024A,
	"OID_FDDI_MAC_UNDA_FLAG",				0x0303024B,
	"OID_FDDI_MAC_FRAME_ERROR_FLAG",		0x0303024C,
	"OID_FDDI_MAC_NOT_COPIED_FLAG",			0x0303024D,
	"OID_FDDI_MAC_MA_UNITDATA_AVAILABLE",	0x0303024E,
	"OID_FDDI_MAC_HARDWARE_PRESENT",		0x0303024F,
	"OID_FDDI_MAC_MA_UNITDATA_ENABLE",		0x03030250,
	"OID_FDDI_PATH_INDEX",					0x03030251,
	"OID_FDDI_PATH_RING_LATENCY",			0x03030252,
	"OID_FDDI_PATH_TRACE_STATUS",			0x03030253,
	"OID_FDDI_PATH_SBA_PAYLOAD",			0x03030254,
	"OID_FDDI_PATH_SBA_OVERHEAD",			0x03030255,
	"OID_FDDI_PATH_CONFIGURATION",			0x03030256,
	"OID_FDDI_PATH_T_R_MODE",				0x03030257,
	"OID_FDDI_PATH_SBA_AVAILABLE",			0x03030258,
	"OID_FDDI_PATH_TVX_LOWER_BOUND",		0x03030259,
	"OID_FDDI_PATH_T_MAX_LOWER_BOUND",		0x0303025A,
	"OID_FDDI_PATH_MAX_T_REQ",				0x0303025B,
	"OID_FDDI_PORT_MY_TYPE",				0x0303025C,
	"OID_FDDI_PORT_NEIGHBOR_TYPE",			0x0303025D,
	"OID_FDDI_PORT_CONNECTION_POLICIES",	0x0303025E,
	"OID_FDDI_PORT_MAC_INDICATED",			0x0303025F,
	"OID_FDDI_PORT_CURRENT_PATH",			0x03030260,
	"OID_FDDI_PORT_REQUESTED_PATHS",		0x03030261,
	"OID_FDDI_PORT_MAC_PLACEMENT",			0x03030262,
	"OID_FDDI_PORT_AVAILABLE_PATHS",		0x03030263,
	"OID_FDDI_PORT_MAC_LOOP_TIME",			0x03030264,
	"OID_FDDI_PORT_PMD_CLASS",				0x03030265,
	"OID_FDDI_PORT_CONNECTION_CAPABILITIES", 0x03030266,
	"OID_FDDI_PORT_INDEX",					0x03030267,
	"OID_FDDI_PORT_MAINT_LS",				0x03030268,
	"OID_FDDI_PORT_BS_FLAG",				0x03030269,
	"OID_FDDI_PORT_PC_LS",					0x0303026A,
	"OID_FDDI_PORT_EB_ERROR_CT",			0x0303026B,
	"OID_FDDI_PORT_LCT_FAIL_CT",			0x0303026C,
	"OID_FDDI_PORT_LER_ESTIMATE",			0x0303026D,
	"OID_FDDI_PORT_LEM_REJECT_CT",			0x0303026E,
	"OID_FDDI_PORT_LEM_CT",					0x0303026F,
	"OID_FDDI_PORT_LER_CUTOFF",				0x03030270,
	"OID_FDDI_PORT_LER_ALARM",				0x03030271,
	"OID_FDDI_PORT_CONNNECT_STATE",			0x03030272,
	"OID_FDDI_PORT_PCM_STATE",				0x03030273,
	"OID_FDDI_PORT_PC_WITHHOLD",			0x03030274,
	"OID_FDDI_PORT_LER_FLAG",				0x03030275,
	"OID_FDDI_PORT_HARDWARE_PRESENT",		0x03030276,
	"OID_FDDI_SMT_STATION_ACTION",			0x03030277,
	"OID_FDDI_PORT_ACTION",					0x03030278,
	"OID_FDDI_IF_DESCR",					0x03030279,
	"OID_FDDI_IF_TYPE",						0x0303027A,
	"OID_FDDI_IF_MTU",						0x0303027B,
	"OID_FDDI_IF_SPEED",					0x0303027C,
	"OID_FDDI_IF_PHYS_ADDRESS",				0x0303027D,
	"OID_FDDI_IF_ADMIN_STATUS",				0x0303027E,
	"OID_FDDI_IF_OPER_STATUS",				0x0303027F,
	"OID_FDDI_IF_LAST_CHANGE",				0x03030280,
	"OID_FDDI_IF_IN_OCTETS",				0x03030281,
	"OID_FDDI_IF_IN_UCAST_PKTS",			0x03030282,
	"OID_FDDI_IF_IN_NUCAST_PKTS",			0x03030283,
	"OID_FDDI_IF_IN_DISCARDS",				0x03030284,
	"OID_FDDI_IF_IN_ERRORS",				0x03030285,
	"OID_FDDI_IF_IN_UNKNOWN_PROTOS",		0x03030286,
	"OID_FDDI_IF_OUT_OCTETS",				0x03030287,
	"OID_FDDI_IF_OUT_UCAST_PKTS",			0x03030288,
	"OID_FDDI_IF_OUT_NUCAST_PKTS",			0x03030289,
	"OID_FDDI_IF_OUT_DISCARDS",				0x0303028A,
	"OID_FDDI_IF_OUT_ERRORS",				0x0303028B,
	"OID_FDDI_IF_OUT_QLEN",					0x0303028C,
	"OID_FDDI_IF_SPECIFIC",					0x0303028D,
	"OID_WAN_PERMANENT_ADDRESS",			0x04010101,
	"OID_WAN_CURRENT_ADDRESS",				0x04010102,
	"OID_WAN_QUALITY_OF_SERVICE",			0x04010103,
	"OID_WAN_PROTOCOL_TYPE",				0x04010104,
	"OID_WAN_MEDIUM_SUBTYPE",				0x04010105,
	"OID_WAN_HEADER_FORMAT",				0x04010106,
	"OID_WAN_GET_INFO",						0x04010107,
	"OID_WAN_SET_LINK_INFO",				0x04010108,
	"OID_WAN_GET_LINK_INFO",				0x04010109,
	"OID_WAN_LINE_COUNT",					0x0401010A,
	"OID_WAN_GET_BRIDGE_INFO",				0x0401020A,
	"OID_WAN_SET_BRIDGE_INFO",				0x0401020B,
	"OID_WAN_GET_COMP_INFO",				0x0401020C,
	"OID_WAN_SET_COMP_INFO",				0x0401020D,
	"OID_WAN_GET_STATS_INFO",				0x0401020E,
	"OID_PGP_OPERATION_MANDATORY",			0xFF010100,
	"OID_PGP_WIN32_IOCTL",					0xFF010101,
	"OID_PGP_OPERATION_OPTIONAL",			0xFF010200,
	"OID_PGP_EVENT_CREATE",					0xFF010201,
	"OID_PGP_EVENT_DESTROY",				0xFF010202,
	"OID_PGP_SHARED_MEM_ALLOC",				0xFF010203,
	"OID_PGP_SHARED_MEM_FREE",				0xFF010204,
	"OID_PGP_NEWCONFIG",					0xFF010205,
	"OID_PGP_NEWHOST",						0xFF010206,
	"OID_PGP_NEWSA",						0xFF010207,
	"OID_PGP_SAFAILED",						0xFF010208,
	"OID_PGP_SADIED",						0xFF010209,
	"OID_PGP_SAUPDATE",						0xFF010210,
	"OID_PGP_ALLHOSTS",						0xFF010211,
	"OID_PGP_SHUTDOWN",						0xFF010212,
	"OID_PGP_LOCALIP",						0xFF010213,
	"OID_PGP_QUEUE_INITIALIZE",				0xFF010220,
	"OID_PGP_QUEUE_RELEASE",				0xFF010221,
	"OID_PGP_NEW_DUMMY_HOST",				0xFF0102E0,
	"OID_PGP_NEW_DUMMY_SA",					0xFF0102E1,
	"OID_PGP_EVENT_SET",					0xFF0102FF,
	"OID_PGP_STATISTICS_MANDATORY",			0xFF020100,
	"OID_PGP_STATISTICS_OPTIONAL",			0xFF020200,
	"OID_PGP_GET_SEND_PACKETS",				0xFF020201,
	"OID_PGP_GET_RECEIVE_PACKETS",			0xFF020202
};


#define NUM_OID_ENTRIES (sizeof(SupportedOidArray) / sizeof(SupportedOidArray[0]))

/*
// This debug routine will lookup the printable name for the selected OID.
*/
char *
GetOidString(NDIS_OID Oid)
{
    UINT i;

    for (i = 0; i < NUM_OID_ENTRIES-1; i++)
    {
		if (SupportedOidArray[i].Oid == Oid) {
			break;
		}
    }
    return(SupportedOidArray[i].OidName);
}

void NdisRequestTrace(PNDIS_REQUEST NdisRequest)
{
	DBG_DISPLAY(("NdisRequest: %s\n", GetOidString(NdisRequest->DATA.QUERY_INFORMATION.Oid)););
}
#else
void NdisRequestTrace(PNDIS_REQUEST NdisRequest)
{
}
#endif // DBG_MESSAGE

⌨️ 快捷键说明

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