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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

基于boost asio实现的支持ssl的通用socket框架

發布時間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于boost asio实现的支持ssl的通用socket框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
情景分析
???現已存在一個可用穩定的異步客戶端類http_client_base,該類基于boost asio實現了連接服務器,發送請求,獲取響應和解析http數據等操作,該類的大致實現框架如下
??1class?http_client_base
??2{
??3public:
??4????http_client_base(boost::asio::io_service&?io_service)
??5????????:resolver_(io_service),socket_(io_service)
??6????{?
??7????}

??8????
??9????void?async_connect(const?std::string&?address,const?std::string&?port)
?10????{????
?11????????boost::asio::ip::tcp::resolver::query?query(address,?port);
?12????????resolver_.async_resolve(query,boost::bind(&http_client::handle_resolve,?this,
?13????????asio::placeholders::error,asio::placeholders::iterator));
?14????}

?15????
?16????void?async_write(const?void*?data,size_t?size,bool?in_place=false)
?17????{
?18????????if(!in_place){
?19????????????//do?something
?20????????????asio::async_write(socket_,request_,
?21????????????????????????????boost::bind(&http_client::handle_write,this,boost::asio::placeholders::error));
?22????????}
else
?23????????????asio::async_write(socket_,asio::buffer(data,size),
?24????????????????????????????boost::bind(&http_client::handle_write,this,boost::asio::placeholders::error));
?25????}

?26????
?27????void?async_write_some(const?void*?data,size_t?size,bool?in_place=false)
?28????{
?29????????if(!in_place){
?30????????????//do?something
?31????????????boost::asio::async_write(socket_,request_,
?32????????????????????????????????????boost::bind(&http_client::handle_write_some,this,boost::asio::placeholders::error));
?33????????}
else
?34????????????boost::asio::async_write(socket_,boost::asio::buffer(data,size),
?35????????????????????????????????????boost::bind(&http_client::handle_write_some,this,boost::asio::placeholders::error));
?36????}

?37
?38private:
?39????void?handle_resolve(const?boost::system::error_code&?e,boost::asio::ip::tcp::resolver::iterator?endpoint_iterator)
?40????{
?41????????if?(!e)
?42????????????boost::asio::async_connect(socket_,?endpoint_iterator,
?43????????????????????????????????????boost::bind(&http_client::handle_connect,this,boost::asio::placeholders::error));
?44????????else
?45????????????onIoError(e);
?46????}

?47????
?48????void?handle_connect(const?boost::system::error_code&?e)
?49????{
?50????????if(!e)
?51????????????onConnect();
?52????????else
?53????????????onIoError(e);
?54????}

?55
?56????void?handle_write_some(const?boost::system::error_code&?e)
?57????{
?58????????if(!e)
?59????????????onWriteSome();
?60????????else
?61????????????onIoError(e);
?62????}

?63
?64????void?handle_write(const?boost::system::error_code&?e)
?65????{
?66????????if(!e)
?67????????????boost::asio::async_read_until(socket_,?response_,"\r\n\r\n",
?68????????????????????????????boost::bind(&http_client::handle_read_header,this,
?69????????????????????????????boost::asio::placeholders::error,boost::asio::placeholders::bytes_transferred));
?70????????else
?71????????????onIoError(e);
?72????}

?73????
?74????void?handle_read_header(const?boost::system::error_code&?e,size_t?bytes_transferred)
?75????{
?76????????if(!e){
?77????????????//do?something
?78????????????boost::asio::async_read(socket_,response_,asio::transfer_at_least(1),
?79????????????????????????????boost::bind(&http_client::handle_read_content,this,
?80????????????????????????????boost::asio::placeholders::error,boost::asio::placeholders::bytes_transferred);????????????????????????????
?81????????}
else
?82????????????onIoError(e);
?83????}

?84
?85????void?handle_read_content(const?boost::system::error_code&?e,size_t?bytes_transferred)
?86????{
?87????????if(!e){
?88????????????//do?something
?89????????????boost::asio::async_read(socket_,response_,asio::transfer_at_least(1),
?90????????????????????????????????boost::bind(&http_client::handle_read_content,this,
?91????????????????????????????????boost::asio::placeholders::error,boost::asio::placeholders::bytes_transferred));
?92????????}
else
?93????????????onIoError(e);
?94????}

?95
?96protected:
?97????virtual?void?onConnect(){}
?98????virtual?void?onWriteSome(){}
?99????virtual?void?onIoError(const?boost::system::error_code&?e){}
100
101private:
102????boost::asio::ip::tcp::socket?socket_;
103????boost::asio::ip::tcp::resolver?resolver_;
104????boost::asio::streambuf?request_;
105????boost::asio::streambuf?response_;
106}
; ???顯而易見,http_client_base使用tcp::socket作為底層實現,所以數據是非ssl傳輸的。現因需求變更,為了數據安全要求使用ssl傳輸。但boost asio中的ssl::stream類接口和tcp::socket有所不同。其實在非ssl和ssl間,不同的只是讀寫數據的方法,而數據處理邏輯不變,因此為了重用http_client_base的機制框架和對http數據的解析,那么怎么使http_client_base不作大的改動就支持ssl呢?通過研究boost asio源碼發現,async_xxx系列自由函數內部要求讀寫流實現read_some、async_read_some、write_some和async_write_some4個短讀寫方法。由于tcp::socket已實現短讀寫而且ssl::stream是tcp::socket的上層,因此只要設計一個抽象的基類流,使之支持read_some、async_some_read、w rite _some和async_write_some即可,而實現使用dynamic_cast轉到兄弟基類tcp::socket或ssl::stream,再調用它們對應的同名短讀寫方法;另外還需要給出獲取最底層socket的接口,以支持async_connect和connect方法。因此針對這一設計實現,則要求派生類必須同時從抽象基類和其兄弟基類tcp::socket或ssl::stream繼承。

框架實現 ?
??1template<typename?T>
??2class?boost_socket_base
??3{
??4public:
??5????typedef?boost::asio::ssl::stream<T>?ssl_socket_base_t;
??6????typedef?T?socket_base_t;
??7
??8protected:
??9????boost_socket_base()
?10????????:tb_(boost::indeterminate)
?11????{
?12????}

?13
?14public:
?15????virtual?~boost_socket_base()?{}
?16
?17????ssl_socket_base_t*?get_ssl_socket()
?18????{
?19????????if(tb_){
?20????????????BOOST_ASSERT(ss_);????????
?21????????????return?ss_;
?22????????}
else?if(!tb_)
?23????????????return?NULL;
?24????????else{
?25????????????if(ss_=dynamic_cast<ssl_socket_base_t*>(this))
?26????????????????tb_?=?true;
?27????????????return?ss_;
?28????????}
?
?29????}

?30
?31????socket_base_t*?get_socket()
?32????{
?33????????if(!tb_){
?34????????????BOOST_ASSERT(s_);????????
?35????????????return?s_;
?36????????}
else?if(tb_)
?37????????????return?NULL;
?38????????else{
?39????????????if(s_=dynamic_cast<socket_base_t*>(this))
?40????????????????tb_?=?false;
?41????????????return?s_;
?42????????}

?43????}

?44
?45????void?reset()
?46????{????tb_?=?boost::indeterminate;?}
?47
?48????typename?T::lowest_layer_type&?lowest_layer()
?49????{
?50????????ssl_socket_base_t*?p?=?get_ssl_socket();
?51????????if(p)?
?52????????????return?p->lowest_layer();
?53????????else
?54????????????return?get_socket()->lowest_layer();
?55????}

?56
?57????template?<typename?MutableBufferSequence>
?58????std::size_t?read_some(const?MutableBufferSequence&?buffers)
?59????{
?60????????ssl_socket_base_t*?p?=?get_ssl_socket();
?61????????if(p)?
?62????????????return?p->read_some(buffers);
?63????????else
?64????????????return?get_socket()->read_some(buffers);
?65????}

?66????
?67????template?<typename?MutableBufferSequence>
?68????std::size_t?read_some(const?MutableBufferSequence&?buffers,boost::system::error_code&?ec)
?69????{
?70????????ssl_socket_base_t*?p?=?get_ssl_socket();
?71????????if(p)?
?72????????????return?p->read_some(buffers,ec);
?73????????else
?74????????????return?get_socket()->read_some(buffers,ec);
?75????}

?76
?77????template?<typename?MutableBufferSequence,?typename?ReadHandler>
?78????void?async_read_some(const?MutableBufferSequence&?buffers,BOOST_ASIO_MOVE_ARG(ReadHandler)?handler)
?79????{
?80????????ssl_socket_base_t*?p?=?get_ssl_socket();
?81????????if(p)?
?82????????????return?p->async_read_some(buffers,handler);
?83????????else
?84????????????return?get_socket()->async_read_some(buffers,handler);
?85????}

?86
?87????template?<typename?ConstBufferSequence>
?88????std::size_t?write_some(const?ConstBufferSequence&?buffers,boost::system::error_code&?ec)
?89????{
?90????????ssl_socket_base_t*?p?=?get_ssl_socket();
?91????????if(p)?
?92????????????return?p->write_some(buffers,ec);
?93????????else
?94????????????return?get_socket()->write_some(buffers,ec);
?95????}

?96
?97????template?<typename?ConstBufferSequence>
?98????std::size_t?write_some(const?ConstBufferSequence&?buffers)
?99????{
100????????ssl_socket_base_t*?p?=?get_ssl_socket();
101????????if(p)?
102????????????return?p->write_some(buffers);
103????????else
104????????????return?get_socket()->write_some(buffers);
105????}

106
107????template?<typename?MutableBufferSequence,?typename?ReadHandler>
108????void?async_write_some(const?MutableBufferSequence&?buffers,BOOST_ASIO_MOVE_ARG(ReadHandler)?handler)
109????{????
110????????ssl_socket_base_t*?p?=?get_ssl_socket();
111????????if(p)?
112????????????return?p->async_write_some(buffers,handler);
113????????else
114????????????return?get_socket()->async_write_some(buffers,handler);
115????}

116
117private:
118????boost::tribool?tb_;
119????union?{
120????????ssl_socket_base_t*?ss_;
121????????socket_base_t*?s_;
122????}
;
123}
; ???考慮到dynamic_cast轉換的性能開銷,因此增加了三態邏輯變量tb_和union指針,tb_表示當前this實際指向的對象類型,初始化為indeterminate,true表示ssl socket對象,使用ss_;false表示普通socket對象,使用s_。這樣一來,當且僅當tb_為indeterminate時才dynamic_cast。由于這點優化僅對基類指針操作有效,而對派生對象實無必要,所以tb_和union指針設為私有的;而且基類指針可以指向不同的子類對象,所以增加了reset方法重設tb_為indeterminate狀態,保證行為的正確性。

應用改進
???使用boost_socket_base框架后,只須5個地方稍作改動即可。
???1)成員變量 :由原來的boost::asio::ip::tcp改為boost_socket_base<boost_tcp_socket>*類型。 1typedef?boost::asio::ip::tcp::socket?boost_tcp_socket;
2boost_socket_base<boost_tcp_socket>*?socket_;
??? 2)構造函數 :增加boost::asio::ssl::context* ctx參數,默認為NULL,表示不使用ssl。
1http_client_base(boost::asio::io_service&?io_service,boost::asio::ssl::context*?ctx=NULL)
2????:resolver_(io_service)
3{
4????????if(ctx)
5????????????socket_?=?new?boost_ssl_socket<boost_tcp_socket>(io_service,*ctx);
6????????else
7????????????socket_?=?new?boost_socket<boost_tcp_socket>(io_service);
8}

