日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【OPTEE开发】从TA到PTA的功能设计

發布時間:2025/3/15 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【OPTEE开发】从TA到PTA的功能设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、功能需求
  • 二、TA到PTA的總體設計
    • 1. 軟件層總體設計
      • 1.1 總體結構圖設計
      • 1.2 TA調用其他TA的接口設計
    • 2. 設計思路
  • 三、詳細設計
    • 1. 修改代碼清單
    • 2. 子模塊設計
      • 2.1 libhanlerot庫設計
      • 2.2 PTA模塊設計
      • 2.3 TA模塊設計

一、功能需求

上篇”從TA到安全驅動的功能設計“介紹了TA通過syscall的方式調用到driver的功能,那本篇主要描述一下如何實現TA調用PTA 完成基本功能的通路。
主要包括新增PTA實現幾個基本接口功能、新增和封裝PTA對應的lib庫 便于TA調用這兩個環節。

下面以實際例子進行實戰介紹,加深一下對TA調用PTA流程的理解。

原創不易,轉載請注明出處:https://blog.csdn.net/jackone12347/article/details/122555702

二、TA到PTA的總體設計

1. 軟件層總體設計

1.1 總體結構圖設計

1.2 TA調用其他TA的接口設計

API名稱API功能
TEE_OpenTASession建立兩個TA之間的session
TEE_InvokeTACommand通過已創建的session和command id去調用另一個TA提供的操作接口
TEE_CloseTASession關閉兩個TA之間的session
TEE_PARAM_TYPES定義兩個TA之間傳遞的parameter參數

libhandlerot接口lib庫中可以只實現這三個接口,但handlerot PTA中需要實現如下五個接口:

pseudo_ta_register(.uuid = PTA_ROT_UUID, .name = TA_NAME,.flags = PTA_DEFAULT_FLAGS | TA_FLAG_SECURE_DATA_PATH | TA_FLAG_CONCURRENT,.create_entry_point = create_ta,.destroy_entry_point = destroy_ta,.open_session_entry_point = open_session,.close_session_entry_point = close_session,.invoke_command_entry_point = invoke_command);

關于param參數的使用,這里說明一下
在調用InvokeTACommand函數時需要傳入params參數,params可傳入四個參數,類型有如下幾種,params使用場景大致有這幾種情況
1、當進入和返回都不需要攜帶參數時,使用TEE_PARAM_TYPE_NONE;
2、當只需要傳入參數,不需要返回參數時,使用TEE_PARAM_TYPE_VALUE_INPUT;
不需要傳入參數,只需要返回參數時,使用TEE_PARAM_TYPE_VALUE_OUTPUT;即需要傳入 也需要返回,使用TEE_PARAM_TYPE_VALUE_INOUT;
3、當需要分配buffer內存時,使用TEE_PARAM_TYPE_MEMREF_X,使用區別和第2條相同。

PARAM類型功能
TEE_PARAM_TYPE_NONE無需傳入參數和返回參數
TEE_PARAM_TYPE_VALUE_INPUT只需要傳入參數
TEE_PARAM_TYPE_VALUE_OUTPUT只需要return返回參數
TEE_PARAM_TYPE_VALUE_INOUT即需要傳入也需要返回參數
TEE_PARAM_TYPE_MEMREF_INPUT需要分配buff,只需要傳入參數
TEE_PARAM_TYPE_MEMREF_OUTPUT需要分配buff,只需要返回參數
TEE_PARAM_TYPE_MEMREF_INOUT需要分配buff,即需要返回參數 ,也需要返回參數

2. 設計思路

需要先構思一下,如何實現這個功能,把需求分解為兩部分。
1)封裝libhandlerot lib庫,便于TA中直接調用lib接口;
2)新增handle rot的PTA,實現libhandlerot中的幾個接口。

三、詳細設計

1. 修改代碼清單

先看一下總體修改了哪些代碼,修改的代碼量不是很多。
@optee_os/lib/libhandlerot lib庫中增加如下code

├── include │ └── libhandlerot.h ├── libhandlerot.c └── sub.mk

handle rot PTA中增加如下實現和對外頭文件

core/pta/handle_rot.c lib/libutee/include/pta_handle_rot.h

2. 子模塊設計

2.1 libhanlerot庫設計

新增libhandleroot.h頭文件,我們這里還是實現兩個接口,寫入數據handle_write_rot和讀取數據handle_read_rot。

/** libhandlerot interface*/#ifndef _LIB_HANDLE_ROT_H_ #define _LIB_HANDLE_ROT_H_#include <tee_internal_api.h> #include <pta_handle_rot.h>TEE_Result handle_write_rot(uint8_t* data, uint32_t size);TEE_Result handle_read_rot(uint8_t* data, uint32_t size);#endif /* _LIB_HANDLE_ROT_H_ */

這兩個接口的實現如下,封裝invoke_rot_pta中,通過command不同來區分read和write

TEE_Result handle_write_rot(uint8_t* data, uint32_t size) {TEE_Result res = TEE_ERROR_GENERIC;DMSG("[ROT] handle_write_rot entry.");res = invoke_rot_pta(PTA_ROT_CMD_WRITE, data, size);return res; }TEE_Result handle_read_rot(uint8_t* data, uint32_t size) {TEE_Result res = TEE_ERROR_GENERIC;res = invoke_rot_pta(PTA_ROT_CMD_READ, data, size);return res; }

invoke_rot_pta的實現如下,請注意TEE_PARAM_TYPES中的參數,在前面章節中有介紹過。
主要封裝了TEE_OpenTASession、TEE_PARAM_TYPES、TEE_InvokeTACommand、TEE_CloseTASession幾個接口,具體的實現需要在PTA中去完成。

