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

📄 driverentry.cpp

📁 USB sniffer for windows
💻 CPP
📖 第 1 页 / 共 5 页
字号:


			sprintf(TempBuff,"\tStartFrame\t\t\t= %08x\n",
				pIsochTransfer->StartFrame);
			FillRollingBuffer(TempBuff);
			sprintf(TempBuff,"\tNumberOfPackets\t\t= %08x\n", 
				pIsochTransfer->NumberOfPackets);
			FillRollingBuffer(TempBuff);
			if(bReturnedFromHCD)
			{
				sprintf(TempBuff,"\tErrorCount\t\t\t= %08x\n",
					pIsochTransfer->ErrorCount);
				FillRollingBuffer(TempBuff);
			}
			for(ULONG p=0; p < pIsochTransfer->NumberOfPackets; p++)
			{
				sprintf(TempBuff,"\tIsoPacket[%d].Offset = %u\n",
					pIsochTransfer->IsoPacket[p].Offset);
				FillRollingBuffer(TempBuff);
				sprintf(TempBuff,"\tIsoPacket[%d].Length = %u\n",
					pIsochTransfer->IsoPacket[p].Length);
				FillRollingBuffer(TempBuff);
				if(bReturnedFromHCD)
				{
					sprintf(TempBuff,"\tIsoPacket[%d].Status = %u\n",
					pIsochTransfer->IsoPacket[p].Status);
					FillRollingBuffer(TempBuff);
				}
			}
			sprintf(TempBuff,"\tUrbLink\t\t\t= %08x\n",
				pIsochTransfer->UrbLink);
			FillRollingBuffer(TempBuff);
			if(pIsochTransfer->UrbLink)
			{
				sprintf(TempBuff,"---> Linked URB:\n");
				FillRollingBuffer(TempBuff);
				DumpURB(pIsochTransfer->UrbLink, bReturnedFromHCD);
				sprintf(TempBuff,"---< Linked URB\n");
				FillRollingBuffer(TempBuff);
			}
		}
		break;
	case URB_FUNCTION_RESET_PIPE:
		{
			struct _URB_PIPE_REQUEST   *pResetPipe = (struct _URB_PIPE_REQUEST *) pUrb;

			sprintf(TempBuff,"-- URB_FUNCTION_RESET_PIPE:\n");
			FillRollingBuffer(TempBuff);
			if(pResetPipe->Hdr.Length < sizeof(struct _URB_PIPE_REQUEST))
				sprintf(TempBuff,
				"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
				pResetPipe->Hdr.Length, 
				sizeof(struct _URB_PIPE_REQUEST));
			FillRollingBuffer(TempBuff);

			if(!bReturnedFromHCD)
				DumpPipeHandle("  PipeHandle",pResetPipe->PipeHandle);
		}
		break;
	case URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pGetDescriptorFromDevice = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:\n");
			FillRollingBuffer(TempBuff);
			if(pGetDescriptorFromDevice->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pGetDescriptorFromDevice->Hdr.Length, 
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pGetDescriptorFromDevice, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_DESCRIPTOR_FROM_ENDPOINT:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pGetDescriptorFromEndpoint = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_DESCRIPTOR_FROM_ENDPOINT:\n");
			FillRollingBuffer(TempBuff);
			if(pGetDescriptorFromEndpoint->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pGetDescriptorFromEndpoint->Hdr.Length,
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pGetDescriptorFromEndpoint, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_DESCRIPTOR_FROM_INTERFACE:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pGetDescriptorFromInterface = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_DESCRIPTOR_FROM_INTERFACE:\n");
			FillRollingBuffer(TempBuff);
			if(pGetDescriptorFromInterface->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pGetDescriptorFromInterface->Hdr.Length,
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pGetDescriptorFromInterface, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_SET_DESCRIPTOR_TO_DEVICE:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pSetDescriptorToDevice = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_SET_DESCRIPTOR_TO_DEVICE:\n");
			FillRollingBuffer(TempBuff);
			if(pSetDescriptorToDevice->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetDescriptorToDevice->Hdr.Length,
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pSetDescriptorToDevice, FALSE, bReturnedFromHCD);
		}
		break;
	case URB_FUNCTION_SET_DESCRIPTOR_TO_ENDPOINT:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pSetDescriptorToEndpoint = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_SET_DESCRIPTOR_TO_ENDPOINT:\n");
			FillRollingBuffer(TempBuff);
			if(pSetDescriptorToEndpoint->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetDescriptorToEndpoint->Hdr.Length,
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pSetDescriptorToEndpoint, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_SET_DESCRIPTOR_TO_INTERFACE:
		{
			struct _URB_CONTROL_DESCRIPTOR_REQUEST   *pSetDescriptorToInterface = (struct _URB_CONTROL_DESCRIPTOR_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_SET_DESCRIPTOR_TO_INTERFACE:\n");
			FillRollingBuffer(TempBuff);
			if(pSetDescriptorToInterface->Hdr.Length < sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetDescriptorToInterface->Hdr.Length, 
					sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpDescriptorRequest(pSetDescriptorToInterface, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_SET_FEATURE_TO_DEVICE:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pSetFeatureToDevice = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,"-- URB_FUNCTION_SET_FEATURE_TO_DEVICE:\n");
			FillRollingBuffer(TempBuff);
			if(pSetFeatureToDevice->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n", 
					pSetFeatureToDevice->Hdr.Length, 
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pSetFeatureToDevice, TRUE, bReturnedFromHCD);
 
		}
		break;
	case URB_FUNCTION_SET_FEATURE_TO_INTERFACE:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pSetFeatureToInterface = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_SET_FEATURE_TO_INTERFACE:\n");
			FillRollingBuffer(TempBuff);
			if(pSetFeatureToInterface->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetFeatureToInterface->Hdr.Length, 
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pSetFeatureToInterface, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_SET_FEATURE_TO_ENDPOINT:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pSetFeatureToEndpoint = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_SET_FEATURE_TO_ENDPOINT:\n");
			FillRollingBuffer(TempBuff);
			if(pSetFeatureToEndpoint->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetFeatureToEndpoint->Hdr.Length, 
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pSetFeatureToEndpoint, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_SET_FEATURE_TO_OTHER:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pSetFeatureToOther = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,"-- URB_FUNCTION_SET_FEATURE_TO_OTHER:\n");
			FillRollingBuffer(TempBuff);
			if(pSetFeatureToOther->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pSetFeatureToOther->Hdr.Length,
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pSetFeatureToOther, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_CLEAR_FEATURE_TO_DEVICE:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pClearFeatureToDevice = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_CLEAR_FEATURE_TO_DEVICE:\n");
			FillRollingBuffer(TempBuff);
			if(pClearFeatureToDevice->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pClearFeatureToDevice->Hdr.Length,
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pClearFeatureToDevice, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_CLEAR_FEATURE_TO_INTERFACE:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pClearFeatureToInterface = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_CLEAR_FEATURE_TO_INTERFACE:\n");
			FillRollingBuffer(TempBuff);
			if(pClearFeatureToInterface->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pClearFeatureToInterface->Hdr.Length, 
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pClearFeatureToInterface, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_CLEAR_FEATURE_TO_ENDPOINT:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pClearFeatureToEndpoint = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_CLEAR_FEATURE_TO_ENDPOINT:\n");
			FillRollingBuffer(TempBuff);
			if(pClearFeatureToEndpoint->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pClearFeatureToEndpoint->Hdr.Length,
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pClearFeatureToEndpoint, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_CLEAR_FEATURE_TO_OTHER:
		{
			struct _URB_CONTROL_FEATURE_REQUEST   *pClearFeatureToOther = (struct _URB_CONTROL_FEATURE_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_CLEAR_FEATURE_TO_OTHER:\n");
			FillRollingBuffer(TempBuff);
			if(pClearFeatureToOther->Hdr.Length < sizeof(struct _URB_CONTROL_FEATURE_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n", 
					pClearFeatureToOther->Hdr.Length,
					sizeof(struct _URB_CONTROL_FEATURE_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpFeatureRequest(pClearFeatureToOther, TRUE, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_STATUS_FROM_DEVICE:
		{
			struct _URB_CONTROL_GET_STATUS_REQUEST *pGetStatusFromDevice = (struct _URB_CONTROL_GET_STATUS_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_STATUS_FROM_DEVICE:\n");
			FillRollingBuffer(TempBuff);
			if(pGetStatusFromDevice->Hdr.Length < sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pGetStatusFromDevice->Hdr.Length,
					sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpGetStatusRequest(pGetStatusFromDevice, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_STATUS_FROM_INTERFACE:
		{
			struct _URB_CONTROL_GET_STATUS_REQUEST *pGetStatusFromInterface = (struct _URB_CONTROL_GET_STATUS_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_STATUS_FROM_INTERFACE:\n");
			FillRollingBuffer(TempBuff);
			if(pGetStatusFromInterface->Hdr.Length < sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n",
					pGetStatusFromInterface->Hdr.Length, 
					sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpGetStatusRequest(pGetStatusFromInterface, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_STATUS_FROM_ENDPOINT:
		{
			struct _URB_CONTROL_GET_STATUS_REQUEST *pGetStatusFromEndpoint = (struct _URB_CONTROL_GET_STATUS_REQUEST *) pUrb;

			sprintf(TempBuff,
				"-- URB_FUNCTION_GET_STATUS_FROM_ENDPOINT:\n");
			FillRollingBuffer(TempBuff);
			if(pGetStatusFromEndpoint->Hdr.Length < sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST))
			{
				sprintf(TempBuff,
					"!!! Hdr.Length is wrong! (is: %d, should be at least: %d)\n", 
					pGetStatusFromEndpoint->Hdr.Length,
					sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST));
				FillRollingBuffer(TempBuff);
			}
			DumpGetStatusRequest(pGetStatusFromEndpoint, bReturnedFromHCD);

		}
		break;
	case URB_FUNCTION_GET_STATUS_FROM_OTHER:
		{
			struct _URB_CONTROL_GET_STATUS_REQUEST *pGetStatusFromOther = (struct _URB_CONTROL_GET_STATUS_REQUEST *) pUrb;

			sprintf(TempBuff,"-- URB_FUNCTION_GET_STATUS_FROM_OTHER:\n");
			FillRollingBuffer(TempBuff);
			if(pGetStatusFromOther->Hdr.Length < sizeof(struct _URB_CONTROL_GET_STATUS_REQUEST))
			{
				sprintf(TempBuff,
					"!!! H

⌨️ 快捷键说明

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