??? 3)握手 處理 :與非ssl不同的是,在連接后需要進行握手,握手成功后才回調onConnect。
?1void?handle_connect(const?boost::system::error_code&?e)
?2{
?3????if(!e){
?4????????boost_socket_base<boost_tcp_socket>::ssl_socket_base_t*?p?=?socket_->get_ssl_socket();
?5????????if(p)
?6????????????p->async_handshake(boost::asio::ssl::stream_base::client,boost::bind(&http_client::handle_handshake,
?7???????????????????????????this,boost::asio::placeholders::error));
?8????????else
?9????????????onConnect();
10????}
else
11????????onIoError(e);
12}

13void?handle_handshake(const?boost::system::error_code&?e)
14{
15????if(!e)
16????????onConnect();
17????else
18????????onIoError(e);
19}

??? 4)異步連接 :由于async_connect只接受boost::basic_socket類即最底層的socket作為參數,因此需要調用lowest_layer。
1void?handle_resolve(const?boost::system::error_code&?e,boost::asio::ip::tcp::resolver::iterator?endpoint_iterator)
2{
3????if?(!e)
4????????boost::asio::async_connect(socket_->lowest_layer(),?endpoint_iterator,boost::bind(&http_client::handle_connect,this,boost::asio::placeholders::error));
5????else
6????????onIoError(e);
7}