/* * device root of trust handler */#include <string.h> #include <tee_internal_api_extensions.h> #include "libhandlerot.h"static TEE_Result invoke_rot_pta(uint32_t cmd_id, uint8_t* data, uint32_t size) {// Dispatch to PTATEE_Result res = TEE_ERROR_GENERIC;TEE_UUID uuid = PTA_ROT_UUID;TEE_TASessionHandle session = TEE_HANDLE_NULL;uint32_t ret_orig = 0;TEE_Param params[TEE_NUM_PARAMS];uint32_t param_types = 0;//open sessionres = TEE_OpenTASession(&uuid, TEE_TIMEOUT_INFINITE,0, params, &session, &ret_orig);if (res != TEE_SUCCESS) {EMSG("[libhandlerot] open pta session failed, res 0x%08x, origin 0x%08x",res, ret_orig);return res;}//invoke commandparam_types = TEE_PARAM_TYPES(TEE_PARAM_TYPE_MEMREF_INOUT,TEE_PARAM_TYPE_NONE,TEE_PARAM_TYPE_NONE,TEE_PARAM_TYPE_NONE);// data & sizeparams[0].memref.buffer = data;params[0].memref.size = size;DMSG("[libhandlerot] TEE_InvokeTACommand start.");res = TEE_InvokeTACommand(session, TEE_TIMEOUT_INFINITE, cmd_id,param_types, params, NULL);if (res != TEE_SUCCESS) {EMSG("[libhandlerot] Invoke command to pta failed, res 0x%08x, origin 0x%08x.",res, ret_orig);TEE_CloseTASession(session);session = TEE_HANDLE_NULL;return res;}//close sessionTEE_CloseTASession(session);session = TEE_HANDLE_NULL;return res; }

2.2 PTA模塊設計

handlerot PTA的設計,包含頭文件和實現文件。
pta_handle_rot.h實現如下:

#ifndef __PTA_HANDLE_ROT_H #define __PTA_HANDLE_ROT_H/** Interface to the rot pseudo-TA, which is used for handling* device root of trust function*/ //c7cf25d5-b62a-40bc-8841-2cefabbbf5bb #define PTA_ROT_UUID \{ 0xc7cf25d5, 0xb62a, 0x40bc, \{ 0x88, 0x41, 0x2c, 0xef, 0xab, 0xbb, 0xf5, 0xbb } }#define TA_NAME "handle_rot.ta"/** ROT PTA supported commands*/ #define PTA_ROT_CMD_READ 0 #define PTA_ROT_CMD_WRITE 1#endif /* __PTA_HANDLE_ROT_H */

頭文件中主要定義了UUID和TA_NAME,這個是TA的標識,需要唯一指定。

下面是handle_rot.c的實現

#include <bench.h> #include <compiler.h> #include <kernel/misc.h> #include <kernel/mutex.h> #include <kernel/pseudo_ta.h> #include <malloc.h> #include <mm/core_memprot.h> #include <mm/mobj.h> #include <mm/tee_mm.h> #include <mm/tee_pager.h> #include <mm/vm.h> #include <optee_rpc_cmd.h> #include <pta_handle_rot.h> #include <stdio.h> #include <string_ext.h> #include <string.h> #include <trace.h>uint8_t g_rotbuffer[64] = {0};static TEE_Result create_ta(void) {DMSG("[PTA] create_ta.");return TEE_SUCCESS; }static void destroy_ta(void) {DMSG("[PTA] destroy_ta."); }static TEE_Result open_session(uint32_t nParamTypes __unused,TEE_Param pParams[TEE_NUM_PARAMS] __unused,void **ppSessionContext __unused) {DMSG("[PTA] open_session.");return TEE_SUCCESS; }static void close_session(void *pSessionContext __unused) {DMSG("[PTA] close_session."); }static TEE_Result handle_rot_read_impl(uint8_t* buffer, uint32_t size) {TEE_Result ret = TEE_SUCCESS;DMSG("[PTA] handle_rot_read_impl pta entry.");memcpy(buffer, &(g_rotbuffer[0]), size);size_t i = 0;for(; i < size; i++){DMSG("[PTA] handle_rot_read_impl data:0x%x\n", buffer[i]);}return ret; }static TEE_Result handle_rot_write_impl(uint8_t* buffer, uint32_t size) {TEE_Result ret = TEE_SUCCESS;memset(g_rotbuffer, 0, 64);memcpy(&(g_rotbuffer[0]), buffer, size);size_t j = 0;for(; j < size; j++){DMSG("[PTA] handle_rot_write_impl data:0x%x\n", g_rotbuffer[j]);}return ret; }static TEE_Result invoke_command(void *session_ctx __unused,uint32_t cmd_id, uint32_t param_types,TEE_Param params[TEE_NUM_PARAMS]) {DMSG("[PTA] invoke_command pta entry.");//check input param whether is invalidif (param_types != TEE_PARAM_TYPES(TEE_PARAM_TYPE_MEMREF_INOUT,TEE_PARAM_TYPE_NONE,TEE_PARAM_TYPE_NONE,TEE_PARAM_TYPE_NONE)) {FMSG("[PTA] invalid params \"%s\"", TA_NAME);return TEE_ERROR_BAD_PARAMETERS;}//get input data buffer and sizeuint8_t* buffer = params[0].memref.buffer;uint32_t size = params[0].memref.size;switch (cmd_id) {case PTA_ROT_CMD_READ:DMSG("[PTA] invoke_command pta read data.");return handle_rot_read_impl(buffer, size);case PTA_ROT_CMD_WRITE:DMSG("[PTA] invoke_command pta write data.");return handle_rot_write_impl(buffer, size);default:break;}return TEE_ERROR_BAD_PARAMETERS; }pseudo_ta_register(.uuid = PTA_ROT_UUID, .name = TA_NAME,.flags = PTA_DEFAULT_FLAGS | TA_FLAG_SECURE_DATA_PATH | TA_FLAG_CONCURRENT,.create_entry_point = create_ta,.destroy_entry_point = destroy_ta,.open_session_entry_point = open_session,.close_session_entry_point = close_session,.invoke_command_entry_point = invoke_command);

