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

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

?? driver.cpp

?? windows ce 50 drive program
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
			m_pLower->DeviceOnSetupFilter(				m_pLower->m_szCurrentSettings[SID_GEN_CURRENT_PACKET_FILTER]				| NDIS_PACKET_TYPE_MULTICAST);			break;		// don't care oids		case OID_GEN_CURRENT_LOOKAHEAD:			break;		case OID_GEN_NETWORK_LAYER_ADDRESSES:		default:			status = NDIS_STATUS_INVALID_OID;			} // of switch Oid		return status;}void	NIC_DRIVER_OBJECT::DriverEnableInterrupt(void){	m_pLower->DeviceEnableInterrupt();}void	NIC_DRIVER_OBJECT::DriverDisableInterrupt(void){	m_pLower->DeviceDisableInterrupt();}BOOL	NIC_DRIVER_OBJECT::DriverCheckForHang(void){	if(m_bSystemHang) return TRUE;	return m_pLower->DeviceCheckForHang();}VOID	NIC_DRIVER_OBJECT::DriverHalt(void){	m_pLower->DeviceHalt();}NDIS_STATUS NIC_DRIVER_OBJECT::DriverReset(	OUT PBOOLEAN	pbAddressingReset){	// Reset activities	// 1. Abort all current tx and rx.	// 2. Cleanup waiting and standby queues.	// 3. Re-init tx and rx descriptors.	// 4. Softreset MAC, PHY and set registers angain.	*pbAddressingReset = TRUE;#ifndef	IMPL_RESET	return	NDIS_STATUS_SUCCESS;#endif	m_pLower->DeviceReset();	DriverStart();	m_bSystemHang = 0;	m_bOutofResources = 0;	return NDIS_STATUS_SUCCESS;}NDIS_STATUS	NIC_DRIVER_OBJECT::DriverSend(	IN PNDIS_PACKET	pPacket,	IN UINT			uFlags){	PERF_PROBE_ON(PROBE_SEND);#if	defined(PERF_TEST)	return	NDIS_STATUS_SUCCESS;#else	PCQUEUE_GEN_HEADER	pobj;		//DEBUG_PRINT((TEXT("TQ size=%d"), m_TQueue.Size()));		if(!(pobj = m_TQueue.Dequeue())) 	{		m_bOutofResources = 1;		DEBUG_PRINT((TEXT("<DM9:m_bOutofResources\n")));		return NDIS_STATUS_RESOURCES;	}		PNDIS_BUFFER	pndisFirstBuffer;	UINT			uPhysicalBufferCount;	UINT			uBufferCount;	UINT			uTotalPacketLength;	PNDIS_BUFFER	pndisCurrBuffer;	PU8		pcurr = (PU8)CQueueGetUserPointer(pobj);	PVOID	ptrBuffer;	UINT	nBuffer;	U32		idx,check;	NdisQueryPacket(		pPacket, 		&uPhysicalBufferCount, 		&uBufferCount,		&pndisFirstBuffer,        &uTotalPacketLength);    if (uTotalPacketLength > ETH_MAX_FRAME_SIZE) {        return NDIS_STATUS_FAILURE;    }	uPhysicalBufferCount &= 0xFFFF;	PERF_PROBE_ON(PROBE_SEND+1);	for(idx=0,check=0,pndisCurrBuffer=pndisFirstBuffer;		idx < uBufferCount;		idx++, pndisCurrBuffer = pndisCurrBuffer->Next)	{		NdisQueryBuffer(			pndisCurrBuffer,			&ptrBuffer,			&nBuffer);		if(!nBuffer) continue;				NdisMoveMemory(pcurr, ptrBuffer, nBuffer);		pcurr += nBuffer;		check += nBuffer;        	} // of for gathering buffer	if(uTotalPacketLength != check) return NDIS_STATUS_FAILURE;#if	0 || defined(PATCH_001)	/* do it twice */	dummy_copy((PU8)CQueueGetUserPointer(pobj), uTotalPacketLength);#endif	PERF_PROBE_OFF(PROBE_SEND+1);		pobj->pPacket = (PVOID)pPacket;	pobj->uFlags = uFlags;	pobj->nLength = uTotalPacketLength;		m_pLower->DeviceSend(pobj);		PERF_PROBE_OFF(PROBE_SEND);#ifdef	IMPL_SEND_INDICATION	return NDIS_STATUS_PENDING;#else	return NDIS_STATUS_SUCCESS;#endif#endif	// of !PERF_TEST}void	NIC_DRIVER_OBJECT::DriverReceiveIndication(	int		nCurr,	PVOID	pVoid,	int		nLength){#if !defined(PERF_TEST)	PERF_PROBE_ON(PROBE_RECV);	NdisMEthIndicateReceive(		m_NdisHandle,		(PNDIS_HANDLE)nCurr,		(char*)pVoid,		ETH_HEADER_SIZE,		((char*)pVoid + ETH_HEADER_SIZE),		nLength - ETH_HEADER_SIZE,		nLength - ETH_HEADER_SIZE);		NdisMEthIndicateReceiveComplete(m_NdisHandle);	PERF_PROBE_OFF(PROBE_RECV);	return;		#elif	defined(PERF_TX_MODE)	m_pLower->DeviceDisableReceive();		return;#elif	defined(PERF_ECHO_MODE)	PCQUEUE_GEN_HEADER	pobj;		if(!(pobj = m_TQueue.Dequeue())) return;	PU8		pcurr;		pcurr = (PU8)CQueueGetUserPointer(pobj);	memcpy((void*)pcurr,pVoid,pobj->nLength=nLength);	PU16	pshort;	pshort = (PU16)pcurr;	// save SA to tmp	U16		sa0,sa1,sa2;	sa0 = *(pshort+0);	sa1 = *(pshort+1);	sa2 = *(pshort+2);	// copy DA to SA		*(pshort+0) = *(pshort+3);	*(pshort+1) = *(pshort+4);	*(pshort+2) = *(pshort+5);		// restore DA from tmp	*(pshort+3) = sa0;	*(pshort+4) = sa1;	*(pshort+5) = sa2;	m_pLower->DeviceSend(pobj);		return;	#endif}	void	NIC_DRIVER_OBJECT::DriverSendCompleted(	PCQUEUE_GEN_HEADER	pObject){#if defined(PERF_TX_MODE)	m_pLower->DeviceSend(pObject);	return;#endif	if(!pObject) return;	m_TQueue.Enqueue(pObject);	#ifdef	IMPL_SEND_INDICATION	NdisMSendResourcesAvailable(m_NdisHandle);	NdisMSendComplete(				m_NdisHandle,				(PNDIS_PACKET)(pObject->pPacket),				NDIS_STATUS_SUCCESS);#endif}	/******************************************************************************************** * * Trunk Functions * ********************************************************************************************/#ifdef	__cplusplusextern "C" {	// miniport driver trunk functions#endifNDIS_STATUS MiniportInitialize(	OUT PNDIS_STATUS OpenErrorStatus,	OUT PUINT SelectedMediaIndex, 	IN PNDIS_MEDIUM MediaArray, 	IN UINT MediaArraySize,    IN NDIS_HANDLE MiniportHandle, 	IN NDIS_HANDLE WrapperConfigHandle){		PUTS(("<DM9:++MiniportIntialize>\n"));#if	defined(DM9601)		USB_NIC_DRIVER	*pnic;	if(!(pnic = new USB_NIC_DRIVER(		MiniportHandle,		WrapperConfigHandle,		ghDevice,		glpUsbFuncs,		glpUsbDevice,		glpInterface)))		return	NDIS_STATUS_FAILURE;	glpUsbFuncs->lpRegisterNotificationRoutine(		ghDevice,		(LPDEVICE_NOTIFY_ROUTINE)USBNotificationRoutine,		(LPVOID)pnic);#else	NIC_DRIVER_OBJECT	*pnic;	if(!(pnic = new NIC_DRIVER_OBJECT(		MiniportHandle,WrapperConfigHandle)))			return	NDIS_STATUS_FAILURE;#endif	C_Exception	*pexp;	TRY	{		pnic->EDriverInitialize(			OpenErrorStatus,			SelectedMediaIndex, 			MediaArray, 			MediaArraySize);		pnic->DriverStart();			FI;	}	CATCH(pexp)	{		pexp->PrintErrorMessage();		CLEAN(pexp);		delete pnic;		return NDIS_STATUS_FAILURE;	}		PUTS(("<DM9:--MiniportInitialize>\n"));	return NDIS_STATUS_SUCCESS;}void MiniportISRHandler(		OUT PBOOLEAN InterruptRecognized, 		OUT PBOOLEAN QueueInterrupt,		IN  NDIS_HANDLE MiniportContext){	((NIC_DRIVER_OBJECT*)MiniportContext)->DriverIsr(		InterruptRecognized,		QueueInterrupt);}VOID	MiniportInterruptHandler(	IN NDIS_HANDLE  MiniportContext){	((NIC_DRIVER_OBJECT*)MiniportContext)->DriverInterruptHandler();}NDIS_STATUS MiniportQueryInformation(	IN NDIS_HANDLE	MiniportContext,	IN NDIS_OID		Oid,	IN PVOID		InfoBuffer, 	IN ULONG		InfoBufferLength, 	OUT PULONG		BytesWritten,	OUT PULONG		BytesNeeded){	return ((NIC_DRIVER_OBJECT*)MiniportContext)->DriverQueryInformation(			Oid,			InfoBuffer, 			InfoBufferLength, 			BytesWritten,			BytesNeeded);}NDIS_STATUS MiniportSetInformation(	IN NDIS_HANDLE	MiniportContext, 	IN NDIS_OID		Oid,	IN PVOID		InfoBuffer, 	IN ULONG		InfoBufferLength, 	OUT PULONG		BytesRead,	OUT PULONG		BytesNeeded){	return ((NIC_DRIVER_OBJECT*)MiniportContext)->DriverSetInformation(			Oid,			InfoBuffer, 			InfoBufferLength, 			BytesRead,			BytesNeeded);}VOID	MiniportEnableInterrupt(	IN NDIS_HANDLE  MiniportContext){	((NIC_DRIVER_OBJECT*)MiniportContext)->DriverEnableInterrupt();}VOID	MiniportDisableInterrupt(	IN NDIS_HANDLE  MiniportContext){	((NIC_DRIVER_OBJECT*)MiniportContext)->DriverDisableInterrupt();}BOOLEAN	MiniportCheckForHang(	IN NDIS_HANDLE  MiniportContext){	return ((NIC_DRIVER_OBJECT*)MiniportContext)->DriverCheckForHang();} VOID	MiniportHalt(	IN NDIS_HANDLE  MiniportContext){	((NIC_DRIVER_OBJECT*)MiniportContext)->DriverHalt();} NDIS_STATUS MiniportReset(    OUT PBOOLEAN  AddressingReset,    IN NDIS_HANDLE  MiniportContext){	return ((NIC_DRIVER_OBJECT*)MiniportContext)->DriverReset(AddressingReset);}NDIS_STATUS	MiniportSend(	IN NDIS_HANDLE	MiniportContext,	IN PNDIS_PACKET	Packet,	IN UINT			Flags){	return ((NIC_DRIVER_OBJECT*)MiniportContext)->DriverSend(Packet,Flags);}#ifdef	__cplusplus   }	// of miniport trunk functions#endif/******************************************************************************************** * * DriverEntry * ********************************************************************************************/DWORD MesurePerformance(	DWORD	nLoop){	/* performance evaluation */		LARGE_INTEGER freq;	LARGE_INTEGER listart, listop;	DWORD	dwstart, dwstop;		QueryPerformanceFrequency(&freq);		DWORD	i,j;	WORD	sum, sz[1512];		memset((void*)sz, 0x5a, sizeof(sz));		dwstart  =  GetTickCount();	QueryPerformanceCounter(&listart);		for(i=0;i<nLoop;i++)		for(j=0,sum=0;j<1512;j++)			sum += sz[j];		QueryPerformanceCounter(&listop);	dwstop  =  GetTickCount();		return (listop.LowPart - listart.LowPart);}extern "C" NTSTATUS DriverEntry(	IN PDRIVER_OBJECT	pDriverObject, 	IN PUNICODE_STRING	pRegistryPath){	NDIS_STATUS		status;	NDIS_HANDLE		hwrapper;	NDIS40_MINIPORT_CHARACTERISTICS	ndischar;#if	defined(DM9000)	PUTS(("<Davicom DM9000 driver v3.2.7 for WinCE 4.2/5.0>\r\n"));#elif defined(DM9102)	PUTS(("<Davicom DM9102 driver v3.2.7 for WinCE 4.2/5.0>\r\n"));#elif defined(DM9601)	PUTS(("<Davicom DM9601 driver v3.2.7 for WinCE 4.2/5.0>\r\n"));#endif	NdisMInitializeWrapper(		&hwrapper, 		pDriverObject,		pRegistryPath,		NULL);	memset((void*)&ndischar,0,sizeof(ndischar));        ndischar.Ndis30Chars.MajorNdisVersion = PRJ_NDIS_MAJOR_VERSION;	ndischar.Ndis30Chars.MinorNdisVersion = PRJ_NDIS_MINOR_VERSION;    	ndischar.Ndis30Chars.InitializeHandler = MiniportInitialize;    ndischar.Ndis30Chars.ResetHandler      = MiniportReset;    ndischar.Ndis30Chars.CheckForHangHandler = MiniportCheckForHang;    ndischar.Ndis30Chars.HaltHandler         = MiniportHalt;    ndischar.Ndis30Chars.HandleInterruptHandler   = MiniportInterruptHandler;    ndischar.Ndis30Chars.ISRHandler               = MiniportISRHandler;    ndischar.Ndis30Chars.QueryInformationHandler  = MiniportQueryInformation;    ndischar.Ndis30Chars.SetInformationHandler	  = MiniportSetInformation;    ndischar.Ndis30Chars.SendHandler              = MiniportSend;#if	defined(DM9601)	if((status = NdisIMRegisterLayeredMiniport(		hwrapper,		(PNDIS_MINIPORT_CHARACTERISTICS)&ndischar,		sizeof(ndischar),		&ghNdisIntermediateHandle ) != NDIS_STATUS_SUCCESS))#else	if((status = NdisMRegisterMiniport(		hwrapper,		(PNDIS_MINIPORT_CHARACTERISTICS)&ndischar,		sizeof(ndischar)) != NDIS_STATUS_SUCCESS))#endif	{		NdisTerminateWrapper(hwrapper,NULL);		return status;	}#ifndef	IMPL_DLL_ENTRY		INIT_EXCEPTION();#endif    return NDIS_STATUS_SUCCESS;}#if	defined(DM9601)#include	<usb100.h>#include	<usbdi.h>#include	<usbtypes.h>LPCWSTR		glpcwstrDriverID =	TEXT("DavicomUsb");extern "C" BOOL USBInstallDriver(	LPCWSTR		lpcwstrDriverName){	int		ret;		// register unique client driver identifier	ret = RegisterClientDriverID(			glpcwstrDriverID);					// sets up the LoadClients registry keys	USB_DRIVER_SETTINGS	settings;		settings.dwCount = sizeof(settings);	settings.dwVendorId = 0x0A46;	settings.dwProductId = 0x9601;	settings.dwReleaseNumber = 0x0101;	settings.dwDeviceClass = USB_NO_INFO;//USB_DEVICE_CLASS_COMMUNICATIONS;	settings.dwDeviceSubClass = USB_NO_INFO;	settings.dwDeviceProtocol = USB_NO_INFO;	settings.dwInterfaceClass = USB_NO_INFO;//USB_DEVICE_CLASS_COMMUNICATIONS;	settings.dwInterfaceSubClass = USB_NO_INFO;//0x06;	// Ethernet model	settings.dwInterfaceProtocol = USB_NO_INFO;//0x00;	// no class specific		ret = RegisterClientSettings(		lpcwstrDriverName,		glpcwstrDriverID,		NULL,		&settings);		if(!ret) return FALSE;			return	TRUE;}extern "C" BOOL USBUnInstallDriver(void){	return	TRUE;}extern "C" NTSTATUS PostDriverEntry(	USB_HANDLE 				hDevice, 	LPCUSB_FUNCS			lpUsbFuncs, 	LPCUSB_DEVICE			lpUsbDevice,	LPCUSB_INTERFACE 		lpInterface){	if(!ghNdisIntermediateHandle) return NDIS_STATUS_FAILURE;		ghDevice = hDevice;	glpUsbFuncs = lpUsbFuncs;	glpUsbDevice = lpUsbDevice;	glpInterface = lpInterface;		NDIS_STATUS		status;	if((status = NdisIMInitializeDeviceInstanceEx(		ghNdisIntermediateHandle,		&guniRegistryPath,		NULL		) != NDIS_STATUS_SUCCESS))	{		return status;	}    return NDIS_STATUS_SUCCESS;}extern "C" BOOL USBDeviceAttach(	USB_HANDLE 				hDevice, 	LPCUSB_FUNCS			lpUsbFuncs, 	LPCUSB_INTERFACE 		lpInterface, 	LPCWSTR 				szUniqueDriverId, 	LPBOOL 					fAcceptControl, 	LPCUSB_DRIVER_SETTINGS 	lpDriverSettings, 	DWORD 					dwUnused ){	*fAcceptControl = TRUE;	LPCUSB_DEVICE		pusbdev;	LPCUSB_INTERFACE	pusbif;		// retrive device and interface information	for(pusbif=lpInterface;!pusbif;)	{		if(!(pusbdev = lpUsbFuncs->lpGetDeviceInfo(hDevice)))			return FALSE;		if(!(pusbif = lpUsbFuncs->lpFindInterface(pusbdev,0,0)))			return FALSE;	} // of for pusbif		// check vendor and product IDs	if( (pusbdev->Descriptor.idVendor != 0x0A46) ||		(pusbdev->Descriptor.idProduct != 0x9601)) return FALSE;	unsigned short	wsz[512];	wsprintf(wsz,TEXT("%s%d"),szUniqueDriverId,++gnInstance);	NdisInitUnicodeString(		&guniRegistryPath, wsz);	if(PostDriverEntry(hDevice,lpUsbFuncs,pusbdev,pusbif)		!= NDIS_STATUS_SUCCESS) 		return (*fAcceptControl=FALSE);	return *fAcceptControl;		}#endif#if 0/* performance result * *  * Pentium-S 133 MHz * 	1,000,000 times, 163,472,385 uS * */LARGE_INTEGER lp1, lp2, lp;DWORD	dw1, dw2;DWORD	q1;DWORD	iloops = 10*1000;dw1 = MesurePerformance(iloops);q1 = dw1 / iloops;QueryPerformanceFrequency(  &lp);dw1 =  GetTickCount();QueryPerformanceCounter(&lp1);NdisMSleep(2*1000*1000);if(0){	int i;	for(i=0;i<0x70000000;i++);}dw2 =  GetTickCount();	QueryPerformanceCounter(&lp2);DWORD delta=dw2-dw1;DWORD deltap = lp2.LowPart - lp1.LowPart;DWORD deltah =  lp2.HighPart - lp1.HighPart;#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产婷婷精品av在线| 国产精品色呦呦| 成人综合在线观看| 一区二区三区免费在线观看| 在线不卡欧美精品一区二区三区| 狠狠色丁香久久婷婷综合丁香| 中文字幕欧美激情一区| 91精品国产一区二区三区蜜臀 | 日韩主播视频在线| 日本一二三四高清不卡| 91麻豆精品国产无毒不卡在线观看 | 激情深爱一区二区| 亚洲激情自拍偷拍| 中文字幕第一区二区| 日韩天堂在线观看| 欧美三级电影网| 97久久精品人人澡人人爽| 国产精品一区二区男女羞羞无遮挡 | av一区二区久久| 国产精品一区一区| 九九在线精品视频| 五月婷婷久久丁香| 一区二区三区日韩| 亚洲色图清纯唯美| 亚洲国产精品99久久久久久久久 | 午夜久久福利影院| 亚洲免费观看视频| 亚洲天堂网中文字| 欧美激情一区在线观看| 久久一区二区三区四区| 欧美大度的电影原声| 欧美日韩国产片| 欧美色图12p| 欧美三级视频在线| 欧美在线三级电影| 欧美在线视频日韩| 欧美在线观看视频一区二区| 一本在线高清不卡dvd| 99久久伊人精品| gogo大胆日本视频一区| 成人免费视频播放| 菠萝蜜视频在线观看一区| 成人免费视频视频在线观看免费| 国产麻豆成人精品| 国产凹凸在线观看一区二区| 国产麻豆一精品一av一免费 | 欧美在线免费观看视频| 色丁香久综合在线久综合在线观看| 波多野结衣中文字幕一区二区三区 | 欧美色综合网站| 欧美日韩精品二区第二页| 欧美色综合天天久久综合精品| 在线视频欧美区| 91精品国产品国语在线不卡| 91精品国产综合久久精品麻豆| 91精品国产色综合久久不卡蜜臀| 日韩一区二区三区高清免费看看| 精品成人一区二区三区| 久久精品网站免费观看| 中文字幕字幕中文在线中不卡视频| 久久99久久精品| 国产精品一区二区在线播放| 成人福利视频网站| 一本高清dvd不卡在线观看| 欧美亚洲丝袜传媒另类| 在线电影国产精品| 久久伊人中文字幕| 亚洲精品成a人| 日韩中文字幕麻豆| 国产精品一区专区| 91精品1区2区| 欧美一区二区三区免费视频| 久久中文字幕电影| 亚洲欧美欧美一区二区三区| 天天综合天天综合色| 国产成人av福利| 91福利国产精品| 精品嫩草影院久久| 亚洲欧洲精品一区二区三区 | 国产精品免费久久久久| 亚洲香肠在线观看| 久久99九九99精品| 91国偷自产一区二区开放时间| 欧美精品久久一区| 国产肉丝袜一区二区| 亚洲风情在线资源站| 久久精品国产在热久久| www.日本不卡| 欧美一区二区三区成人| 国产精品久久久久9999吃药| 亚洲成av人综合在线观看| 国产高清久久久| 91.com在线观看| 国产精品久久久久影院色老大| 日韩不卡一二三区| 91美女视频网站| 久久夜色精品国产欧美乱极品| 一区二区三区在线视频免费| 国产美女av一区二区三区| 欧美伦理电影网| 日韩美女啊v在线免费观看| 捆绑调教一区二区三区| 在线免费观看视频一区| 国产日韩精品久久久| 日本网站在线观看一区二区三区| av亚洲精华国产精华精华| 亚洲综合久久久| 国产精品一区二区三区99| 337p亚洲精品色噜噜| 亚洲欧美日韩国产综合在线| 国产91在线看| 精品国产3级a| 青青草原综合久久大伊人精品 | 色哟哟在线观看一区二区三区| 久久综合99re88久久爱| 日韩国产一二三区| 欧美性猛交一区二区三区精品| 国产精品视频观看| 国内精品在线播放| 在线电影国产精品| 婷婷国产v国产偷v亚洲高清| 在线观看视频一区| 亚洲男人的天堂在线观看| 成人av免费在线| 国产欧美日韩在线| 国产馆精品极品| 久久精子c满五个校花| 国内精品久久久久影院色| 日韩欧美高清一区| 免费观看在线综合色| 欧美精品久久久久久久久老牛影院| 亚洲国产一区视频| 在线观看日韩精品| 一区二区三区国产精品| 在线视频国内一区二区| 洋洋成人永久网站入口| 在线免费观看视频一区| 亚洲最大的成人av| 欧美日韩中文国产| 日日噜噜夜夜狠狠视频欧美人| 欧美日韩中文另类| 日韩国产高清在线| 日韩欧美在线网站| 久久精品国产亚洲a| 日韩一区二区三区视频在线 | 国产成人精品亚洲午夜麻豆| 国产视频在线观看一区二区三区| 粉嫩一区二区三区性色av| 欧美激情一区二区在线| 91影院在线免费观看| 亚洲视频香蕉人妖| 在线观看欧美精品| 视频在线观看一区| 精品久久久久香蕉网| 激情五月婷婷综合| 国产日产精品一区| 91麻豆国产福利在线观看| 亚洲最快最全在线视频| 欧美精品1区2区3区| 韩日欧美一区二区三区| 国产精品久久毛片av大全日韩| 色视频欧美一区二区三区| 亚洲成人免费av| 日韩欧美另类在线| 成人一区二区三区| 一区二区三区四区蜜桃| 337p亚洲精品色噜噜狠狠| 激情综合亚洲精品| 国产精品三级av| 欧美在线不卡视频| 久久狠狠亚洲综合| 国产精品成人免费精品自在线观看| 欧美制服丝袜第一页| 国产综合色视频| 亚洲欧洲成人精品av97| 精品视频色一区| 国产成人亚洲精品青草天美| 亚洲一区二区三区四区在线免费观看| 91精品国产色综合久久不卡蜜臀| 国产精品香蕉一区二区三区| 亚洲欧美激情插| 欧美大片在线观看一区二区| av电影在线观看不卡| 欧美aaa在线| 亚洲欧洲日韩在线| 日韩一级在线观看| 一本一道波多野结衣一区二区| 青青草成人在线观看| 成人欧美一区二区三区1314| 91精品国产综合久久香蕉的特点 | 国产在线精品免费| 亚洲一区二区三区小说| 久久久久久久久久久久电影| 欧美日韩午夜影院| 成人黄色小视频| 奇米亚洲午夜久久精品| 亚洲色欲色欲www在线观看| 欧美mv日韩mv| 在线观看91精品国产麻豆| 不卡的av电影在线观看|