???5)async_xxx調用
:將參數socet_改為*socket_,例如下。
?1void?async_write(const?void*?data,size_t?size,bool?in_place=false)
?2{
?3????if(!in_place){
?4????????//do?something
?5????????boost::asio::async_write(*socket_,request_,boost::bind(&http_client::handle_write,this,boost::asio::placeholders::error));
?6????}
else
?7????????boost::asio::async_write(*socket_,asio::buffer(data,size),boost::bind(&http_client::handle_write,this,boost::asio::placeholders::error));
?8}

?9void?handle_write(const?boost::system::error_code&?e)
10{
11????if(!e)
12????????boost::asio::async_read_until(*socket_,?response_,?"\r\n\r\n",
13????????????????????boost::bind(&http_client::handle_read_header,this,boost::asio::placeholders::error,asio::placeholders::bytes_transferred));
14????else
15????????onIoError(e);
16}

總結

以上是生活随笔為你收集整理的基于boost asio实现的支持ssl的通用socket框架的全部內容,希望文章能夠幫你解決所遇到的問題。

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

伊人天天色 | 九色自拍视频 | 日韩av不卡在线观看 | 麻豆91网站 | 国产不卡在线视频 | 国产高清区 | 一区二区三区四区免费视频 | 久草久视频| 国产一区二区三区免费在线观看 | 美女网站黄在线观看 | 免费看污网站 | 亚洲精品久久久蜜臀下载官网 | 久久一区精品 | 亚洲国产中文字幕在线观看 | 国产亚洲片 | 久久99国产精品久久 | 91系列在线观看 | 午夜精品一区二区三区在线播放 | 精品久久网 | 久久久午夜剧场 | 欧美日韩久久久 | 玖玖爱在线观看 | 国产成人精品一区二区三区 | 亚洲综合激情网 | 91九色蝌蚪国产 | 精品一区二区在线观看 | 亚洲精品久久久久久中文传媒 | 97香蕉久久国产在线观看 | 国产成人av一区二区三区在线观看 | 国产精品美女久久久久久 | 亚洲成人av片在线观看 | 99re视频在线观看 | 国产一级片直播 | 色综合www | 久久久久久免费毛片精品 | 97精品国产一二三产区 | 国产亚洲精品久久久久久网站 | 久久久精品网站 | 黄色三级网站 | 三级性生活视频 | 狠狠成人 | 久久五月婷婷丁香社区 | 欧亚日韩精品一区二区在线 | 九九天堂| 免费成人av在线看 | 88av视频 | 中文字幕你懂的 | 亚洲专区在线 | 久久久久色 | 超碰97在线人人 | 99在线精品视频在线观看 | 国内三级在线观看 | 在线观看视频一区二区三区 | 99国产精品久久久久老师 | 精品国产一区二区久久 | av五月婷婷 | 国内精品久久久久久久影视简单 | 亚洲精品国精品久久99热 | 成 人 黄 色视频免费播放 | 亚洲精品久久久久999中文字幕 | 在线欧美中文字幕 | 国内视频在线 | 又黄又爽又无遮挡的视频 | 精品自拍网 | 成人在线视频网 | 中文字幕一区二 | 久久视频国产精品免费视频在线 | 91成人精品一区在线播放69 | 在线观看91精品视频 | 五月综合婷 | 色噜噜在线观看 | 91成人在线视频 | 久久久久久久国产精品 | 成人午夜网 | 精品一区二区在线观看 | 国产亚洲精品久久久久久久久久久久 | av黄色在线观看 | 精品久久久久久久久久岛国gif | 天堂网一区二区 | 成人免费中文字幕 | 国产无遮挡又黄又爽在线观看 | 99久久夜色精品国产亚洲96 | 国产99一区二区 | 欧美日韩视频 | www.久久com | 欧美大jb | 夜夜摸夜夜爽 | 国产精品99久久久 | 欧美亚洲免费在线一区 | 福利视频一区二区 | 亚洲成av人影院 | 日韩在线不卡 | 久久都是精品 | 久久精品4 | 久久精品五月 | 久久最新网址 | 天天天在线综合网 | 亚洲欧美日韩一二三区 | 天堂网一区二区三区 | 久久久久久久久久久免费av | 亚洲,国产成人av | 日韩久久一区 | 日韩成人黄色 | 999久久久久久久久6666 | 又爽又黄在线观看 | 一区二区三区电影在线播 | 欧美激情综合色综合啪啪五月 | 最近免费中文字幕 | 在线观看视频一区二区三区 | 日韩三级视频在线观看 | 天堂av观看 | 天天色天天色天天色 | 99综合视频| av电影在线免费观看 | 在线观看91 | 在线观看视频一区二区三区 | 丁香高清视频在线看看 | 国产玖玖在线 | 久久精品一区二区三 | 日韩午夜在线观看 | 欧美亚洲一级片 | a久久久久 | 亚洲一区二区视频在线播放 | 国产精品久久久久久久久久不蜜月 | 国产一区二区精品 | 91黄色免费网站 | 色婷婷播放| 天天操天天操天天操天天操天天操天天操 | 在线成人看片 | 中文字幕在线观看视频网站 | 国产高h视频 | 玖玖国产精品视频 | 国产一区二区三区免费在线观看 | 2018好看的中文在线观看 | 国产精品免费在线播放 | 国产精品第一视频 | 午夜久久电影网 | 中文乱码视频在线观看 | 国产精品福利午夜在线观看 | 日日干干夜夜 | 久久久久亚洲精品国产 | 一区二区三区在线影院 | 日韩高清成人在线 | 国产一区在线视频观看 | 欧美孕妇视频 | 成人一区影院 | av线上看| 国产精品第72页 | 久久久精品免费观看 | 手机在线永久免费观看av片 | 国产精品网红直播 | 久久视频在线 | 美女在线观看av | 98超碰在线观看 | 丁香五婷 | 欧美aa级 | 久久免费播放 | 国产精品一区二区三区在线播放 | 中文字幕在线视频一区二区 | 日韩国产精品毛片 | 久艹视频免费观看 | 久久99精品国产一区二区三区 | 亚洲在线成人精品 | 一级欧美黄 | 人人插人人插 | 国内久久久 | 91你懂的| 黄色成人小视频 | avove黑丝| 久久综合色播五月 | 99久久99久久 | 免费精品视频在线 | 99视频导航 | 欧美一区二区三区特黄 | 在线韩国电影免费观影完整版 | 国产精品久久久免费 | 免费看片日韩 | 免费看污网站 | 伊人激情综合 | 国产一级二级在线观看 | 国产 色 | 亚洲国产美女精品久久久久∴ | 亚洲一区不卡视频 | 亚洲尺码电影av久久 | 国产亚洲精品女人久久久久久 | 免费成人av在线看 | 亚洲最大激情中文字幕 | ww视频在线观看 | 国产大陆亚洲精品国产 | 天天天天色射综合 | 黄网在线免费观看 | 99久久毛片 | 国产福利久久 | 五月婷婷欧美视频 | 欧美精品三级 | 欧美日韩国产二区三区 | 精品亚洲va在线va天堂资源站 | 天天操夜夜操国产精品 | 五月天丁香综合 | 成年人精品 | 免费三级在线 | 免费网站在线观看成人 | 激情综合网色播五月 | 一级电影免费在线观看 | 中文字幕4 | 日日夜夜干 | 欧美亚洲成人xxx | 射射色 | 欧美极品少妇xbxb性爽爽视频 | 国产精品 日本 | www.久久久.com | www.91成人| 免费在线色电影 | 日韩av一区二区在线播放 | 成人网页在线免费观看 | 亚洲精品自拍 | 天天天天天天操 | 九九亚洲视频 | 国产 一区二区三区 在线 | 狠狠色丁香婷婷综合 | 国产亚洲精品女人久久久久久 | 成年人免费观看在线视频 | 五月天婷婷在线视频 | 亚洲成人资源网 | 欧美激情视频一区 | 色婷婷88av视频一二三区 | 午夜少妇一区二区三区 | 欧美日韩国产mv | 久久69av | 91豆麻精品91久久久久久 | www在线观看视频 | 国产一级久久 | 97视频免费观看2区 亚洲视屏 | 免费视频一级片 | 国产精品女同一区二区三区久久夜 | 精品国产一区二区三区男人吃奶 | 久久99精品波多结衣一区 | 狠狠夜夜 | 久久男人免费视频 | a在线播放 | 亚洲午夜久久久久久久久 | 综合久久2023 | 最新国产精品久久精品 | 夜夜躁日日躁狠狠久久88av | 亚洲精品乱码久久久久久高潮 | 免费看一级黄色 | 国产精品欧美日韩 | 五月婷婷综合激情 | 美女中文字幕 | 国产精品av电影 | 国内久久看| 99视频免费播放 | 深爱婷婷 | 99热最新| 天天射天天射天天射 | 午夜在线免费视频 | 日韩一区二区三区免费视频 | 亚洲永久av| 一级片免费观看 | 中文字幕色在线视频 | 青青河边草免费直播 | 中文字幕首页 | 激情婷婷色 | 日韩一区二区三区免费视频 | 免费看黄的 | 麻豆视频免费在线 | 91精品导航 | 国产 日韩 欧美 自拍 | 五月亚洲综合 | 超碰97国产在线 | 欧美日韩免费观看一区=区三区 | 91精品国产99久久久久久红楼 | 亚洲激情免费 | 日韩精品一区二区在线观看视频 | 91大神精品视频 | 亚洲综合视频在线 | 九七在线视频 | 成年人免费电影在线观看 | 国产中文伊人 | 成全在线视频免费观看 | 四虎www com| 高清日韩一区二区 | 国产午夜精品一区二区三区四区 | 国产精品2018 | 国产精品99久久久久 | 天天舔天天射天天操 | 亚洲一二三久久 | 午夜精品999 | 成年人免费av网站 | 国产精品2区 | 麻豆传媒视频在线免费观看 | 日韩在线观看视频免费 | 国产剧情一区二区在线观看 | 国产色中涩 | 国产高清区 | 久久男人免费视频 | 九九九电影免费看 | 亚洲mv大片欧洲mv大片免费 | 欧美日本一二三 | 国产精品18p | 久久精品中文视频 | 天天操天天操天天操天天 | 国产精品成人a免费观看 | 成 人 黄 色 片 在线播放 | 免费在线观看av电影 | 日本黄色免费电影网站 | 九九九九九国产 | 精品久久久久久综合日本 | 91视频免费看片 | 久久久久久久影视 | 欧美一区二区免费在线观看 | 岛国av在线免费 | 免费网站黄色 | 91精品毛片| 2018亚洲男人天堂 | 成人a级黄色片 | 91久久精品一区二区三区 | 美女黄视频免费看 | 国产精品一区二区在线观看 | 日韩精品高清视频 | 91精品在线视频观看 | 国产黄色免费 | 精品国产aⅴ一区二区三区 在线直播av | 免费看的黄色的网站 | 中文在线免费视频 | 婷婷久久五月天 | 97碰在线| 久久香蕉电影网 | 欧美另类巨大 | 99热在线国产精品 | 日韩在线视频线视频免费网站 | 91tv国产成人福利 | 欧美一区二区三区在线播放 | 亚洲午夜精品久久久 | 亚洲成人黄色在线观看 | 日韩精品视频久久 | 国产精品 中文字幕 亚洲 欧美 | 日韩欧美综合精品 | 久久不卡国产精品一区二区 | 免费看片成年人 | 操一草 | 成年人黄色大片在线 | 日韩免费一级a毛片在线播放一级 | 久久精品爱爱视频 | 精品久久毛片 | 国产欧美三级 | 精品免费在线视频 | 免费观看一区二区三区视频 | 美女视频网站久久 | 久久久久久久精 | 91网站在线视频 | 免费在线观看毛片网站 | 9在线观看免费高清完整 | 国产高清免费在线观看 | 日韩视频免费 | 国内视频一区二区 | 国产99久久九九精品 | 天天翘av | 亚洲精品高清一区二区三区四区 | 超碰97中文| 麻豆91精品 | 亚洲精品国产拍在线 | 美女久久久久久久久久 | 欧产日产国产69 | 久久综合久久久久88 | 麻豆国产视频 | 国产精品久久久99 | 天天天天天天操 | 中文字幕乱偷在线 | 一区二区视频电影在线观看 | 国产精品免费一区二区 | 视频成人永久免费视频 | 日韩一级黄色片 | 免费看的黄色的网站 | 国产99久久久国产精品成人免费 | 在线观看日韩一区 | 久久久噜噜噜久久久 | 九九免费在线观看视频 | 久久精品亚洲综合专区 | 中文在线中文资源 | 在线不卡a | 成人亚洲免费 | www.夜夜爱| 亚洲综合色av | 国产va精品免费观看 | 欧美成人播放 | 免费视频成人 | 亚洲精品视频一二三 | 久久观看免费视频 | 奇米网777 | 国产九色视频在线观看 | 五月婷婷在线视频观看 | 四虎在线免费观看视频 | 午夜少妇av | 福利视频网址 | 国产一区二区三区黄 | 综合色婷婷 | 婷婷久久精品 | 色小说在线 | 人人爽人人爽人人爽学生一级 | 欧美嫩草影院 | 国产精品久久一区二区无卡 | 免费亚洲精品 | 国内毛片毛片 | 天天草天天色 | 久久综合狠狠综合久久狠狠色综合 | www.91av在线 | www日日夜夜 | 日韩黄色一级电影 | se婷婷| 麻豆久久 | www亚洲精品 | 免费在线观看一区 | av怡红院 | 字幕网av | 亚洲一区不卡视频 | 丁香花在线观看免费完整版视频 | 五月天激情电影 | 久草电影在线观看 | 久久男人视频 | 丁香婷婷基地 | 精品视频| 丁香六月五月婷婷 | 伊人激情网 | 一区二区日韩av | 免费视频 三区 | av一区在线| 国产成人精品一区二区在线 | 天天碰天天操视频 | 久久综合中文字幕 | 午夜999 | 国产一级黄色片免费看 | 国产精品女同一区二区三区久久夜 | www.久久免费视频 | 二区视频在线 | 人人爱人人做人人爽 | 国产小视频免费观看 | 99 视频 高清 | 美女久久一区 | 91精品国产自产在线观看 | 久久蜜臀av| 96久久 | 国产精品日韩欧美 | 成人一级免费视频 | av高清一区二区三区 | 久久成人精品电影 | 免费在线观看一区二区三区 | 成年人电影免费在线观看 | 久久高视频 | 中文字幕资源在线观看 | 狠狠色噜噜狠狠狠狠 | 日韩91精品| 在线中文字幕观看 | 精品国产一区二区三区噜噜噜 | 亚洲精品美女在线 | 国产精品成人免费 | 国产精品精品国产婷婷这里av | www激情com| 久久久久福利视频 | 久久综合色婷婷 | 久久久精品在线观看 | 日韩理论视频 | 黄色大全免费观看 | 69av在线视频 | 精品国产亚洲一区二区麻豆 | 欧美资源在线观看 | 国产成人61精品免费看片 | 婷婷去俺也去六月色 | www九九热| 色视频在线免费 | 国产高清精品在线 | 亚洲,国产成人av | 久久久久久久久久毛片 | 成人免费亚洲 | 天天综合网久久 | 亚洲精品久久久蜜臀下载官网 | 毛片888| 天天天天天天干 | 五月婷婷在线视频观看 | 欧美大香线蕉线伊人久久 | 伊人午夜视频 | 超碰97人人射妻 | 中文av不卡| 日韩av高清在线观看 | 国产一二三区av | 精品麻豆 | 天天做日日做天天爽视频免费 | 最近最新中文字幕视频 | 日韩久久网站 | 九九九在线 | 成人黄色大片 | 成人影视免费看 | 视频91在线 | 热久久在线视频 | 玖操| 97在线观看| 日韩视频在线播放 | 国产黄色片在线免费观看 | 亚洲免费成人av电影 | 国内精品福利视频 | 精品久久一区 | 久久视频免费在线观看 | 99麻豆久久久国产精品免费 | 亚洲免费av一区二区 | 国产成人专区 | 婷婷色在线视频 | 亚洲国内在线 | 亚洲闷骚少妇在线观看网站 | 久久久免费看视频 | 国模视频一区二区三区 | 蜜桃视频在线观看一区 | 免费在线播放黄色 | 日韩久久久久久久久 | 成人在线免费视频观看 | 中文字幕日本在线观看 | 免费福利在线视频 | 99在线热播 | 国产99久久久国产精品成人免费 | 成人在线观看免费视频 | 亚洲色图激情文学 | 一本一道波多野毛片中文在线 | 丁香婷婷深情五月亚洲 | 日韩精品一区二区三区视频播放 | 中文字幕在线高清 | 国产精品自产拍 | 亚洲国产精品第一区二区 | 欧美激情精品久久 | 久久国产精品视频 | 极品久久久久久久 | 国产免费又黄又爽 | 99免在线观看免费视频高清 | 天天干,夜夜爽 | 国产精品 中文字幕 亚洲 欧美 | 国产成人精品午夜在线播放 | 特黄特色特刺激视频免费播放 | 国产日韩精品在线观看 | 欧美一级特黄aaaaaa大片在线观看 | 九九久久视频 | 色综合久久久久综合 | 天天夜夜亚洲 | 91视频这里只有精品 | 午夜久久 | 亚洲成aⅴ人片久久青草影院 | 中文字幕在线观看日本 | 国产精品一区二区三区99 | 欧美另类交人妖 | 国产精品九九久久久久久久 | 国产又粗又猛又黄视频 | 在线影院中文字幕 | 国产第一页在线观看 | 国产视频999 | 日本中文字幕高清 | 草在线视频 | 亚洲最大免费成人网 | www黄色com | 国产精品亚 | 月丁香婷婷 | 久久午夜网 | 深爱激情av| 久久综合毛片 | 久久久免费播放 | 久久撸在线视频 | 成人av影视观看 | aⅴ视频在线| 久久tv | 亚洲精品视频网站在线观看 | 97视频免费播放 | 成人精品国产免费网站 | 久草综合视频 | 日韩字幕在线观看 | 久久久黄色av | 国产精品久久久久久吹潮天美传媒 | 激情五月婷婷激情 | 在线 国产一区 | 成人午夜电影网站 | 精品国产大片 | 人人干人人添 | 天天综合久久 | 91香蕉视频色版 | 91一区二区三区在线观看 | 韩国av电影在线观看 | 色婷婷激情四射 | 国产又粗又硬又爽视频 | 国产精品一区二区在线观看免费 | 国产成人一区二区精品非洲 | 99人久久精品视频最新地址 | 婷婷在线免费视频 | 丁香婷婷激情网 | 亚洲午夜精品电影 | 伊人成人激情 | 欧美精品亚洲精品 | 九九视频免费在线观看 | 97超碰人人澡人人 | 91网站免费观看 | 国产精品精品 | 激情久久伊人 | 人人超碰人人 | 97超碰中文| 午夜91在线| 天天操天天操天天操天天操天天操天天操 | 在线观看网站av | 亚洲四虎 | 91精品亚洲影视在线观看 | 亚洲人成在线电影 | 国产人成精品一区二区三 | 在线播放一区二区三区 | 久久一区二区三区日韩 | 精品国产综合区久久久久久 | 久久精品国产99 | 最新精品视频在线 | 91视频国产高清 | 亚洲精品电影在线 | 337p日本欧洲亚洲大胆裸体艺术 | a√天堂中文在线 | 日韩欧美视频免费看 | 午夜久久影视 | 国内外成人免费在线视频 | 在线看国产视频 | 色91在线视频| 精品视频久久 | 久久久久久麻豆 | 999成人国产 | 国产欧美日韩精品一区二区免费 | 免费成人在线电影 | 色全色在线资源网 | 成人h电影在线观看 | 久久高清国产视频 | 亚洲 欧美 变态 国产 另类 | 国产在线视频一区二区三区 | 香蕉视频网站在线观看 | 欧美a级在线免费观看 | 国产综合在线观看视频 | 久久精品欧美一区二区三区麻豆 | 亚洲最新在线视频 | 日韩成人免费在线电影 | 999久久| 韩国一区二区三区在线观看 | 国产护士在线 | 热久久影视 | 偷拍精品一区二区三区 | 久久av免费观看 | 中文在线最新版天堂 | 欧美日韩在线观看视频 | 伊人网综合在线观看 | 亚洲人xxx | 玖玖精品在线 | 久久五月天综合 | 伊人婷婷色 | 日本精油按摩3 | 久草资源在线 | 在线观看av网站 | 国产精品不卡av | 最近中文字幕免费观看 | 91在线播放综合 | 亚洲精品午夜视频 | 国产精品久久久久久久久蜜臀 | 亚洲国产wwwccc36天堂 | 婷婷av网 | aaaaaa毛片| 99r在线观看 | 亚洲视频www | 亚洲欧洲成人精品av97 | 午夜国产福利在线 | 韩国精品视频在线观看 | 欧美精品中文在线免费观看 | 免费观看丰满少妇做爰 | 欧美日韩国产免费视频 | 国产亚洲欧美在线视频 | 日韩av一卡二卡三卡 | 日韩电影一区二区在线 | 欧美精品中文在线免费观看 | 日韩欧美在线观看一区二区 | 久久精品国产免费看久久精品 | 免费三级网 | av资源在线观看 | 人人网人人爽 | 在线观看视频福利 | 午夜精品久久久久久久99 | 超碰国产人人 | 精品国产aⅴ一区二区三区 在线直播av | 久草资源在线观看 | 久久久www成人免费毛片 | 日本一区二区三区免费看 | 在线观看亚洲专区 | 97成人精品视频在线播放 | 成人超碰97 | 狠狠狠色丁香婷婷综合久久五月 | 国产在线不卡视频 | 欧美日韩国产免费视频 | 在线观看黄色国产 | 天天色宗合 | 欧美色精品天天在线观看视频 | 国产精品电影一区二区 | 91成人精品一区在线播放 | 色综合久久综合 | 亚洲天堂网在线视频 | a视频免费看 | 国产网站在线免费观看 | 欧美aa在线| 美女激情影院 | 欧美日韩性视频 | 黄色a视频免费 | 亚洲日本在线视频观看 | www色,com| 日韩激情网| 色资源二区在线视频 | 91激情| 久久艹在线观看 | 中文字幕精品三区 | 99在线看| 欧美a影视 | 91日韩在线视频 | 91麻豆精品国产91久久久久 | 亚洲在线视频免费 | 国产+日韩欧美 | 91女子私密保健养生少妇 | 国产在线观看免 | 日韩欧美综合在线视频 | 亚洲精品国产免费 | 日韩xxxx视频| av国产网站 | 97超碰人人网 | 免费av网站在线看 | 国产精品成久久久久 | 少妇bbbb| 综合天堂av久久久久久久 | 91麻豆精品国产91 | 一区二区欧美日韩 | 午夜美女福利直播 | 久久一区91 | 天天干亚洲 | 亚洲精品视频在线观看视频 | 国产一级在线播放 | 国内久久久 | 尤物97国产精品久久精品国产 | 中文字幕 国产专区 | 毛片网免费 | 久久国语露脸国产精品电影 | 在线观看av不卡 | 91视频 - x99av | 91在线精品播放 | 久草久草视频 | 啪啪资源 | 丰满少妇高潮在线观看 | 激情五月伊人 | 欧美精品色 | 在线亚洲高清视频 | 成人亚洲精品国产www | 天天操网址 | av电影中文字幕在线观看 | 精品亚洲视频在线 | 日韩欧美成人网 | 国产色拍| 免费观看丰满少妇做爰 | 免费日韩av片 | 日日日爽爽爽 | 日韩理论电影在线观看 | 99久久精品久久亚洲精品 | 日日干夜夜爱 | 日本3级在线观看 | 久草在线精品观看 | 亚洲色图色 | 国产精品二区在线观看 | 最新国产精品拍自在线播放 | 亚洲日本一区二区在线 | 国内精品免费久久影院 | 香蕉手机在线 | 国产成人精品一区二区三区在线 | 成人播放器 | 麻豆国产视频下载 | 91大神精品视频在线观看 | 国产品久精国精产拍 | 99精品视频一区二区 | 在线观看av麻豆 | 日韩成人免费在线观看 | 国产一级特黄电影 | 亚洲激情在线视频 | 99色99| 久久综合九色综合久久久精品综合 | 中文字幕第一页在线 | 久久久久久久久免费 | 99这里只有精品99 | 精品二区久久 | 欧美 亚洲 另类 激情 另类 | 日日久视频 | 五月激情天 | 蜜桃视频精品 | 在线观看成人国产 | 亚洲精品免费在线播放 | 麻豆精品传媒视频 | www黄色软件 | 91av在线免费视频 | 91精品国产高清自在线观看 | 国产精品专区在线 | 久久综合网色—综合色88 | 免费开视频 | 欧美国产三区 | 久久精品超碰 | 婷婷六月天丁香 | 成人免费视频网站 | 国产精国产精品 | 亚洲黄色在线免费观看 | 久草国产视频 | 久久视频免费 | 亚洲精品久久久久58 | 99视频国产精品 | 欧美激情视频在线观看免费 | 久久一区二区三区国产精品 | 久久久国产一区二区三区四区小说 | 国产精品1区2区3区 久久免费视频7 | 五月天综合在线 | 夜夜爽88888免费视频4848 | 日韩av手机在线看 | 91夫妻自拍 | 一区二区三区动漫 | 探花视频在线观看免费版 | 成人国产精品免费观看 | 99r国产精品 | 成人久久久精品国产乱码一区二区 | 欧美日韩高清在线观看 | 日韩精品一区二区在线 | 视频在线一区 | 中文字幕在线观看1 | 午夜久操| 高清不卡毛片 | 亚洲国产影院 | 国产亚洲欧美一区 | 欧美特一级 | 日日夜夜精品免费视频 | 麻豆高清免费国产一区 | 久久久国产一区 | 中文字幕在线观看视频一区 | 在线小视频 | 九九99靖品 | 九九99| 日韩精品一二三 | 不卡精品| 能在线观看的日韩av | 天天操天天操 | 黄色特一级片 | 免费午夜av| 黄色精品一区 | 天天做天天看 | 国产免费美女 | 午夜精品久久久久 | 久久色中文字幕 | 欧美亚洲成人xxx | 国产一区二区视频在线播放 | 国产69久久久 | 日韩欧美在线观看一区 | 日日夜夜天天久久 | 91精品资源 | 国产精品女同一区二区三区久久夜 | 久草在线精品观看 | 亚洲精品玖玖玖av在线看 | 91九色自拍 | 999免费视频 | 亚洲精品视频在线观看免费 | 在线免费视频 你懂得 | 免费亚洲精品 | 99色视频 | 在线视频麻豆 | 在线免费观看黄 | 亚洲一区视频免费观看 | 草久在线视频 | 国产精品白浆视频 | 色综合久久久久综合体桃花网 | 久久99视频精品 | 亚洲国产精品500在线观看 | 精品国产福利在线 | 久久久久久久久久久福利 | 中文av网 | 久久99国产精品视频 | 日本三级久久 | 免费精品在线 | 国产91精品一区二区 | 免费在线激情电影 | 亚洲综合小说电影qvod | 国产在线精品播放 | 日本成人中文字幕在线观看 | 麻豆av电影 | 91在线播放国产 | 久久激情日本aⅴ | 福利精品在线 | 草久视频在线观看 | 免费视频黄色 | 波多野结衣一区二区 | 97精品国产97久久久久久 | 91高清在线| 国产一线天在线观看 | 婷婷狠狠操| 欧美久久久久久久久中文字幕 | 久久精品永久免费 | 久久一区二区三区国产精品 | 欧美色噜噜噜 | 美女视频a美女大全免费下载蜜臀 | 免费在线成人 | 国产高清在线免费观看 | 99精品小视频 | 精品国产成人在线影院 | 粉嫩av一区二区三区入口 | 成人中文字幕在线 | 91久久久国产精品 | 69av在线视频 | 日韩手机在线 | 婷婷久久精品 | 欧美精品在线免费 | www激情com | 91传媒在线播放 | 亚洲国产精品999 | 久久久在线免费观看 | 人人爽人人爽人人片av免 | 婷婷综合导航 | 夜夜夜夜操 | 天天综合亚洲 | 亚洲精品国产精品国自产观看 | 久久爽久久爽久久av东京爽 | 九九视频热 | 最新成人av | 在线免费观看国产视频 | 精品九九九 | 日韩电影一区二区三区在线观看 | 国内精品久久久久国产 | 免费观看高清 | 尤物97国产精品久久精品国产 | 午夜久久久久 | 天天天综合网 | 探花视频在线观看 | a视频免费在线观看 | 在线日韩精品视频 | 就色干综合 | 91精品欧美一区二区三区 | www.成人精品 | 亚洲 中文 欧美 日韩vr 在线 | 亚洲一区天堂 | 国产91在线看 | av免费网站在线观看 | 日韩视频免费观看高清 | 99热在线精品观看 | 亚洲黄色影院 | 欧美一区二区免费在线观看 | 成人一区二区在线观看 | 91污在线| 99精品国产一区二区 | 97精品视频在线播放 | 国产欧美精品一区二区三区 | 亚洲色图激情文学 | 在线精品视频免费观看 | 麻豆精品视频在线观看免费 | 色噜噜日韩精品一区二区三区视频 | 最近高清中文字幕 | 免费看成人片 | 婷婷久操 | 91女神的呻吟细腰翘臀美女 | 国产一级视频在线观看 | 亚洲精品影视在线观看 | 成人午夜性影院 | 久草在线免费电影 | 9在线观看免费高清完整版在线观看明 | 国产精品2019 | 免费韩国av| 九九在线国产视频 | 天天射天天舔天天干 | 色婷婷视频在线 | 日韩aa视频 | 色婷婷激情 | 中文日韩在线视频 | 91九色丨porny丨丰满6 | 亚洲第五色综合网 | 色婷婷狠狠操 | 麻豆视频免费在线观看 | 中文字幕a∨在线乱码免费看 | 免费观看www7722午夜电影 | 在线看中文字幕 | 91麻豆精品国产91久久久无需广告 | 国产视频在线播放 | 国产精品美女久久久久久久 | av线上免费看 | 天天操狠狠操夜夜操 | 久久久久久久久久久免费视频 | a级片久久久 | 久久a免费视频 | 欧美日韩大片在线观看 | 亚洲欧美视频在线播放 | 伊人开心激情 | 最近中文字幕在线中文高清版 | 亚洲精品视频在线观看免费视频 | 欧美精品一级视频 | 国产亚洲精品久久久久久 | 国产精品婷婷 | 亚洲精品视频免费 | 91久草视频| 精品国产资源 | 亚洲在线观看av | 色一级片 | 国产1区在线观看 | 欧美一区二区三区在线 | 免费成人在线视频网站 |