我這里把PTA中會用的的接口全添加了,包括create_ta、destroy_ta;代碼邏輯也比較簡單。

2.3 TA模塊設計

普通TA中調用libhandlerot庫,去調用PTA中的實現,demo代碼如下:

#include <libhandlerot.h>TEE_Result get_rot_data() {TEE_Result res = TEE_SUCCESS;DMSG("[TA] get_rot_data entry. \n");uint8_t data[64] = "aaaabbbbccccdddd1111222233334444aaaabbbbccccdddd1111222233334444";res = handle_write_rot((uint8_t *)data, 64);uint8_t *temp = NULL;temp = malloc(65);res = handle_read_rot(temp, 64);DMSG ("[TA] handle_read_rot result:%d", res);int i = 0;for(; i < 64; i++) {DMSG ("[TA] handle_read_rot content:0x%x", temp[i]);}free(temp);DMSG("[TA] get_rot_data done. \n");return res; }

運行結果:

D/TA: get_rot_data:1516 [TA] get_rot_data entry. D/TA: handle_write_rot:60 [ROT] handle_write_rot entry. F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #5 (syscall_open_ta_session) D/TC:? 0 tee_ta_init_pseudo_ta_session:299 Lookup pseudo TA c7cf25d5-b62a-40bc-8841-2cefabbbf5bb D/TC:? 0 tee_ta_init_pseudo_ta_session:312 Open handle_rot.ta D/TC:? 0 tee_ta_init_pseudo_ta_session:329 handle_rot.ta : c7cf25d5-b62a-40bc-8841-2cefabbbf5bb D/TC:? 0 create_ta:29 [PTA] create_ta. D/TC:? 0 open_session:42 [PTA] open_session. D/TA: invoke_rot_pta:39 [ROT] TEE_InvokeTACommand start. F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) D/TC:? 0 invoke_command:88 [PTA] invoke_command pta entry. D/TC:? 0 invoke_command:109 [PTA] invoke_command pta write data. D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x61 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x61 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x61 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x61 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x62 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x62 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x62 ...省略 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x34 D/TC:? 0 handle_rot_write_impl:78 [PTA] handle_rot_write_impl data:0x34 F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) F/TC:? 0 trace_syscall:155 syscall #6 (syscall_close_ta_session) D/TC:? 0 tee_ta_close_session:513 csess 0x902ebe80 id 3 D/TC:? 0 tee_ta_close_session:531 Destroy session D/TC:? 0 close_session:49 [PTA] close_session. D/TC:? 0 destroy_ta:35 [PTA] destroy_ta. F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #5 (syscall_open_ta_session) D/TC:? 0 tee_ta_init_session_with_context:607 Re-open TA c7cf25d5-b62a-40bc-8841-2cefabbbf5bb D/TC:? 0 create_ta:29 [PTA] create_ta. D/TC:? 0 open_session:42 [PTA] open_session. D/TA: invoke_rot_pta:39 [ROT] TEE_InvokeTACommand start. F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) D/TC:? 0 invoke_command:88 [PTA] invoke_command pta entry. D/TC:? 0 invoke_command:106 [PTA] invoke_command pta read data. D/TC:? 0 handle_rot_read_impl:56 [PTA] handle_rot_read_impl pta entry. D/TC:? 0 handle_rot_read_impl:62 [PTA] handle_rot_read_impl data:0x61 ...省略 D/TC:? 0 handle_rot_read_impl:62 [PTA] handle_rot_read_impl data:0x34 F/TC:? 0 trace_syscall:155 syscall #8 (syscall_check_access_rights) F/TC:? 0 trace_syscall:155 syscall #7 (syscall_invoke_ta_command) F/TC:? 0 trace_syscall:155 syscall #6 (syscall_close_ta_session) D/TC:? 0 tee_ta_close_session:513 csess 0x902ebc90 id 3 D/TC:? 0 tee_ta_close_session:531 Destroy session D/TC:? 0 close_session:49 [PTA] close_session. D/TC:? 0 destroy_ta:35 [PTA] destroy_ta. D/TA: get_rot_data:1526 [TA] handle_read_rot result:0 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x61 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x61 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x61 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x61 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x62 ...省略 D/TA: get_rot_data:1529 [TA] handle_read_rot content:0x34 D/TA: get_rot_data:1533 [TA] get_rot_data done.

總結

以上是生活随笔為你收集整理的【OPTEE开发】从TA到PTA的功能设计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

