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

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

?? q931.c

?? This a software PBX driver
?? C
?? 第 1 頁 / 共 5 頁
字號:
/* * libpri: An implementation of Primary Rate ISDN * * Written by Mark Spencer <markster@linux-support.net> * * Copyright (C) 2001, Linux Support Services, Inc. * All Rights Reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. *  * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. *  * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  * */ #include "libpri.h"#include "pri_internal.h"#include "pri_q921.h"#include "pri_q931.h"#include <unistd.h>#include <stdlib.h>#include <string.h>#include <stdio.h>#define MAX_MAND_IES 10struct msgtype {	int msgnum;	unsigned char *name;	int mandies[MAX_MAND_IES];};struct msgtype msgs[] = {	/* Call establishment messages */	{ Q931_ALERTING, "ALERTING" },	{ Q931_CALL_PROCEEDING, "CALL PROCEEDING" },	{ Q931_CONNECT, "CONNECT" },	{ Q931_CONNECT_ACKNOWLEDGE, "CONNECT ACKNOWLEDGE" },	{ Q931_PROGRESS, "PROGRESS", { Q931_PROGRESS_INDICATOR } },	{ Q931_SETUP, "SETUP", { Q931_BEARER_CAPABILITY, Q931_CHANNEL_IDENT } },	{ Q931_SETUP_ACKNOWLEDGE, "SETUP ACKNOWLEDGE" },		/* Call disestablishment messages */	{ Q931_DISCONNECT, "DISCONNECT", { Q931_CAUSE } },	{ Q931_RELEASE, "RELEASE" },	{ Q931_RELEASE_COMPLETE, "RELEASE COMPLETE" },	{ Q931_RESTART, "RESTART", { Q931_RESTART_INDICATOR } },	{ Q931_RESTART_ACKNOWLEDGE, "RESTART ACKNOWLEDGE", { Q931_RESTART_INDICATOR } },	/* Miscellaneous */	{ Q931_STATUS, "STATUS", { Q931_CAUSE, Q931_CALL_STATE } },	{ Q931_STATUS_ENQUIRY, "STATUS ENQUIRY" },	{ Q931_USER_INFORMATION, "USER_INFORMATION" },	{ Q931_SEGMENT, "SEGMENT" },	{ Q931_CONGESTION_CONTROL, "CONGESTION CONTROL" },	{ Q931_INFORMATION, "INFORMATION" },	{ Q931_FACILITY, "FACILITY" },	{ Q931_NOTIFY, "NOTIFY", { Q931_IE_NOTIFY_IND } },	/* Call Management */	{ Q931_HOLD, "HOLD" },	{ Q931_HOLD_ACKNOWLEDGE, "HOLD ACKNOWLEDGE" },	{ Q931_HOLD_REJECT, "HOLD REJECT" },	{ Q931_RETRIEVE, "RETRIEVE" },	{ Q931_RETRIEVE_ACKNOWLEDGE, "RETRIEVE ACKNOWLEDGE" },	{ Q931_RETRIEVE_REJECT, "RETRIEVE REJECT" },	{ Q931_RESUME, "RESUME" },	{ Q931_RESUME_ACKNOWLEDGE, "RESUME ACKNOWLEDGE", { Q931_CHANNEL_IDENT } },	{ Q931_RESUME_REJECT, "RESUME REJECT", { Q931_CAUSE } },	{ Q931_SUSPEND, "SUSPEND" },	{ Q931_SUSPEND_ACKNOWLEDGE, "SUSPEND ACKNOWLEDGE" },	{ Q931_SUSPEND_REJECT, "SUSPEND REJECT" },	/* Maintenance */	{ NATIONAL_SERVICE, "SERVICE" },	{ NATIONAL_SERVICE_ACKNOWLEDGE, "SERVICE ACKNOWLEDGE" },};struct msgtype causes[] = {	{ PRI_CAUSE_UNALLOCATED, "Unallocated (unassigned) number" },	{ PRI_CAUSE_NO_ROUTE_TRANSIT_NET, "No route to specified transmit network" },	{ PRI_CAUSE_NO_ROUTE_DESTINATION, "No route to destination" },	{ PRI_CAUSE_CHANNEL_UNACCEPTABLE, "Channel unacceptable" },	{ PRI_CAUSE_CALL_AWARDED_DELIVERED, "Call awarded and being delivered in an established channel" },	{ PRI_CAUSE_NORMAL_CLEARING, "Normal Clearing" },	{ PRI_CAUSE_USER_BUSY, "User busy" },	{ PRI_CAUSE_NO_USER_RESPONSE, "No user responding" },	{ PRI_CAUSE_NO_ANSWER, "User alerting, no answer" },	{ PRI_CAUSE_CALL_REJECTED, "Call Rejected" },	{ PRI_CAUSE_NUMBER_CHANGED, "Number changed" },	{ PRI_CAUSE_DESTINATION_OUT_OF_ORDER, "Destination out of order" },	{ PRI_CAUSE_INVALID_NUMBER_FORMAT, "Invalid number format" },	{ PRI_CAUSE_FACILITY_REJECTED, "Facility rejected" },	{ PRI_CAUSE_RESPONSE_TO_STATUS_ENQUIRY, "Response to STATus ENQuiry" },	{ PRI_CAUSE_NORMAL_UNSPECIFIED, "Normal, unspecified" },	{ PRI_CAUSE_NORMAL_CIRCUIT_CONGESTION, "Circuit/channel congestion" },	{ PRI_CAUSE_NETWORK_OUT_OF_ORDER, "Network out of order" },	{ PRI_CAUSE_NORMAL_TEMPORARY_FAILURE, "Temporary failure" },	{ PRI_CAUSE_SWITCH_CONGESTION, "Switching equipment congestion" },	{ PRI_CAUSE_ACCESS_INFO_DISCARDED, "Access information discarded" },	{ PRI_CAUSE_REQUESTED_CHAN_UNAVAIL, "Requested channel not available" },	{ PRI_CAUSE_PRE_EMPTED, "Pre-empted" },	{ PRI_CAUSE_FACILITY_NOT_SUBSCRIBED, "Facility not subscribed" },	{ PRI_CAUSE_OUTGOING_CALL_BARRED, "Outgoing call barred" },	{ PRI_CAUSE_INCOMING_CALL_BARRED, "Incoming call barred" },	{ PRI_CAUSE_BEARERCAPABILITY_NOTAUTH, "Bearer capability not authorized" },	{ PRI_CAUSE_BEARERCAPABILITY_NOTAVAIL, "Bearer capability not available" },	{ PRI_CAUSE_BEARERCAPABILITY_NOTIMPL, "Bearer capability not implemented" },	{ PRI_CAUSE_CHAN_NOT_IMPLEMENTED, "Channel not implemented" },	{ PRI_CAUSE_FACILITY_NOT_IMPLEMENTED, "Facility not implemented" },	{ PRI_CAUSE_INVALID_CALL_REFERENCE, "Invalid call reference value" },	{ PRI_CAUSE_INCOMPATIBLE_DESTINATION, "Incompatible destination" },	{ PRI_CAUSE_INVALID_MSG_UNSPECIFIED, "Invalid message unspecified" },	{ PRI_CAUSE_MANDATORY_IE_MISSING, "Mandatory information element is missing" },	{ PRI_CAUSE_MESSAGE_TYPE_NONEXIST, "Message type nonexist." },	{ PRI_CAUSE_WRONG_MESSAGE, "Wrong message" },	{ PRI_CAUSE_IE_NONEXIST, "Info. element nonexist or not implemented" },	{ PRI_CAUSE_INVALID_IE_CONTENTS, "Invalid information element contents" },	{ PRI_CAUSE_WRONG_CALL_STATE, "Message not compatible with call state" },	{ PRI_CAUSE_RECOVERY_ON_TIMER_EXPIRE, "Recover on timer expiry" },	{ PRI_CAUSE_MANDATORY_IE_LENGTH_ERROR, "Mandatory IE length error" },	{ PRI_CAUSE_PROTOCOL_ERROR, "Protocol error, unspecified" },	{ PRI_CAUSE_INTERWORKING, "Interworking, unspecified" },};struct msgtype facilities[] = {       { PRI_NSF_SID_PREFERRED, "CPN (SID) preferred" },       { PRI_NSF_ANI_PREFERRED, "BN (ANI) preferred" },       { PRI_NSF_SID_ONLY, "CPN (SID) only" },       { PRI_NSF_ANI_ONLY, "BN (ANI) only" },       { PRI_NSF_CALL_ASSOC_TSC, "Call Associated TSC" },       { PRI_NSF_NOTIF_CATSC_CLEARING, "Notification of CATSC Clearing or Resource Unavailable" },       { PRI_NSF_OPERATOR, "Operator" },       { PRI_NSF_PCCO, "Pre-subscribed Common Carrier Operator (PCCO)" },       { PRI_NSF_SDN, "SDN (including GSDN)" },       { PRI_NSF_TOLL_FREE_MEGACOM, "Toll Free MEGACOM" },       { PRI_NSF_MEGACOM, "MEGACOM" },       { PRI_NSF_ACCUNET, "ACCUNET Switched Digital Service" },       { PRI_NSF_LONG_DISTANCE_SERVICE, "Long Distance Service" },       { PRI_NSF_INTERNATIONAL_TOLL_FREE, "International Toll Free Service" },       { PRI_NSF_ATT_MULTIQUEST, "AT&T MultiQuest" },       { PRI_NSF_CALL_REDIRECTION_SERVICE, "Call Redirection Service" }};#define FLAG_PREFERRED 2#define FLAG_EXCLUSIVE 4#define RESET_INDICATOR_CHANNEL	0#define RESET_INDICATOR_DS1		6#define RESET_INDICATOR_PRI		7#define TRANS_MODE_64_CIRCUIT	0x10#define TRANS_MODE_2x64_CIRCUIT	0x11#define TRANS_MODE_384_CIRCUIT	0x13#define TRANS_MODE_1536_CIRCUIT	0x15#define TRANS_MODE_1920_CIRCUIT	0x17#define TRANS_MODE_MULTIRATE	0x18#define TRANS_MODE_PACKET		0x40#define RATE_ADAPT_56K			0x0f#define LAYER_2_LAPB			0x46#define LAYER_3_X25				0x66/* The 4ESS uses a different audio field */#define PRI_TRANS_CAP_AUDIO_4ESS	0x08#define Q931_PROG_CALL_NOT_E2E_ISDN						0x01#define Q931_PROG_CALLED_NOT_ISDN						0x02#define Q931_PROG_CALLER_NOT_ISDN						0x03#define Q931_PROG_INBAND_AVAILABLE						0x08#define Q931_PROG_DELAY_AT_INTERF						0x0a#define Q931_PROG_INTERWORKING_WITH_PUBLIC				0x10#define Q931_PROG_INTERWORKING_NO_RELEASE				0x11#define Q931_PROG_INTERWORKING_NO_RELEASE_PRE_ANSWER	0x12#define Q931_PROG_INTERWORKING_NO_RELEASE_POST_ANSWER	0x13#define CODE_CCITT					0x0#define CODE_INTERNATIONAL 			0x1#define CODE_NATIONAL 				0x2#define CODE_NETWORK_SPECIFIC		0x3#define LOC_USER					0x0#define LOC_PRIV_NET_LOCAL_USER		0x1#define LOC_PUB_NET_LOCAL_USER		0x2#define LOC_TRANSIT_NET				0x3#define LOC_PUB_NET_REMOTE_USER		0x4#define LOC_PRIV_NET_REMOTE_USER	0x5#define LOC_INTERNATIONAL_NETWORK	0x7#define LOC_NETWORK_BEYOND_INTERWORKING	0xa#define T_308			4000#define T_305			30000#define T_313			4000struct q931_call {	struct pri *pri;	/* PRI */	int cr;		/* Call Reference */	int forceinvert;	/* Force inversion of call number even if 0 */	q931_call *next;	/* Slotmap specified (bitmap of channels 31/24-1) (Channel Identifier IE) (-1 means not specified) */	int slotmap;	/* An explicit channel (Channel Identifier IE) (-1 means not specified) */	int channelno;	/* An explicit DS1 (-1 means not specified) */	int ds1no;	/* Channel flags (0 means none retrieved) */	int chanflags;		int alive;			/* Whether or not the call is alive */	int acked;			/* Whether setup has been acked or not */	int sendhangupack;		/* Whether or not to send a hangup ack */	int proc;			/* Whether we've sent a call proceeding / alerting */		int ri;			/* Restart Indicator (Restart Indicator IE) */	/* Bearer Capability */	int transcapability;	int transmoderate;	int transmultiple;	int userl1;	int userl2;	int userl3;	int rateadaption;		int sentchannel;	int progcode;			/* Progress coding */	int progloc;			/* Progress Location */		int progress;			/* Progress indicator */		int notify;			/* Notification */		int causecode;			/* Cause Coding */	int causeloc;			/* Cause Location */	int cause;				/* Cause of clearing */		int peercallstate;			/* Call state of peer as reported */	int ourcallstate;		/* Our call state */	int sugcallstate;		/* Status call state */		int callerplan;	int callerpres;			/* Caller presentation */	char callernum[256];	/* Caller */	char callername[256];	int ani2;               /* ANI II */		int  calledplan;	int nonisdn;	char callednum[256];	/* Called Number */	int complete;			/* no more digits coming */	int newcall;		/* if the received message has a new call reference value */	int retranstimer;		/* Timer for retransmitting DISC */	int t308_timedout;		/* Whether t308 timed out once */	int redirectingplan;	int redirectingpres;	int redirectingreason;	      	char redirectingnum[256];        int useruserprotocoldisc;	char useruserinfo[256];	char callingsubaddr[256];	/* Calling parties sub address */};#define FUNC_DUMP(name) void ((name))(int full_ie, q931_ie *ie, int len, char prefix)#define FUNC_RECV(name) int ((name))(int full_ie, struct pri *pri, q931_call *call, int msgtype, q931_ie *ie, int len)#define FUNC_SEND(name) int ((name))(int full_ie, struct pri *pri, q931_call *call, int msgtype, q931_ie *ie, int len)struct ie {	int ie;	char *name;	/* Dump an IE for debugging (preceed all lines by prefix) */	FUNC_DUMP(*dump);	/* Handle IE  returns 0 on success, -1 on failure */	FUNC_RECV(*receive);	/* Add IE to a message, return the # of bytes added or -1 on failure */	FUNC_SEND(*transmit);};static char *code2str(int code, struct msgtype *codes, int max){	int x;	for (x=0;x<max; x++) 		if (codes[x].msgnum == code)			return codes[x].name;	return "Unknown";}static void call_init(struct q931_call *c){	memset(c, 0, sizeof(*c));	c->alive = 0;	c->sendhangupack = 0;	c->forceinvert = -1;		c->cr = -1;	c->slotmap = -1;	c->channelno = -1;	c->ds1no = 0;	c->chanflags = 0;	c->next = NULL;	c->sentchannel = 0;	c->newcall = 1;	c->ourcallstate = Q931_CALL_STATE_NULL;	c->peercallstate = Q931_CALL_STATE_NULL;}static char *binary(int b, int len) {	static char res[33];	int x;	memset(res, 0, sizeof(res));	if (len > 32)		len = 32;	for (x=1;x<=len;x++)		res[x-1] = b & (1 << (len - x)) ? '1' : '0';	return res;}static FUNC_RECV(receive_channel_id){		int x;	int pos=0;#ifdef NO_BRI_SUPPORT 	if (!ie->data[0] & 0x20) {		pri_error("!! Not PRI type!?\n"); 		return -1; 	}#endif#ifndef NOAUTO_CHANNEL_SELECTION_SUPPORT	if ((ie->data[0] & 3) != 1) {		pri_error("!! Unexpected Channel selection %d\n", ie->data[0] & 3);		return -1;	}#endif	if (ie->data[0] & 0x08)		call->chanflags = FLAG_EXCLUSIVE;	else		call->chanflags = FLAG_PREFERRED;	pos++;	if (ie->data[0] & 0x40) {		/* DS1 specified -- stop here */		call->ds1no = ie->data[1] & 0x7f;		pos++;	} 	if (pos+2 < len) {		/* More coming */		if ((ie->data[pos] & 0x0f) != 3) {			pri_error("!! Unexpected Channel Type %d\n", ie->data[1] & 0x0f);			return -1;		}		if ((ie->data[pos] & 0x60) != 0) {			pri_error("!! Invalid CCITT coding %d\n", (ie->data[1] & 0x60) >> 5);			return -1;		}		if (ie->data[pos] & 0x10) {			/* Expect Slot Map */			call->slotmap = 0;			pos++;			for (x=0;x<3;x++) {				call->slotmap <<= 8;				call->slotmap |= ie->data[x + pos];			}			return 0;		} else {			pos++;			/* Only expect a particular channel */			call->channelno = ie->data[pos] & 0x7f;			return 0;		}	} else		return 0;	return -1;}static FUNC_SEND(transmit_channel_id){	int pos=0;	/* Start with standard stuff */	if (pri->switchtype == PRI_SWITCH_GR303_TMC)		ie->data[pos] = 0x69;	else		ie->data[pos] = 0xa1;	/* Add exclusive flag if necessary */	if (call->chanflags & FLAG_EXCLUSIVE)		ie->data[pos] |= 0x08;	else if (!(call->chanflags & FLAG_PREFERRED)) {		/* Don't need this IE */		return 0;	}	if (call->ds1no > 0) {		/* Note that we are specifying the identifier */		ie->data[pos++] |= 0x40;		/* We need to use the Channel Identifier Present thingy.  Just specify it and we're done */		ie->data[pos++] = 0x80 | call->ds1no;	} else		pos++;	if ((call->channelno > -1) || (call->slotmap != -1)) {		/* We'll have the octet 8.2 and 8.3's present */		ie->data[pos++] = 0x83;		if (call->channelno > -1) {			/* Channel number specified */			ie->data[pos++] = 0x80 | call->channelno;			return pos + 2;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美一区二区视频| 一本色道久久加勒比精品| 538在线一区二区精品国产| 亚洲一二三区不卡| 91精品国产欧美一区二区成人| 视频一区二区欧美| 日韩午夜中文字幕| 国产激情视频一区二区三区欧美| 国产欧美日韩精品在线| 99视频在线精品| 一区二区三区欧美| 91精品国产色综合久久不卡电影 | 91福利区一区二区三区| 亚洲伊人伊色伊影伊综合网| 4438x成人网最大色成网站| 激情五月婷婷综合网| 日韩伦理av电影| 日韩午夜电影av| 粉嫩高潮美女一区二区三区| 亚洲精品乱码久久久久久久久 | 麻豆一区二区在线| 中文一区二区在线观看| 欧美唯美清纯偷拍| 激情综合色丁香一区二区| 亚洲欧洲成人av每日更新| 欧美日韩国产高清一区| 国产大陆a不卡| 午夜免费久久看| 国产欧美一区二区精品秋霞影院 | 中文一区在线播放| 欧美日韩不卡一区二区| 国产91精品久久久久久久网曝门| 一区二区三区日本| 久久婷婷综合激情| 欧美日韩亚洲国产综合| 国产一区二区精品久久| 亚洲国产cao| 国产精品国产馆在线真实露脸| 91精品国产综合久久久蜜臀粉嫩| 成人sese在线| 玖玖九九国产精品| 一区二区三区久久久| 久久综合九色综合欧美98| 欧美日韩一区二区三区高清| 国产精品亚洲午夜一区二区三区| 亚洲一区二区三区四区五区中文| 国产欧美日韩另类视频免费观看| 91精品国产综合久久久蜜臀图片| 91在线高清观看| 国产一区二区不卡在线| 午夜精品福利视频网站| 亚洲日本一区二区三区| 亚洲精品一区二区三区四区高清| 欧美日韩国产一二三| 91麻豆国产在线观看| 国产成人精品一区二| 人人爽香蕉精品| 亚洲午夜私人影院| 亚洲狠狠丁香婷婷综合久久久| 国产欧美精品一区二区三区四区| 日韩欧美成人激情| 91 com成人网| 欧美亚洲精品一区| 色婷婷久久综合| 99re免费视频精品全部| 大白屁股一区二区视频| 国产ts人妖一区二区| 精品在线播放免费| 久久av老司机精品网站导航| 日日噜噜夜夜狠狠视频欧美人| 亚洲一区二区三区四区不卡| 一区二区三区四区激情| 夜夜夜精品看看| 亚洲一区av在线| 亚洲国产视频一区二区| 亚洲一区二区三区四区在线观看 | 蜜臀av性久久久久蜜臀aⅴ| 日韩电影免费在线观看网站| 亚洲成人福利片| 舔着乳尖日韩一区| 奇米影视7777精品一区二区| 日韩成人精品视频| 亚洲不卡av一区二区三区| 天天色图综合网| 麻豆国产一区二区| 久久97超碰国产精品超碰| 美女任你摸久久| 国产精品 欧美精品| 成人av在线一区二区三区| www.亚洲免费av| 94-欧美-setu| 欧美丝袜丝交足nylons图片| 3d成人动漫网站| 亚洲精品一区二区三区99| 久久蜜桃av一区精品变态类天堂 | 26uuu国产日韩综合| 日本一区二区三区在线观看| 亚洲欧洲无码一区二区三区| 亚洲日本韩国一区| 亚洲va天堂va国产va久| 麻豆国产欧美一区二区三区| 成人亚洲一区二区一| 欧美在线观看一二区| 日韩一区二区三区视频在线 | 中文字幕一区二区5566日韩| 亚洲综合网站在线观看| 美女www一区二区| 不卡一卡二卡三乱码免费网站| 在线观看视频一区| 欧美大片免费久久精品三p| 国产精品视频麻豆| 亚洲国产成人高清精品| 国产激情视频一区二区三区欧美 | 精品91自产拍在线观看一区| 国产精品拍天天在线| 日韩影院免费视频| 成人伦理片在线| 欧美一区二区三区视频免费播放| 国产午夜亚洲精品午夜鲁丝片| 亚洲综合一区二区精品导航| 国产精品996| 欧美另类变人与禽xxxxx| 国产片一区二区| 免费成人av资源网| 91首页免费视频| 精品国产第一区二区三区观看体验| 中文字幕在线观看一区二区| 久久成人免费电影| 色94色欧美sute亚洲13| 欧美精品一区二区三区蜜臀| 亚洲电影你懂得| av一区二区不卡| 久久久一区二区三区| 日本中文一区二区三区| 日本道精品一区二区三区| 久久久精品一品道一区| 天堂av在线一区| 91久久线看在观草草青青| 国产三级三级三级精品8ⅰ区| 日韩黄色在线观看| 色94色欧美sute亚洲13| 国产精品视频一二三| 国产一区二区三区免费看| 欧美一级淫片007| 亚洲一二三四久久| 91丝袜美女网| 国产精品国产馆在线真实露脸| 久久精品国产一区二区三| 欧美亚洲综合色| 国产精品久久久久久久久免费相片| 狠狠色丁香婷婷综合久久片| 欧美一级黄色录像| 天堂资源在线中文精品| 欧美午夜一区二区三区免费大片| 亚洲人亚洲人成电影网站色| 成人中文字幕电影| 国产亚洲制服色| 国产综合成人久久大片91| 亚洲第一会所有码转帖| 91视频一区二区| 亚洲欧美偷拍卡通变态| 97精品久久久午夜一区二区三区 | 午夜精品福利在线| 欧美日韩精品一区视频| 亚洲亚洲精品在线观看| 欧美亚洲一区二区三区四区| 一区二区三区四区在线免费观看| 91日韩在线专区| 亚洲国产美女搞黄色| 欧美在线观看你懂的| 亚洲福利视频一区二区| 欧美丰满美乳xxx高潮www| 日韩av一区二| 精品国免费一区二区三区| 国产一区二区三区观看| 久久久久9999亚洲精品| a在线欧美一区| 一区二区三区精品久久久| 欧美日本高清视频在线观看| 婷婷中文字幕综合| 日韩精品中文字幕一区二区三区| 韩国精品主播一区二区在线观看 | 欧美国产亚洲另类动漫| 成人性生交大合| 一区二区三区中文字幕电影| 欧美日韩免费视频| 日本不卡视频在线观看| 欧美精品一区二区蜜臀亚洲| 成人一级视频在线观看| 一区二区欧美精品| 在线成人av影院| 国产黑丝在线一区二区三区| 国产精品久久久久久久久久久免费看| 99久久精品免费| 日韩二区三区在线观看| 国产蜜臀97一区二区三区| 欧美在线观看18| 国产精品自拍毛片| 亚洲美女视频在线观看| 欧美一卡在线观看|