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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sm_handler.c

?? Linux dot1x認證的實現
?? C
?? 第 1 頁 / 共 3 頁
字號:
/********************************************************************* * * SIM Card Handler for PC/SC lite library * * This code was developed by Chris Hessing, using code written by : * * Michael Haberler mah@eunet.at  * based on original work by marek@bmlv.gv.at 2000 * make it work with pcsclite-1.0.1: Vincent Guyot <vguyot@inf.enst.fr>  2002-07-12 * some parts Chris Hessing chris.hessing@utah.edu * * * This code is released under dual BSD/GPL license. * ********************************************************************** * --- BSD License --- * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * *  - Redistributions of source code must retain the above copyright notice, *    this list of conditions and the following disclaimer. *  - Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. *  - All advertising materials mentioning features or use of this software *    must display the following acknowledgement: *       This product includes software developed by the University of *       Maryland at College Park and its contributors. *  - Neither the name of the University nor the names of its contributors *    may be used to endorse or promote products derived from this software *    without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. *//******************************************************************** EAPOL Function implementations for supplicant *  * File: sm_handler.c * * Authors: Chris.Hessing@utah.edu * * $Id: sm_handler.c,v 1.19 2006/06/01 22:49:50 galimorerpg Exp $ * $Date: 2006/06/01 22:49:50 $ * $Log: sm_handler.c,v $ * Revision 1.19  2006/06/01 22:49:50  galimorerpg * Converted all instances of u_char to uint8_t * Fixed a bad #include in the generic frame handler. * * Revision 1.18  2006/05/29 04:17:58  chessing * Fixes for some memory leaks. * * Revision 1.17  2006/03/28 21:16:07  chessing * Fixes to EAP-AKA, and PEAP.  PEAP now handles inner success messages, and works with Funk SBR. * * Revision 1.16  2006/03/21 18:22:10  chessing * Fixes to EAP-AKA code.  Changed a few defaults to disable Xsupplicant based roaming, and passive scanning for this release.  (It would currently cause more problems than it would solve. * * Revision 1.15  2006/03/08 00:16:04  chessing * Fixed EAP hints code to work correctly when the request ID packet is padded out with null bytes.  (Observed in Aruba APs.)  Some changes/fixes for the EAP-AKA module. * * Revision 1.14  2005/08/09 01:39:17  chessing * Cleaned out old commit notes from the released version.  Added a few small features including the ability to disable the friendly warnings that are spit out.  (Such as the warning that is displayed when keys aren't rotated after 10 minutes.)  We should also be able to start when the interface is down.  Last, but not least, we can handle empty network configs.  (This may be useful for situations where there isn't a good reason to have a default network defined.) * * *******************************************************************//******************************************************************* * * The development of the EAP/SIM support was funded by Internet * Foundation Austria (http://www.nic.at/ipa) * *******************************************************************//* Interface to Smart Cards using PCSC with 802.1x.  */#ifdef EAP_SIM_ENABLE#include <stdio.h>#include <winscard.h>#include <string.h>#include <ctype.h>#include <strings.h>#include <stdlib.h>#include <unistd.h>#include "xsup_debug.h"#include "xsup_err.h"#ifdef USE_EFENCE#include <efence.h>#endif// 2G bytecodes#define SELECT_MF       "A0A40000023F00"#define SELECT_DF_GSM   "A0A40000027F20"#define SELECT_EF_IMSI  "A0A40000026F07"#define RUN_GSM         "A088000010"#define GET_IMSI        "A0B0000009"// 3G bytecodes#define SELECT_MF_USIM  "00A4000C"#define SELECT_EF_ICCID "00A40004022FE2"#define SELECT_FCP      "00A4000C"#define SELECT_EFDIR    "00A40004022F00"#define EFDIR_READREC1  "00B20104FF"#define CHV_RETRIES     "0020000100"#define CHV_UNBLOCK     "002C000110"#define CHV_ATTEMPT     "0020000108"#define USELECT_EF_IMSI "00A40904026F07"#define READ_IMSI       "00B0000009"#define MODE2G          1#define MODE3G          0#define DO_DEBUG        1#define MAXBUFF         512typedef unsigned char u8;/* structure of the EFdir AID (application ID) */typedef struct t_efdir {  u8 tag61;  u8 length;  u8 tag4f;  u8 aid_len;  /* application identifier value */  u8 rid[5];  u8 app_code[2];		/* 0x1002 for 3G USIM app */  u8 country_code[2];  u8 prov_code[3];  u8 prov_field[4];  u8 tag50;  u8 al_len;  u8 app_label[16];		/* like "Mobilkom Austria", 0xff padded */} t_efdir;typedef struct  { u8  msk[2], rsp[2], *text; } t_response;const t_response response[]=    {  { { 0xff, 0xff }, { 0x90, 0x00 } , "Ok" },  { { 0xff, 0xff }, { 0x98, 0x02 } , "no CHV initialized" },  { { 0xff, 0xff }, { 0x98, 0x04 } , "access condition not fulfilled" },  { { 0xff, 0xff }, { 0x98, 0x08 } , "in contradiction with CHV status" },  { { 0xff, 0xff }, { 0x98, 0x10 } , "in contradiction with invalidation status" },  { { 0xff, 0xff }, { 0x98, 0x40 } , "unsuccessful CHV verification, no attempts left" },  { { 0xff, 0xff }, { 0x98, 0x50 } , "decrease cannot be performed, maximum value reached" },  { { 0xff, 0xff }, { 0x98, 0x62 } , "verify if MAC  == XMAC" },  { { 0xff, 0xff }, { 0x98, 0x64 } , "Service not available" },  { { 0xff, 0x00 }, { 0x9f, 0x00 } , "%d response bytes available" },  { { 0xff, 0x00 }, { 0x61, 0x00 } , "%d response bytes available" },  { { 0xff, 0xff }, { 0x62, 0x00 } , "curent file is already activated" },  { { 0xff, 0xff }, { 0x62, 0x81 } , "returned data may be corrupt" },  { { 0xff, 0xff }, { 0x62, 0x82 } , "EOF reached prematurely" },  { { 0xff, 0xff }, { 0x62, 0x83 } , "selected file invalid" },  { { 0xff, 0xff }, { 0x62, 0x84 } , "FCI not formated" },  { { 0xff, 0x00 }, { 0x62, 0x00 } , "nvmem unchanged" },  { { 0xff, 0x00 }, { 0x63, 0x81 } , "file filled up by last write" },  { { 0xff, 0xf0 }, { 0x63, 0xc0 } , "Counter=%1.1X" },  { { 0xff, 0x00 }, { 0x63, 0x00 } , "nvmem changed1" },  { { 0xff, 0xff }, { 0x64, 0x00 } , "nvmem unchanged or no active application" },  { { 0xff, 0x00 }, { 0x64, 0x00 } , "nvmem unchanged - RFU" },  { { 0xff, 0xff }, { 0x65, 0x00 } , "nvmem changed2" },  { { 0xff, 0xff }, { 0x65, 0x81 } , "nvmem changed - memory failure" },  { { 0xff, 0x00 }, { 0x65, 0x00 } , "nvmem changed - unknown?" },  { { 0xff, 0x00 }, { 0x66, 0x00 } , "security related %d" },  { { 0xff, 0xff }, { 0x67, 0x00 } , "wrong length" },  { { 0xff, 0x00 }, { 0x67, 0x00 } , "wrong length - %d expected" },  { { 0xff, 0xff }, { 0x68, 0x81 } , "wrong cla - logical channel not supported" },  { { 0xff, 0xff }, { 0x68, 0x82 } , "wrong cla - secure messaging not supported" },  { { 0xff, 0x00 }, { 0x68, 0x00 } , "cla not supported" },  { { 0xff, 0xff }, { 0x69, 0x81 } , "command incompatible with file structure" },  { { 0xff, 0xff }, { 0x69, 0x82 } , "security status not satisfied (PIN1)" },  { { 0xff, 0xff }, { 0x69, 0x83 } , "authentication method blocked - no PIN attempts left" },  { { 0xff, 0xff }, { 0x69, 0x84 } , "referenced data invalid" },  { { 0xff, 0xff }, { 0x69, 0x85 } , "conditions of use not satisfied" },  { { 0xff, 0xff }, { 0x69, 0x86 } , "command not allowed - no current EF" },  { { 0xff, 0xff }, { 0x69, 0x87 } , "expected SM data objects missing" },  { { 0xff, 0xff }, { 0x69, 0x88 } , "SM data objects incorrect" },  { { 0xff, 0x00 }, { 0x69, 0x00 } , "command not allowed" },  { { 0xff, 0xff }, { 0x6a, 0x80 } , "P1-P2: incorrect parameters in data field" },  { { 0xff, 0xff }, { 0x6a, 0x81 } , "P1-P2: function not supported" },  { { 0xff, 0xff }, { 0x6a, 0x82 } , "P1-P2: file/search pattern not found" },  { { 0xff, 0xff }, { 0x6a, 0x83 } , "P1-P2: record not found" },  { { 0xff, 0xff }, { 0x6a, 0x84 } , "P1-P2: not enough memory space in file" },  { { 0xff, 0xff }, { 0x6a, 0x85 } , "P1-P2: Lc inconsistent with TLV" },  { { 0xff, 0xff }, { 0x6a, 0x86 } , "P1-P2 incorrect (out of range)" },  { { 0xff, 0xff }, { 0x6a, 0x87 } , "P1-P2 inconsistent with Lc" },  { { 0xff, 0xff }, { 0x6a, 0x88 } , "verify if EFkeyop exists attached to current file" },  { { 0xff, 0xff }, { 0x6a, 0x88 } , "Referenced data not found" },  { { 0xff, 0xff }, { 0x6a, 0x89 } , "File already exists in current DF" },  { { 0xff, 0x00 }, { 0x6a, 0x00 } , "P1-P2 invalid" },  { { 0xff, 0x00 }, { 0x6b, 0x00 } , "P1-P2 invalid" },  { { 0xff, 0x00 }, { 0x6c, 0x00 } , "wrong length -  %d expected" },  { { 0xff, 0x00 }, { 0x6d, 0x00 } , "INS code not supported or invalid" },  { { 0xff, 0x00 }, { 0x6e, 0x00 } , "CLA %02X not supported" },  { { 0xff, 0xff }, { 0x6f, 0x01 } , "no active application" },  { { 0xff, 0xff }, { 0x6f, 0x06 } , "FCP formatting aborted" },  { { 0xff, 0xff }, { 0x6f, 0x19 } , "no valid key attached to current file" },  { { 0xff, 0xff }, { 0x6f, 0x00 } , "EF or DF integrity error" },  { { 0xff, 0xff }, { 0x6f, 0x03 } , "Decrements number of the unblock mechanism (if not 0xff)" },  { { 0xff, 0xff }, { 0x6f, 0x07 } , "incorrect child number" },  { { 0xff, 0xff }, { 0x6f, 0x0d } , "Reset PIN/ADM retry counter or disable EFpin or EFadm" },  { { 0xff, 0xff }, { 0x6f, 0x0e } , "Reset UNBLOCK PIN error counter to maximum value" },  { { 0xff, 0xff }, { 0x6f, 0x15 } , "PIN/ADM enable/disable not allowed" },  { { 0xff, 0xff }, { 0x6f, 0x16 } , "incorrect UNBLOCK pin" },  { { 0xff, 0xff }, { 0x6f, 0x17 } , "number of unblock mechanism is not equal to 0x00" },  { { 0xff, 0xff }, { 0x6f, 0x1e } , "no data waiting for GET RESPONSE" },  { { 0xff, 0xff }, { 0x6f, 0x1f } , "File deactivated" },  { { 0xff, 0xff }, { 0x6f, 0x22 } , "length of search pattern > 128 bytes" },  { { 0xff, 0x00 }, { 0x6f, 0x00 } , "no precise diagnosis" },  { { 0x00, 0x00 }, { 0x00, 0x00 } , "Unknown response" }};void print_sc_error(long err){  switch (err)    {    case SCARD_E_CANCELLED:      debug_printf(DEBUG_NORMAL, "Error : Card Request Cancelled!\n");      break;    case SCARD_E_CANT_DISPOSE:      debug_printf(DEBUG_NORMAL, "Error : Can't dispose (!?)\n");      break;    case SCARD_E_INSUFFICIENT_BUFFER:      debug_printf(DEBUG_NORMAL, "Error : Insufficient Buffer\n");      break;    case SCARD_E_INVALID_ATR:      debug_printf(DEBUG_NORMAL, "Error : Invalid ATR\n");      break;    case SCARD_E_INVALID_HANDLE:      debug_printf(DEBUG_NORMAL, "Error : Invalid handle\n");      break;    case SCARD_E_INVALID_PARAMETER:      debug_printf(DEBUG_NORMAL, "Error : Invalid parameter\n");      break;    case SCARD_E_INVALID_TARGET:      debug_printf(DEBUG_NORMAL, "Error : Invalid target\n");      break;    case SCARD_E_INVALID_VALUE:      debug_printf(DEBUG_NORMAL, "Error : Invalid Value\n");      break;    case SCARD_E_NO_MEMORY:      debug_printf(DEBUG_NORMAL, "Error : No memory\n");      break;    case SCARD_F_COMM_ERROR:      debug_printf(DEBUG_NORMAL, "Error : Communication error \n");      break;    case SCARD_F_INTERNAL_ERROR:      debug_printf(DEBUG_NORMAL, "Error : Internal error\n");      break;    case SCARD_F_WAITED_TOO_LONG:      debug_printf(DEBUG_NORMAL, "Error : Waited too long\n");      break;    case SCARD_E_UNKNOWN_READER:      debug_printf(DEBUG_NORMAL, "Error : Unknown reader\n");      break;    case SCARD_E_TIMEOUT:      debug_printf(DEBUG_NORMAL, "Error : Timeout\n");      break;    case SCARD_E_SHARING_VIOLATION:      debug_printf(DEBUG_NORMAL, "Error : Sharing Violation\n");      break;    case SCARD_E_NO_SMARTCARD:      debug_printf(DEBUG_NORMAL, "Error : No smartcard!\n");      break;    case SCARD_E_UNKNOWN_CARD:      debug_printf(DEBUG_NORMAL, "Error : Unknown card!\n");      break;    case SCARD_E_PROTO_MISMATCH:      debug_printf(DEBUG_NORMAL, "Error : Protocol mismatch!\n");      break;    case SCARD_E_NOT_READY:      debug_printf(DEBUG_NORMAL, "Error : Not ready!\n");      break;    case SCARD_E_SYSTEM_CANCELLED:      debug_printf(DEBUG_NORMAL, "Error : System Cancelled\n");      break;    case SCARD_E_NOT_TRANSACTED:      debug_printf(DEBUG_NORMAL, "Error : Not Transacted\n");      break;    case SCARD_E_READER_UNAVAILABLE:      debug_printf(DEBUG_NORMAL, "Error : Reader unavailable\n");      break;    case SCARD_F_UNKNOWN_ERROR:    default:      debug_printf(DEBUG_NORMAL, "Unknown error!\n");      break;    }}int sm_handler_init_ctx(SCARDCONTEXT *card_ctx){  long ret;    if (!card_ctx)    {      debug_printf(DEBUG_NORMAL, "Invalid memory location for card context!\n");      return -1;    }  *card_ctx = 0;  ret = SCardEstablishContext(SCARD_SCOPE_SYSTEM, NULL, NULL, card_ctx);  if (ret != SCARD_S_SUCCESS)    {      debug_printf(DEBUG_NORMAL, "Couldn't establish Smart Card context!  "		   "(Is pcscd loaded?)\n");      print_sc_error(ret);      return -1;    }  return 0;}char *sm_handler_get_readers(SCARDCONTEXT *card_ctx){  long readerstrlen;  char *readername;  int ret;  ret = SCardListReaders(*card_ctx, NULL, NULL, &readerstrlen);  if (ret != SCARD_S_SUCCESS)    {      debug_printf(DEBUG_NORMAL, "Error requesting list of smart card "		   "readers! ");      print_sc_error(ret);      return NULL;    }  readername = (char *)malloc(readerstrlen+1);  if (readername == NULL)     {      debug_printf(DEBUG_NORMAL, "Couldn't allocate memory for reader name! "		   "(%s:%d)\n", __FUNCTION__, __LINE__);      return NULL;    }  ret = SCardListReaders(*card_ctx, NULL, readername, &readerstrlen);  if (ret != SCARD_S_SUCCESS)    {      debug_printf(DEBUG_NORMAL, "Error requesting list of smart card "		   "readers! ");      print_sc_error(ret);      return NULL;    }  return readername;}long sm_handler_card_connect(SCARDCONTEXT *card_ctx, SCARDHANDLE *card_hdl, 			     char *cardreader){  long ret, activeprotocol;  debug_printf(DEBUG_NORMAL, "Using reader : %s\n", cardreader);  while (1)    {      ret = SCardConnect(*card_ctx, cardreader, SCARD_SHARE_SHARED,			 SCARD_PROTOCOL_T0, card_hdl, &activeprotocol);      if (ret == SCARD_S_SUCCESS) break;      if (ret == SCARD_E_NO_SMARTCARD)	{	  // XXX This should be changed when we attach a GUI to Xsupplicant.	  debug_printf(DEBUG_NORMAL, "Please insert a smart card!\n");	  sleep(2);	} else {	  debug_printf(DEBUG_NORMAL, "Error attempting to connect to the "		       "smart card!  ");	  print_sc_error(ret);	  return -1;	  break;	}    }  return 0;}int sm_handler_wait_card_ready(SCARDHANDLE *card_hdl, int waittime){  DWORD dwState, dwProtocol, dwAtrLen, size;  BYTE  pbAtr[MAX_ATR_SIZE];  int loopcnt, ret;  LPSTR mszReaders;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久久免费丝袜 | 午夜久久久影院| 日韩精品中午字幕| 色综合久久中文字幕综合网| 国产精品一二三四| 国产麻豆精品95视频| 国产乱码精品一区二区三区忘忧草| 舔着乳尖日韩一区| 亚洲h精品动漫在线观看| 一区二区三区在线免费| 亚洲自拍偷拍九九九| 亚洲综合色自拍一区| 中文字幕av一区二区三区高| 亚洲欧美另类久久久精品 | 国产.欧美.日韩| 色视频成人在线观看免| 欧美一二三区在线观看| 中文字幕乱码日本亚洲一区二区| 欧美国产精品劲爆| 美女网站色91| 欧美影片第一页| 国产精品每日更新| 久久国产夜色精品鲁鲁99| av电影在线观看不卡| 九一久久久久久| 欧美人成免费网站| 中文字幕在线一区二区三区| 免费在线观看不卡| 久久精品久久精品| 欧美精品v国产精品v日韩精品 | 亚洲成人777| 99精品视频中文字幕| 久久久国产一区二区三区四区小说| 亚洲日本免费电影| 99麻豆久久久国产精品免费优播| 日韩一区二区三区在线| 亚洲综合在线第一页| 99久久99久久精品国产片果冻| 欧美日本一区二区| 欧美影视一区在线| 欧美剧情片在线观看| 亚洲狠狠爱一区二区三区| 成人一区二区三区视频在线观看| 欧美日韩一区二区三区四区五区| 欧美性大战久久久久久久蜜臀| 国产欧美一区二区精品性色 | 亚洲免费观看在线观看| 国产福利精品一区| 日本一区免费视频| 99久久99精品久久久久久| 亚洲精品福利视频网站| 精品视频一区二区三区免费| 日本一不卡视频| 2020国产精品自拍| hitomi一区二区三区精品| 亚洲精品国产a| 日韩免费观看2025年上映的电影| 国产乱码精品一区二区三| 亚洲日穴在线视频| 日韩丝袜情趣美女图片| 成人综合婷婷国产精品久久蜜臀 | 国产91高潮流白浆在线麻豆| 1区2区3区精品视频| 日韩亚洲国产中文字幕欧美| 成人一区二区视频| 久久精品久久精品| 夜夜精品浪潮av一区二区三区| 这里只有精品电影| 91在线视频网址| 国产成人精品免费在线| 免费欧美日韩国产三级电影| 亚洲黄网站在线观看| 久久久精品综合| 日韩欧美国产电影| 欧美亚洲国产bt| 99在线热播精品免费| 国产露脸91国语对白| 麻豆国产精品一区二区三区 | 91蜜桃婷婷狠狠久久综合9色| 久久国产福利国产秒拍| 丝袜亚洲另类丝袜在线| 亚洲蜜桃精久久久久久久| 久久久精品免费观看| 日韩精品中文字幕在线一区| 欧美日韩一级片在线观看| 色成年激情久久综合| 91网站最新地址| 色婷婷av一区二区三区软件 | 国产欧美日韩麻豆91| 精品久久久久一区| 国产三级欧美三级| 久久久青草青青国产亚洲免观| 久久久精品免费观看| 欧美国产97人人爽人人喊| 亚洲国产精品ⅴa在线观看| 综合激情成人伊人| 亚洲色图制服丝袜| 日韩激情一区二区| 国产激情一区二区三区四区| 国产91精品久久久久久久网曝门| 国产99久久久精品| 在线一区二区三区| 欧美一区二区视频免费观看| 久久久电影一区二区三区| 国产精品日韩成人| 日韩综合一区二区| 波多野结衣一区二区三区| 91精品国产aⅴ一区二区| 国产欧美视频在线观看| 亚洲自拍偷拍麻豆| 丁香婷婷综合色啪| 777午夜精品免费视频| 久久九九久久九九| 久久精品国产99| 欧美精品tushy高清| 亚洲日本在线观看| 久久精品国产澳门| 麻豆91免费观看| 欧美日韩在线免费视频| 国产女同互慰高潮91漫画| 日韩中文字幕区一区有砖一区 | 9191成人精品久久| 国产日产精品一区| 蜜臀久久99精品久久久画质超高清| av一区二区三区| 国产女人水真多18毛片18精品视频| 亚洲电影激情视频网站| 成人av电影在线观看| 久久精品夜色噜噜亚洲aⅴ| 蜜臀a∨国产成人精品| 欧美丰满美乳xxx高潮www| 亚洲丰满少妇videoshd| 欧美色涩在线第一页| 偷窥少妇高潮呻吟av久久免费| 欧美在线视频日韩| 亚洲国产精品一区二区久久恐怖片| 色综合久久综合网97色综合| 亚洲精品久久久蜜桃| 欧美色精品在线视频| 亚洲国产综合在线| 欧美福利视频一区| 国产一区二区三区在线观看精品| 精品国产成人系列| 成人禁用看黄a在线| 一二三四区精品视频| 91精品国产欧美日韩| 国产成人午夜精品影院观看视频| 久久久影视传媒| 成人午夜又粗又硬又大| 一区二区三区国产精华| 91精品国产综合久久精品| 国产乱码精品一区二区三区av| 中文字幕一区在线| 3atv一区二区三区| 成人高清视频在线| 午夜精品久久久久久久| 国产三级精品三级在线专区| 色爱区综合激月婷婷| 丁香亚洲综合激情啪啪综合| 亚洲女与黑人做爰| 国产欧美视频在线观看| 欧美日韩国产一级二级| 成人h动漫精品| 国产美女在线观看一区| 日韩精品电影在线| 一区二区三区精品视频在线| 中文字幕一区视频| 中文字幕av资源一区| 欧美主播一区二区三区美女| 国产成人久久精品77777最新版本| 午夜精品一区二区三区免费视频 | 日本一不卡视频| 亚洲一区二区欧美| 亚洲高清三级视频| 亚洲第一电影网| 日韩激情一区二区| 热久久一区二区| 久久精品国产精品亚洲精品| 久久机这里只有精品| 久久av老司机精品网站导航| 美女网站视频久久| 狠狠色丁香久久婷婷综合_中| 日本女人一区二区三区| 日本成人在线电影网| 蜜桃一区二区三区在线| 久久99久久久欧美国产| 加勒比av一区二区| 成人一级视频在线观看| 成人精品免费看| 欧美美女一区二区| 久久―日本道色综合久久| 国产精品国产三级国产专播品爱网| 专区另类欧美日韩| 免费不卡在线观看| 一本色道久久加勒比精品| 欧美色电影在线| 欧美精品一区二区三区高清aⅴ | 99久久精品99国产精品| 欧美中文字幕亚洲一区二区va在线| 欧美精品电影在线播放|