中文字幕色网站 | 人人玩人人爽 | 国产欧美最新羞羞视频在线观看 | 日韩av午夜在线观看 | 玖玖玖影院 | 中文在线字幕观看电影 | 久久电影中文字幕视频 | 久久久片 | 人人爽人人看 | 午夜精品一区二区三区免费 | 成年人免费在线 | 欧美一级看片 | 欧美成人久久 | 99爱精品视频 | 激情电影在线观看 | 天天干天天弄 | 亚洲欧美国内爽妇网 | av片在线观看 | 国产成人专区 | 中文字幕一区二区三区四区 | 日韩综合视频在线观看 | 天天射天天爱天天干 | 色综合久久久久综合99 | 免费看国产精品 | 亚洲综合导航 | 不卡在线一区 | 日韩午夜一级片 | 在线观看av大片 | 人人澡人人澡人人 | 97国产一区二区 | 久久精品欧美一 | 中文字幕在线观看视频一区二区三区 | 久草在线视频免费资源观看 | 九九九热精品免费视频观看网站 | 国产精品久久久久久久久久免费 | www.色午夜.com | 亚洲激精日韩激精欧美精品 | 国产黄在线播放 | 免费观看福利视频 | 中文字幕 国产 一区 | 国产97碰免费视频 | 在线观看亚洲专区 | 99re亚洲国产精品 | 国产色女人 | 777视频在线观看 | 免费观看一级视频 | 一级成人免费视频 | av线上免费看 | 精品伦理一区二区三区 | 一本色道久久综合亚洲二区三区 | 九九久久电影 | 午夜精品视频福利 | 精品毛片一区二区免费看 | 欧美在线不卡一区 | 黄网站色欧美视频 | 婷婷99 | 日日夜夜免费精品视频 | 国产女人40精品一区毛片视频 | 最近最新中文字幕视频 | 国产免费高清视频 | 国产又粗又猛又黄视频 | 99久久精品免费视频 | 亚洲精品男人的天堂 | 国产视频每日更新 | 人人爱人人爽 | 中文字幕av有码 | 欧美人人爱 | 五月婷婷六月丁香 | 婷婷丁香花 | 亚洲国产精品成人av | 国产一区二区手机在线观看 | 久久精品爱爱视频 | 亚洲精品网站 | 69久久久 | 91大神一区二区三区 | 人人舔人人干 | 六月丁香伊人 | 成人免费大片黄在线播放 | 1000部国产精品成人观看 | 激情电影在线观看 | 公开超碰在线 | 国产精品白丝jk白祙 | 超碰在线色 | 91九色视频网站 | 视频在线观看亚洲 | www.啪啪.com | 日韩一二三区不卡 | 激情久久一区二区三区 | 午夜精品久久久久久久99水蜜桃 | 国产拍在线| 国产精久久久久久妇女av | 天天草天天摸 | 天天综合网 天天 | 日韩在线观看一区二区三区 | 欧美激情精品久久久久久 | 五月天堂网 | 午夜av在线电影 | 色婷婷在线观看视频 | 亚洲精品黄色在线观看 | 黄在线免费看 | 国产中文字幕在线播放 | 国产精品成人自产拍在线观看 | 97av精品| 欧美一二三区在线观看 | 国产五十路毛片 | 亚洲精品66 | 国产不卡视频在线 | 欧洲一区二区三区精品 | 日本视频高清 | 欧美日韩国产一区二区在线观看 | 字幕网资源站中文字幕 | 丁香婷婷综合色啪 | 久久精品99久久久久久2456 | 99免费视频 | 日韩免费在线视频观看 | 911精品美国片911久久久 | 久草在线这里只有精品 | 99精品热 | 激情网五月| 午夜美女福利直播 | 久久99中文字幕 | 亚洲午夜av久久乱码 | 一本之道乱码区 | 久艹视频免费观看 | 狠狠狠狠狠色综合 | 精品欧美日韩 | 亚洲久草网 | 免费av网址在线观看 | 国产色视频网站 | 久久久免费国产 | 午夜精选视频 | 欧美一级性生活 | 91成人免费看 | 日韩欧美一区二区不卡 | 色婷婷国产在线 | 欧美日韩一区二区视频在线观看 | 久久久久国产精品视频 | 天天射天天操天天色 | 亚洲aⅴ乱码精品成人区 | 亚洲国产欧美在线人成大黄瓜 | 激情开心 | 国产精品色 | 色爱成人网 | 不卡视频在线 | 2019久久精品| 国内一级片在线观看 | 久久久精品成人 | 天天操天天干天天操天天干 | 亚洲毛片在线观看. | 又紧又大又爽精品一区二区 | av在线官网| 五月天中文字幕mv在线 | 最新超碰 | 日韩色综合 | 久久九九久久九九 | 国产中文字幕三区 | 亚洲天堂免费视频 | 日韩成人在线一区二区 | 亚洲精品久久久蜜桃 | 色综合天天爱 | a视频在线 | 国产99久久99热这里精品5 | 免费成人av在线 | av天天澡天天爽天天av | 超碰在线97免费 | 少妇av网| 五月天狠狠操 | 99久久精品电影 | av免费黄色 | 国产高清视频免费在线观看 | 97在线精品国自产拍中文 | 在线视频观看成人 | 91在线免费公开视频 | 日免费视频 | 18pao国产成视频永久免费 | 日韩天天干 | 狠狠干电影 | 亚洲欧美精品一区二区 | 手机看片国产 | 狠狠狠狠狠色综合 | 久久九精品 | 亚洲一区二区观看 | 亚洲国产中文在线 | 亚洲精品自拍视频在线观看 | 精品免费一区 | 天天色天天射综合网 | 一级片免费在线 | 中文字幕高清免费日韩视频在线 | 国产精品久久久久久吹潮天美传媒 | 天天插天天射 | 综合网天天 | 99在线视频网站 | 999久久久精品视频 日韩高清www | 亚洲美女在线国产 | www.夜夜骑.com | 欧美性天天| 国产区在线看 | 99在线视频观看 | 激情深爱五月 | 亚洲精品国产精品国自产在线 | 一区二区三区免费看 | 91精品久久久久久久久久久久久 | 天天操夜夜操 | 久久久久久久久久网站 | 丰满少妇一级 | 免费黄色在线网址 | 成人福利在线播放 | 狠狠色狠狠色合久久伊人 | 天天玩天天干天天操 | 激情五月综合 | 久草精品在线观看 | а天堂中文最新一区二区三区 | 国产精品一区二区无线 | 久久99久久99精品免观看粉嫩 | 一级电影免费在线观看 | 99热国产在线观看 | 中文字幕永久免费 | 超碰在线色 | 91黄色免费看 | 黄污视频大全 | 成人av片免费观看app下载 | 亚洲成av人影院 | 91亚洲永久精品 | 国产黄色片一级三级 | 国产精品久久久99 | 奇米影视8888在线观看大全免费 | 久久成人高清视频 | 天天干,天天射,天天操,天天摸 | 99产精品成人啪免费网站 | 日韩在线观看电影 | 精品女同一区二区三区在线观看 | 国产精品美女 | 蜜桃视频成人在线观看 | 天堂成人在线 | 国产精品久久久久久久免费 | 九九综合在线 | 免费一级特黄录像 | 特级黄录像视频 | 97碰碰视频 | 久久久久久久久久久黄色 | 亚洲精品视频在线观看免费视频 | 久久不射影院 | 欧美a级在线免费观看 | 五月婷婷av在线 | 精品中文字幕视频 | 五月激情久久久 | 最近日韩免费视频 | 97精品视频在线播放 | 日黄网站| 久要激情网 | 97色免费视频 | 日本黄色免费观看 | 精品国产精品久久 | 毛片二区 | 色五丁香 | 美女视频黄的免费的 | 欧美日韩视频一区二区三区 | 久热爱| 日韩激情网 | 婷婷在线观看视频 | 深夜国产在线 | 国产一级片久久 | 日韩二级毛片 | 黄色一区三区 | 九九99靖品 | 青青草国产成人99久久 | 久久久国产在线视频 | 一区二区观看 | 日韩天天操| 亚洲高清资源 | 一级一片免费观看 | 丁香婷婷激情五月 | 97人人视频 | 婷婷色网| 成人网色 | 伊人宗合网 | 一区二区三区www | 婷婷在线播放 | 中文字幕视频一区二区 | 福利视频导航网址 | 特级a老妇做爰全过程 | 天天操天天爽天天干 | 黄色网免费 | av免费在线网 | 五月香婷 | 国产在线高清精品 | 最新国产中文字幕 | 五月婷婷av | 丁香九月婷婷综合 | av一区二区三区在线播放 | 国产精品女主播一区二区三区 | 4hu视频 | 国产成人333kkk | 午夜电影中文字幕 | 久久久久久在线观看 | 成人黄色大片在线免费观看 | 亚洲精选久久 | 国产精品久久久毛片 | 91片网 | 超碰97人人射妻 | 国产在线精品一区 | 国产粉嫩在线 | 亚洲精品小视频在线观看 | 中文字幕超清在线免费 | 国产色就色| 91成人免费视频 | 欧美成人精品欧美一级乱黄 | 人人艹视频 | 最新午夜 | 精品视频免费 | 欧美日韩aa | 最近中文字幕高清字幕在线视频 | 久草亚洲视频 | 狠狠色丁香久久婷婷综合丁香 | 亚洲国产精品va在线 | 日韩网站免费观看 | 丁香五月网久久综合 | 亚洲国产精品视频 | 国产一区欧美二区 | 2019天天干夜夜操 | 中文字幕一区二区三区精华液 | 天天干,天天射,天天操,天天摸 | 亚洲九九爱 | 国产手机av | 成人影视免费 | 精品视频亚洲 | 欧美日韩视频在线一区 | 91在线观看黄| 午夜123 | 国产女v资源在线观看 | 精品专区一区二区 | 国产又粗又猛又黄视频 | 日韩成人免费在线 | 成人一级黄色片 | 不卡中文字幕在线 | 欧美成年人在线观看 | 亚洲成人午夜av | 久久在线免费 | 久久精品男人的天堂 | 中文字幕在线免费看线人 | 色婷婷综合成人av | 色婷婷av一区 | 久久免费视频观看 | 黄色网在线免费观看 | www.狠狠色.com| 婷婷丁香激情五月 | 亚洲高清激情 | 99久视频| 五月情婷婷 | 91综合视频在线观看 | 久久爽久久爽久久av东京爽 | 亚洲精欧美一区二区精品 | 91久久国产露脸精品国产闺蜜 | 亚洲精品成人 | 久久精品一二三 | 色婷婷综合久久久久中文字幕1 | 一级国产视频 | 伊色综合久久之综合久久 | 国产精品k频道 | 日韩1级片 | 欧美91视频| 天天操夜夜摸 | 亚洲综合小说电影qvod | 操操操日日 | 亚洲免费成人av电影 | 国产录像在线观看 | 久久久久伦理电影 | 国产一区播放 | 国产精品一区二区三区在线 | 日本性久久 | 久久黄色片 | 99久久精品久久久久久清纯 | 久久久久女人精品毛片 | 五月婷婷色播 | 国产精品第一页在线 | 日韩欧美综合 | 天天天在线综合网 | 色婷婷啪啪免费在线电影观看 | 射久久久| 在线免费观看羞羞视频 | www.香蕉视频在线观看 | 欧美亚洲国产精品久久高清浪潮 | 久草视频免费在线播放 | 免费看亚洲毛片 | 中文字幕最新精品 | 国色天香第二季 | 手机av在线网站 | 一区二区三区在线看 | 日韩免费看视频 | 中文字幕在线看视频 | 免费看成人a | 亚洲 欧洲av | 日本在线观看一区二区三区 | 视频在线精品 | 人人超碰免费 | 日本久久久影视 | 国产资源免费在线观看 | 中文av一区二区 | 久久涩涩网站 | 久久艹艹| 国产一级淫片免费看 | 国产精品国产亚洲精品看不卡15 | 国产小视频免费观看 | 特黄特色特刺激视频免费播放 | 日本三级久久久 | 久热av在线 | 午夜精品久久久久久99热明星 | 天天操夜夜爱 | 成人在线电影观看 | 日韩视频区 | 夜夜骑天天操 | 亚洲一区欧美精品 | 国产精品免费一区二区三区在线观看 | 午夜精品一区二区三区四区 | 久久综合久久综合久久 | 天堂在线一区 | 91精品看片| 麻豆视频一区二区 | 五月天色站 | 亚洲视频网站在线观看 | 91三级在线观看 | 亚洲国产经典视频 | 国产探花 | 日本女人的性生活视频 | 久久久久久久久久免费 | 九色91福利| 国产成人精品国内自产拍免费看 | 婷婷成人综合 | 中文一二区 | 91丨九色丨丝袜 | 黄色三级av| 色爱区综合激月婷婷 | 色综合久久网 | 精品国产大片 | 亚洲午夜精品电影 | www久久| 字幕网av| 欧美一级看片 | 五月天伊人 | 国产成人中文字幕 | 最近中文字幕 | 超级碰99| 国产成人精品999在线观看 | 国产精品日韩久久久久 | 国产一区二区三区久久久 | 国产精品美女毛片真酒店 | 天天操天天干天天爱 | 国产美女免费观看 | 天天操天天色天天射 | 国产一区成人 | 亚洲视频一区二区三区在线观看 | 欧美a级一区二区 | 精品久久一级片 | 精品国产一区二 | 欧美男同视频网站 | 国产一级淫片免费看 | 中文字幕在线免费观看 | 国产小视频在线观看 | 国产精品久久久久久久7电影 | 91精品在线播放 | 在线观看激情av | 丁香综合激情 | 日韩电影在线观看一区 | 福利视频精品 | 亚洲视频免费在线观看 | www.黄色片网站 | 狠日日| 91色一区二区三区 | 99欧美视频| 国产91丝袜在线播放动漫 | 黄色www| 亚洲成aⅴ人片久久青草影院 | 片黄色毛片黄色毛片 | 丁香花在线观看免费完整版视频 | 日av免费| 国产一级片免费观看 | 久艹视频在线免费观看 | 欧美91成人网 | 国产成人免费 | av一本久道久久波多野结衣 | 亚洲精品mv在线观看 | 色伊人网 | 97人人模人人爽人人喊中文字 | 天天操天天摸天天射 | 麻豆 91 在线| 久久99在线观看 | 区一区二区三在线观看 | 免费看片成年人 | 亚洲午夜精品在线观看 | 日韩在线免费不卡 | 91高清免费观看 | 五月婷婷激情 | 欧美粗又大 | 亚洲精品中文字幕在线 | a在线一区 | 91传媒免费观看 | 在线电影91| 成人va视频 | www久久 | 婷婷午夜 | 激情五月在线视频 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 国产一区二区三区视频在线 | 精品亚洲免a | 欧美精品久久人人躁人人爽 | 久久免费毛片 | 午夜12点 | 亚洲精品日韩av | 91麻豆产精品久久久久久 | 怡红院av久久久久久久 | 人人干人人干人人干 | 亚洲综合色激情五月 | 超薄丝袜一二三区 | 精品在线播放 | 色a资源在线 | 蜜臀精品久久久久久蜜臀 | 国产91免费在线观看 | 96亚洲精品久久久蜜桃 | 久久久久在线观看 | 国产精品国产三级国产aⅴ入口 | 国产精品一区免费在线观看 | 在线看片成人 | 精品国产一区二区三区在线观看 | 中文字幕一区三区 | 日韩精品一区二区三区免费观看视频 | 狠狠操.com | 在线视频福利 | 欧美一二三专区 | 精品久久精品 | 久草在线视频首页 | 久草在线观看视频免费 | 国产在线a免费观看 | 中文字幕制服丝袜av久久 | 欧美另类成人 | a黄色影院 | 四虎国产精品永久在线国在线 | 在线国产视频一区 | 国产精品初高中精品久久 | 亚洲人毛片 | 色黄久久久久久 | 欧美激情精品一区 | 日韩精品一区二区三区免费观看视频 | 亚洲天天综合 | 国产精选在线 | 国产高清在线观看 | 天天插伊人| 97精品国产91久久久久久久 | 日韩91精品 | 天天干天天操天天 | 日本三级吹潮在线 | 久久午夜免费视频 | 中文字幕一区二区三区在线视频 | 欧美地下肉体性派对 | 日日爽天天 | 亚洲三级黄色 | 久久精品国产亚洲精品2020 | 国产xvideos免费视频播放 | 九九九热| 精品伊人久久久 | 国产成人三级在线播放 | 国产精品嫩草影院99网站 | 五月天久久婷 | 午夜.dj高清免费观看视频 | 人人干人人干人人干 | 91免费版在线观看 | 日韩在线免费不卡 | 91在线看视频免费 | 中日韩三级视频 | 国产不卡免费视频 | 狠狠色噜噜狠狠狠狠2022 | 少妇搡bbbb搡bbb搡忠贞 | 日韩精品在线视频 | 亚洲精品免费视频 | 亚洲精品xx| 欧美日韩精品免费观看 | 国产精品免费观看国产网曝瓜 | 久久国产精品久久久 | 亚洲激精日韩激精欧美精品 | 亚洲综合色av | 成人免费xxxxxx视频 | 中文字幕一区二区三区四区视频 | 国产一区在线视频 | 久久午夜网 | 国产中文字幕国产 | 99视频精品免费视频 | 欧美成人在线网站 | 国产一区二区三区午夜 | 在线国产日本 | 黄色一级免费电影 | 日本乱码在线 | 午夜国产在线观看 | 免费黄色看片 | 九九九九热精品免费视频点播观看 | 中文字幕国产一区 | 日韩精品中文字幕在线 | 免费看片黄色 | 人人澡人人澡人人 | 婷婷深爱激情 | 日本深夜福利视频 | 88av网站 | av免费在线网 | 天天躁天天狠天天透 | 欧美日bb| 国产精品欧美日韩 | 国产黄免费在线观看 | 97超碰精品 | 91看片一区二区三区 | 国产精品久久艹 | 欧美日韩亚洲在线观看 | 亚洲精色| 天天操天天射天天爽 | 在线a亚洲视频播放在线观看 | 中文字幕刺激在线 | 久草色在线观看 | 久久精品视频网站 | 五月婷婷.com | 亚洲综合国产精品 | 亚洲天堂在线观看完整版 | 奇米影视四色8888 | 一区二区三区手机在线观看 | 97av免费视频 | 久久综合激情 | 国产精品资源在线 | 中文字幕免费观看全部电影 | 国产精品video | 字幕网资源站中文字幕 | 韩国精品在线 | 国产精品第一页在线观看 | 国产一级二级在线观看 | 99久久爱 | 99精品国产高清在线观看 | 天天拍天天操 | 日韩素人在线观看 | 中文字幕av免费在线观看 | 成人一级免费视频 | 免费看国产黄色 | 99精品一区二区三区 | 国产视频在线一区二区 | 一区二区三区国产精品 | 国产拍在线 | 手机看片中文字幕 | 国产精品剧情 | 国产精品久久久久久爽爽爽 | 99人久久精品视频最新地址 | 亚洲精品777 | 国产无遮挡又黄又爽在线观看 | 国产亚洲精品精品精品 | 亚洲黄色成人网 | 国产视频一区精品 | 欧美aⅴ在线观看 | 日日射av| 99热这里只有精品8 久久综合毛片 | 欧美日韩国产一二三区 | 成人小视频在线观看免费 | 在线 国产一区 | 在线免费观看国产黄色 | 永久免费视频国产 | 一区二区三区动漫 | 天天干天天在线 | 免费观看黄色av | 国产精品尤物视频 | 国产精品视频免费 | 探花在线观看 | 亚洲日本一区二区在线 | 丁香婷婷在线 | 免费人成在线观看网站 | 免费aa大片 | 丁香婷婷基地 | 久久久精品小视频 | 国产香蕉97碰碰碰视频在线观看 | 国产剧情一区二区在线观看 | 久久国际影院 | 91色欧美 | 81精品国产乱码久久久久久 | 亚洲国产精品一区二区尤物区 | 五月天com | 中文字幕不卡在线88 | 91免费看片黄 | 91亚洲精品国偷拍自产在线观看 | 91亚洲狠狠婷婷综合久久久 | 国产精品18久久久久久不卡孕妇 | 在线看片91 | 69亚洲乱 | 久久视频免费在线 | 免费高清国产 | 国产精品99蜜臀久久不卡二区 | 在线观看视频一区二区三区 | 欧美精品久久久久 | 91精品视频在线免费观看 | 成年在线观看 | 日韩精品亚洲专区在线观看 | 特级毛片爽www免费版 | 99色资源| 亚洲电影免费 | 日韩av免费一区二区 | a极黄色片 | 国产综合香蕉五月婷在线 | 精品国产不卡 | 久久99精品久久久久久秒播蜜臀 | 国产精品色婷婷视频 | 欧美久久久影院 | 国产精品原创视频 | 国产精品精品久久久久久 | 99国产免费网址 | 久久久国产一区二区三区四区小说 | 久久国内精品99久久6app | 91污污视频在线观看 | 在线一区av | 天天曰夜夜操 | 欧美日韩国产精品一区二区亚洲 | 久久一线 | 超碰在线98 | 999久久国精品免费观看网站 | 国产精品视频免费 | 免费国产在线视频 | 少妇bbbb搡bbbb桶 | 色婷婷激情电影 | 亚洲激情六月 | 免费看在线看www777 | 激情开心网站 | 中文字幕色综合网 | 国产69久久久欧美一级 | 精品国产电影一区二区 | 麻豆成人网| 日韩精品欧美专区 | 人人干人人做 | 色综合久久99| 四虎成人精品永久免费av九九 | 日本中文字幕观看 | 一级特黄av | 精品一二| 久久人人97超碰com | 五月天综合激情网 | 亚洲五月综合 | 久久96国产精品久久99漫画 | 丁香婷婷电影 | 亚洲天堂网在线视频 | 欧美在线视频一区二区三区 | 免费看黄色小说的网站 | 国产色在线 | 91一区二区三区久久久久国产乱 | a黄色一级片| 午夜精品久久久久久久99水蜜桃 | 久久九九九九 | 五月天天在线 | 成人免费xxx在线观看 | 日韩,中文字幕 | 亚色视频在线观看 | 久久久久麻豆v国产 | 国产无套精品久久久久久 | 成人va视频| 丁香激情五月 | 一级片免费视频 | 最近的中文字幕大全免费版 | 国产精品剧情在线亚洲 | 超碰97中文 | 久久精品—区二区三区 | 欧美一区视频 | 亚洲精品美女久久久久网站 | 精品高清美女精品国产区 | 国产精品永久免费视频 | 天天综合狠狠精品 | 黄色av电影一级片 | 国产精品正在播放 | 黄色电影网站在线观看 | 九色激情网 | www.色在线| 伊人视频 | 国产第一二区 | 久久精品亚洲国产 | 久久最新视频 | 国产精品情侣视频 | 免费影视大全推荐 | 97超碰成人在线 | 久久综合九色综合久久久精品综合 | 97在线精品 | 国产精品v欧美精品 | 高清av免费看 | 中文字幕日本在线观看 | 国产自在线 | 色视频网站在线 | 日韩有码中文字幕在线 | 日日摸日日爽 | 亚洲日本三级 | 国产精品久久久久久久久久久免费 | 4438全国亚洲精品在线观看视频 | 狠狠的干狠狠的操 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 日本中文一级片 | 婷婷去俺也去六月色 | 精品字幕| 一级欧美日韩 | 日韩女同一区二区三区在线观看 | 麻豆果冻剧传媒在线播放 | 日韩精品一区二区三区三炮视频 | 在线看片中文字幕 | 美女禁18| 久久久久欠精品国产毛片国产毛生 | 综合色中色 | av中文字幕日韩 | 区一区二区三在线观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 免费国产黄线在线观看视频 | 欧美日韩在线观看一区二区三区 | 免费精品在线 | 99久久99精品 | 亚洲经典视频在线观看 | 首页国产精品 | 国产大陆亚洲精品国产 | 久久婷婷色 | 亚洲国产精品久久久久婷婷884 | 天天躁天天狠天天透 | 毛片区| 欧美日韩18| 黄色片网站免费 | aaa免费毛片 | 久久激情视频 久久 | 九九影视理伦片 | 国产精品毛片一区视频播不卡 | 欧美一区二区精美视频 | 日韩av免费大片 | 免费av网址大全 | 天天色天天综合网 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 国内精品久久久久久久久久久久 | 欧美a级在线播放 | 日本中文在线 | 亚洲一级电影在线观看 | 国产精品夜夜夜一区二区三区尤 | 国际精品久久 | 又黄又网站| 日韩中文字幕视频在线 | 安徽妇搡bbbb搡bbbb | 免费日韩在线 | 欧美午夜久久久 | 日本精品午夜 | 亚洲伊人色 | 亚洲精品乱码久久久久 | 黄色毛片视频免费 | 日韩中文字幕免费视频 | 亚洲永久在线 | 五月天婷亚洲天综合网鲁鲁鲁 | 国产成年人av| 9色在线视频 | 美女免费视频网站 | 99精品欧美一区二区三区 | 99re8这里有精品热视频免费 | 色吧av色av | 日本在线观看中文字幕无线观看 | 深爱激情五月婷婷 | 久久久资源网 | 69国产盗摄一区二区三区五区 | 色就色,综合激情 | 久久国产热视频 | 亚洲精品欧美视频 | 日日摸日日添日日躁av | 国产视频一区在线播放 | 欧美日韩国产在线一区 | 国产精品毛片一区视频播不卡 | 国产精品欧美一区二区 | 午夜婷婷在线播放 | 波多野结衣在线观看一区二区三区 | 久久久久久麻豆 | 国产激情电影综合在线看 | 亚洲人成免费 | 国产免费一区二区三区最新 | 日产中文字幕 | 91视频3p | 高清视频一区二区三区 | 91传媒激情理伦片 | 久久九九影视网 | 99 色| 色橹橹欧美在线观看视频高清 | 久精品在线观看 | 青青看片| 亚洲午夜久久久久久久久电影网 | www久久精品 | 国产美女网站在线观看 | 国产乱老熟视频网88av | 波多野结衣在线观看视频 | 91新人在线观看 | 中国美女一级看片 | www一起操| 深爱开心激情网 | 91精品视频免费在线观看 | 操操操日日日 | 二区三区中文字幕 | 精品国产成人av在线免 | 精品久久久久久久久亚洲 | 日韩精品一区二区三区在线视频 | 欧美激情第十页 | 国产一级在线看 | 国产视频91在线 | 黄色小说视频网站 | 国产在线永久 | 色狠狠久久av五月综合 | 黄网站色视频免费观看 | 国产中文字幕大全 | 精品女同一区二区三区在线观看 | 国产成人综 | 精品av网站 | 成人国产网站 | 成人黄色短片 | 91香蕉视频在线下载 | 日韩免费在线观看视频 | 黄色福利网站 | 日韩av视屏| 亚洲综合婷婷 | 国产尤物视频在线 | 伊人婷婷网| 久久人人添人人爽添人人88v | a在线免费观看视频 | 在线视频 亚洲 | 欧美日韩视频 | av线上看 | 国产又粗又猛又色又黄网站 | 天天干天天干天天干天天干天天干天天干 | 日韩中文字幕在线不卡 | 成人午夜精品福利免费 | 日韩精品久久久久 | 欧美精品免费在线 | 欧美日韩三级 | 久久草在线免费 | 国产精品视频最多的网站 | 亚洲一区二区三区四区精品 | av一区在线| 国产精品白浆视频 | 亚洲精品乱码久久久久久高潮 | 国产精品一区二区久久 | 三级a毛片 | 亚洲成a人片在线观看网站口工 | 成人亚洲免费 | 欧美一区二区三区特黄 | 亚洲va韩国va欧美va精四季 | 欧美作爱视频 | 青青河边草观看完整版高清 | 99视频网站 | aa级黄色大片 | 又爽又黄又无遮挡网站动态图 | 欧美黑人xxxx猛性大交 | 久久久精品综合 | 99热在线国产精品 | 久草在线视频中文 | 亚洲国产精品人久久电影 | 天海翼一区二区三区免费 | 久久久久99精品国产片 | 女人魂免费观看 | 99久久久国产精品免费99 | 国产九九热视频 | 欧美va天堂在线电影 | 天堂av官网 | 色网站免费在线观看 | 久久久精品国产一区二区 | 久久久久亚洲精品中文字幕 | 91亚色免费视频 | 四虎成人精品 | 69国产盗摄一区二区三区五区 | 一区二区高清在线 | 久久激五月天综合精品 | 极品嫩模被强到高潮呻吟91 | 91大神精品视频在线观看 | 日本在线视频网址 | 久久久综合电影 | 91福利视频免费 | 精品视频免费 | 狠狠干中文字幕 | 狠狠操狠狠干天天操 | 欧洲亚洲女同hd | 在线精品观看国产 | 久久久久影视 | 亚洲一区二区三区miaa149 | 在线观看91 | 久久深爱网 | 天天伊人网| 一区二区 不卡 | 一二区av | 97在线观视频免费观看 | av超碰在线| 在线观看日韩视频 | 日韩免费在线观看视频 | 韩国精品福利一区二区三区 | 天天色视频 | 在线免费日韩 | av五月婷婷 | 亚洲视频在线播放 | 久久久久免费精品视频 | 午夜精品区 | 国产亚洲精品成人 | 国产亚洲婷婷免费 | 国产精品视频在线观看 | 99国内精品 | 久久久久久久久久久综合 | 日韩一级片观看 | 99在线观看精品 | 三级视频日韩 | 玖玖999 | 午夜精品成人一区二区三区 | 免费看短 |