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

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

?? core.c

?? 優(yōu)龍2410linux2.6.8內(nèi)核源代碼
?? C
?? 第 1 頁 / 共 3 頁
字號(hào):
	struct sk_buff *skb;	BT_DBG("dlc %p dlci %d", d, d->dlci);	skb = alloc_skb(sizeof(*cmd), GFP_KERNEL);	if (!skb)		return -ENOMEM;	cmd = (void *) __skb_put(skb, sizeof(*cmd));	cmd->addr = d->addr;	cmd->ctrl = __ctrl(RFCOMM_DISC, 1);	cmd->len  = __len8(0);	cmd->fcs  = __fcs2((u8 *) cmd);	skb_queue_tail(&d->tx_queue, skb);	rfcomm_schedule(RFCOMM_SCHED_TX);	return 0;}static int rfcomm_send_dm(struct rfcomm_session *s, u8 dlci){	struct rfcomm_cmd cmd;	BT_DBG("%p dlci %d", s, dlci);	cmd.addr = __addr(!s->initiator, dlci);	cmd.ctrl = __ctrl(RFCOMM_DM, 1);	cmd.len  = __len8(0);	cmd.fcs  = __fcs2((u8 *) &cmd);	return rfcomm_send_frame(s, (void *) &cmd, sizeof(cmd));}static int rfcomm_send_nsc(struct rfcomm_session *s, int cr, u8 type){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d type %d", s, cr, type);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc) + 1);	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_NSC);	mcc->len  = __len8(1);	/* Type that we didn't like */	*ptr = __mcc_type(cr, type); ptr++;	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_pn(struct rfcomm_session *s, int cr, struct rfcomm_dlc *d){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	struct rfcomm_pn  *pn;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d dlci %d mtu %d", s, cr, d->dlci, d->mtu);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc) + sizeof(*pn));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_PN);	mcc->len  = __len8(sizeof(*pn));	pn = (void *) ptr; ptr += sizeof(*pn);	pn->dlci        = d->dlci;	pn->priority    = d->priority;	pn->ack_timer   = 0;	pn->max_retrans = 0;	if (s->cfc) {		pn->flow_ctrl = cr ? 0xf0 : 0xe0;		pn->credits = RFCOMM_DEFAULT_CREDITS;	} else {		pn->flow_ctrl = 0;		pn->credits   = 0;	}	pn->mtu = htobs(d->mtu);	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_rpn(struct rfcomm_session *s, int cr, u8 dlci,			   u8 bit_rate, u8 data_bits, u8 stop_bits,			   u8 parity, u8 flow_ctrl_settings, 			   u8 xon_char, u8 xoff_char, u16 param_mask){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	struct rfcomm_rpn *rpn;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d dlci %d bit_r 0x%x data_b 0x%x stop_b 0x%x parity 0x%x"	       "flwc_s 0x%x xon_c 0x%x xoff_c 0x%x p_mask 0x%x", 			s, cr, dlci, bit_rate, data_bits, stop_bits, parity, 			flow_ctrl_settings, xon_char, xoff_char, param_mask);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc) + sizeof(*rpn));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_RPN);	mcc->len  = __len8(sizeof(*rpn));	rpn = (void *) ptr; ptr += sizeof(*rpn);	rpn->dlci          = __addr(1, dlci);	rpn->bit_rate      = bit_rate;	rpn->line_settings = __rpn_line_settings(data_bits, stop_bits, parity);	rpn->flow_ctrl     = flow_ctrl_settings;	rpn->xon_char      = xon_char;	rpn->xoff_char     = xoff_char;	rpn->param_mask    = param_mask;	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_rls(struct rfcomm_session *s, int cr, u8 dlci, u8 status){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	struct rfcomm_rls *rls;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d status 0x%x", s, cr, status);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc) + sizeof(*rls));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_RLS);	mcc->len  = __len8(sizeof(*rls));	rls = (void *) ptr; ptr += sizeof(*rls);	rls->dlci   = __addr(1, dlci);	rls->status = status;	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_msc(struct rfcomm_session *s, int cr, u8 dlci, u8 v24_sig){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	struct rfcomm_msc *msc;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d v24 0x%x", s, cr, v24_sig);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc) + sizeof(*msc));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_MSC);	mcc->len  = __len8(sizeof(*msc));	msc = (void *) ptr; ptr += sizeof(*msc);	msc->dlci    = __addr(1, dlci);	msc->v24_sig = v24_sig | 0x01;	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_fcoff(struct rfcomm_session *s, int cr){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d", s, cr);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_FCOFF);	mcc->len  = __len8(0);	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_fcon(struct rfcomm_session *s, int cr){	struct rfcomm_hdr *hdr;	struct rfcomm_mcc *mcc;	u8 buf[16], *ptr = buf;	BT_DBG("%p cr %d", s, cr);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = __addr(s->initiator, 0);	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	hdr->len  = __len8(sizeof(*mcc));	mcc = (void *) ptr; ptr += sizeof(*mcc);	mcc->type = __mcc_type(cr, RFCOMM_FCON);	mcc->len  = __len8(0);	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static int rfcomm_send_test(struct rfcomm_session *s, int cr, u8 *pattern, int len){	struct socket *sock = s->sock;	struct kvec iv[3];	struct msghdr msg;	unsigned char hdr[5], crc[1];	if (len > 125)		return -EINVAL;	BT_DBG("%p cr %d", s, cr);	hdr[0] = __addr(s->initiator, 0);	hdr[1] = __ctrl(RFCOMM_UIH, 0);	hdr[2] = 0x01 | ((len + 2) << 1);	hdr[3] = 0x01 | ((cr & 0x01) << 1) | (RFCOMM_TEST << 2);	hdr[4] = 0x01 | (len << 1);	crc[0] = __fcs(hdr);	iv[0].iov_base = hdr;	iv[0].iov_len  = 5;	iv[1].iov_base = pattern;	iv[1].iov_len  = len;	iv[2].iov_base = crc;	iv[2].iov_len  = 1;	memset(&msg, 0, sizeof(msg));	return kernel_sendmsg(sock, &msg, iv, 3, 6 + len);}static int rfcomm_send_credits(struct rfcomm_session *s, u8 addr, u8 credits){	struct rfcomm_hdr *hdr;	u8 buf[16], *ptr = buf;	BT_DBG("%p addr %d credits %d", s, addr, credits);	hdr = (void *) ptr; ptr += sizeof(*hdr);	hdr->addr = addr;	hdr->ctrl = __ctrl(RFCOMM_UIH, 1);	hdr->len  = __len8(0);	*ptr = credits; ptr++;	*ptr = __fcs(buf); ptr++;	return rfcomm_send_frame(s, buf, ptr - buf);}static void rfcomm_make_uih(struct sk_buff *skb, u8 addr){	struct rfcomm_hdr *hdr;	int len = skb->len;	u8 *crc;	if (len > 127) {		hdr = (void *) skb_push(skb, 4);		put_unaligned(htobs(__len16(len)), (u16 *) &hdr->len);	} else {		hdr = (void *) skb_push(skb, 3);		hdr->len = __len8(len);	}	hdr->addr = addr;	hdr->ctrl = __ctrl(RFCOMM_UIH, 0);	crc = skb_put(skb, 1);	*crc = __fcs((void *) hdr);}/* ---- RFCOMM frame reception ---- */static int rfcomm_recv_ua(struct rfcomm_session *s, u8 dlci){	BT_DBG("session %p state %ld dlci %d", s, s->state, dlci);	if (dlci) {		/* Data channel */		struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci);		if (!d) {			rfcomm_send_dm(s, dlci);			return 0;		}		switch (d->state) {		case BT_CONNECT:			rfcomm_dlc_clear_timer(d);			rfcomm_dlc_lock(d);			d->state = BT_CONNECTED;			d->state_change(d, 0);			rfcomm_dlc_unlock(d);			rfcomm_send_msc(s, 1, dlci, d->v24_sig);			break;		case BT_DISCONN:			d->state = BT_CLOSED;			__rfcomm_dlc_close(d, 0);			break;		}	} else {		/* Control channel */		switch (s->state) {		case BT_CONNECT:			s->state = BT_CONNECTED;			rfcomm_process_connect(s);			break;		}	}	return 0;}static int rfcomm_recv_dm(struct rfcomm_session *s, u8 dlci){	int err = 0;	BT_DBG("session %p state %ld dlci %d", s, s->state, dlci);	if (dlci) {		/* Data DLC */		struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci);		if (d) {			if (d->state == BT_CONNECT || d->state == BT_CONFIG)				err = ECONNREFUSED;			else				err = ECONNRESET;			d->state = BT_CLOSED;			__rfcomm_dlc_close(d, err);		}	} else {		if (s->state == BT_CONNECT)			err = ECONNREFUSED;		else			err = ECONNRESET;		s->state = BT_CLOSED;		rfcomm_session_close(s, err);	}	return 0;}static int rfcomm_recv_disc(struct rfcomm_session *s, u8 dlci){	int err = 0;	BT_DBG("session %p state %ld dlci %d", s, s->state, dlci);	if (dlci) {		struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci);		if (d) {			rfcomm_send_ua(s, dlci);			if (d->state == BT_CONNECT || d->state == BT_CONFIG)				err = ECONNREFUSED;			else				err = ECONNRESET;			d->state = BT_CLOSED;			__rfcomm_dlc_close(d, err);		} else 			rfcomm_send_dm(s, dlci);				} else {		rfcomm_send_ua(s, 0);		if (s->state == BT_CONNECT)			err = ECONNREFUSED;		else			err = ECONNRESET;		s->state = BT_CLOSED;		rfcomm_session_close(s, err);	}	return 0;}static int rfcomm_recv_sabm(struct rfcomm_session *s, u8 dlci){	struct rfcomm_dlc *d;	u8 channel;	BT_DBG("session %p state %ld dlci %d", s, s->state, dlci);	if (!dlci) {		rfcomm_send_ua(s, 0);		if (s->state == BT_OPEN) {			s->state = BT_CONNECTED;			rfcomm_process_connect(s);		}		return 0;	}	/* Check if DLC exists */	d = rfcomm_dlc_get(s, dlci);	if (d) {		if (d->state == BT_OPEN) {			/* DLC was previously opened by PN request */			rfcomm_send_ua(s, dlci);			rfcomm_dlc_lock(d);			d->state = BT_CONNECTED;			d->state_change(d, 0);			rfcomm_dlc_unlock(d);			rfcomm_send_msc(s, 1, dlci, d->v24_sig);		}		return 0;	}	/* Notify socket layer about incoming connection */	channel = __srv_channel(dlci);	if (rfcomm_connect_ind(s, channel, &d)) {		d->dlci = dlci;		d->addr = __addr(s->initiator, dlci);		rfcomm_dlc_link(s, d);		rfcomm_send_ua(s, dlci);		rfcomm_dlc_lock(d);		d->state = BT_CONNECTED;		d->state_change(d, 0);		rfcomm_dlc_unlock(d);		rfcomm_send_msc(s, 1, dlci, d->v24_sig);	} else {		rfcomm_send_dm(s, dlci);	}	return 0;}static int rfcomm_apply_pn(struct rfcomm_dlc *d, int cr, struct rfcomm_pn *pn){	struct rfcomm_session *s = d->session;	BT_DBG("dlc %p state %ld dlci %d mtu %d fc 0x%x credits %d", 			d, d->state, d->dlci, pn->mtu, pn->flow_ctrl, pn->credits);	if (pn->flow_ctrl == 0xf0 || pn->flow_ctrl == 0xe0) {		d->cfc = s->cfc = RFCOMM_CFC_ENABLED;		d->tx_credits = pn->credits;	} else {		d->cfc = s->cfc = RFCOMM_CFC_DISABLED;		set_bit(RFCOMM_TX_THROTTLED, &d->flags);	}	d->priority = pn->priority;	d->mtu = s->mtu = btohs(pn->mtu);	return 0;}static int rfcomm_recv_pn(struct rfcomm_session *s, int cr, struct sk_buff *skb){	struct rfcomm_pn *pn = (void *) skb->data;	struct rfcomm_dlc *d;	u8 dlci = pn->dlci;	BT_DBG("session %p state %ld dlci %d", s, s->state, dlci);	if (!dlci)		return 0;	d = rfcomm_dlc_get(s, dlci);	if (d) {		if (cr) {			/* PN request */			rfcomm_apply_pn(d, cr, pn);			rfcomm_send_pn(s, 0, d);		} else {			/* PN response */			switch (d->state) {			case BT_CONFIG:				rfcomm_apply_pn(d, cr, pn);				d->state = BT_CONNECT;				rfcomm_send_sabm(s, d->dlci);				break;			}		}	} else {		u8 channel = __srv_channel(dlci);		if (!cr)			return 0;		/* PN request for non existing DLC.		 * Assume incoming connection. */		if (rfcomm_connect_ind(s, channel, &d)) {			d->dlci = dlci;			d->addr = __addr(s->initiator, dlci);			rfcomm_dlc_link(s, d);			rfcomm_apply_pn(d, cr, pn);			d->state = BT_OPEN;			rfcomm_send_pn(s, 0, d);		} else {			rfcomm_send_dm(s, dlci);		}	}	return 0;}static int rfcomm_recv_rpn(struct rfcomm_session *s, int cr, int len, struct sk_buff *skb){	struct rfcomm_rpn *rpn = (void *) skb->data;	u8 dlci = __get_dlci(rpn->dlci);	u8 bit_rate  = 0;	u8 data_bits = 0;	u8 stop_bits = 0;	u8 parity    = 0;	u8 flow_ctrl = 0;	u8 xon_char  = 0;	u8 xoff_char = 0;	u16 rpn_mask = RFCOMM_RPN_PM_ALL;		BT_DBG("dlci %d cr %d len 0x%x bitr 0x%x line 0x%x flow 0x%x xonc 0x%x xoffc 0x%x pm 0x%x", 	       dlci, cr, len, rpn->bit_rate, rpn->line_settings, rpn->flow_ctrl,	       rpn->xon_char, rpn->xoff_char, rpn->param_mask);		if (!cr) 		return 0;		if (len == 1) {		/* request: return default setting */		bit_rate  = RFCOMM_RPN_BR_115200;		data_bits = RFCOMM_RPN_DATA_8;		stop_bits = RFCOMM_RPN_STOP_1;		parity    = RFCOMM_RPN_PARITY_NONE;		flow_ctrl = RFCOMM_RPN_FLOW_NONE;		xon_char  = RFCOMM_RPN_XON_CHAR;		xoff_char = RFCOMM_RPN_XOFF_CHAR;		goto rpn_out;	}	/* check for sane values: ignore/accept bit_rate, 8 bits, 1 stop bit, no parity,	                          no flow control lines, normal XON/XOFF chars */	if (rpn->param_mask & RFCOMM_RPN_PM_BITRATE) {		bit_rate = rpn->bit_rate;		if (bit_rate != RFCOMM_RPN_BR_115200) {			BT_DBG("RPN bit rate mismatch 0x%x", bit_rate);			bit_rate = RFCOMM_RPN_BR_115200;			rpn_mask ^= RFCOMM_RPN_PM_BITRATE;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_DATA) {		data_bits = __get_rpn_data_bits(rpn->line_settings);		if (data_bits != RFCOMM_RPN_DATA_8) {			BT_DBG("RPN data bits mismatch 0x%x", data_bits);			data_bits = RFCOMM_RPN_DATA_8;			rpn_mask ^= RFCOMM_RPN_PM_DATA;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_STOP) {		stop_bits = __get_rpn_stop_bits(rpn->line_settings);		if (stop_bits != RFCOMM_RPN_STOP_1) {			BT_DBG("RPN stop bits mismatch 0x%x", stop_bits);			stop_bits = RFCOMM_RPN_STOP_1;			rpn_mask ^= RFCOMM_RPN_PM_STOP;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_PARITY) {		parity = __get_rpn_parity(rpn->line_settings);		if (parity != RFCOMM_RPN_PARITY_NONE) {			BT_DBG("RPN parity mismatch 0x%x", parity);			parity = RFCOMM_RPN_PARITY_NONE;			rpn_mask ^= RFCOMM_RPN_PM_PARITY;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_FLOW) {		flow_ctrl = rpn->flow_ctrl;		if (flow_ctrl != RFCOMM_RPN_FLOW_NONE) {			BT_DBG("RPN flow ctrl mismatch 0x%x", flow_ctrl);			flow_ctrl = RFCOMM_RPN_FLOW_NONE;			rpn_mask ^= RFCOMM_RPN_PM_FLOW;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_XON) {		xon_char = rpn->xon_char;		if (xon_char != RFCOMM_RPN_XON_CHAR) {			BT_DBG("RPN XON char mismatch 0x%x", xon_char);			xon_char = RFCOMM_RPN_XON_CHAR;			rpn_mask ^= RFCOMM_RPN_PM_XON;		}	}	if (rpn->param_mask & RFCOMM_RPN_PM_XOFF) {		xoff_char = rpn->xoff_char;		if (xoff_char != RFCOMM_RPN_XOFF_CHAR) {			BT_DBG("RPN XOFF char mismatch 0x%x", xoff_char);			xoff_char = RFCOMM_RPN_XOFF_CHAR;			rpn_mask ^= RFCOMM_RPN_PM_XOFF;		}	}rpn_out:	rfcomm_send_rpn(s, 0, dlci, 			bit_rate, data_bits, stop_bits, parity, flow_ctrl,			xon_char, xoff_char, rpn_mask);	return 0;}static int rfcomm_recv_rls(struct rfcomm_session *s, int cr, struct sk_buff *skb){	struct rfcomm_rls *rls = (void *) skb->data;	u8 dlci = __get_dlci(rls->dlci);	BT_DBG("dlci %d cr %d status 0x%x", dlci, cr, rls->status);		if (!cr)		return 0;	/* FIXME: We should probably do something with this	   information here. But for now it's sufficient just	   to reply -- Bluetooth 1.1 says it's mandatory to 	   recognise and respond to RLS */	rfcomm_send_rls(s, 0, dlci, rls->status);	return 0;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品美女久久久久久| 成人午夜伦理影院| 亚洲成a人片在线观看中文| 中文字幕中文字幕一区二区 | 欧美精品一区二区三区很污很色的| 欧美色手机在线观看| 欧洲中文字幕精品| 欧美综合亚洲图片综合区| 在线日韩国产精品| 欧美日韩不卡一区二区| 欧美一区二区成人6969| 日韩精品一区二区三区视频播放 | 91精品欧美福利在线观看| 欧美日韩国产经典色站一区二区三区 | caoporn国产一区二区| 99在线精品视频| 色婷婷久久99综合精品jk白丝| 日本乱人伦一区| 欧美日韩国产精品自在自线| 日韩一区二区三免费高清| 精品国产91洋老外米糕| 欧美极品少妇xxxxⅹ高跟鞋| 中文字幕一区二区三中文字幕| 亚洲欧美另类小说视频| 亚洲一区二区av在线| 日本欧美在线看| 国产一区二区免费在线| 99久久99久久综合| 欧美伦理电影网| 2021久久国产精品不只是精品| 国产精品伦理在线| 亚洲v精品v日韩v欧美v专区| 美女国产一区二区| 成人性生交大片免费看在线播放| 91蜜桃免费观看视频| 欧美精品久久一区二区三区| 久久久久久综合| 一区二区视频在线| 久久精品久久99精品久久| 成人免费视频caoporn| 欧美丝袜丝交足nylons图片| 日韩一区二区三区观看| 日韩一区在线播放| 青草av.久久免费一区| 菠萝蜜视频在线观看一区| 欧美猛男超大videosgay| 久久九九久精品国产免费直播| 尤物视频一区二区| 久久99国产精品久久| 色哟哟国产精品| 久久亚洲影视婷婷| 亚洲二区在线观看| 国产高清无密码一区二区三区| 欧美性猛片xxxx免费看久爱| 久久久久久久久岛国免费| 亚洲自拍偷拍九九九| 国产成人自拍网| 欧美精品v日韩精品v韩国精品v| 国产欧美一区二区在线| 日日夜夜精品视频免费| 99亚偷拍自图区亚洲| 精品国产一二三区| 亚洲成人综合视频| 国产91清纯白嫩初高中在线观看| 欧美一区二区三区在线| 亚洲欧美日韩在线不卡| 国产真实乱子伦精品视频| 欧美亚洲综合另类| 亚洲欧美在线观看| 国产精品一区二区无线| 欧美一级午夜免费电影| 一区二区三区不卡在线观看| 成人黄色在线看| 欧美大片一区二区| 亚洲成av人影院| 91亚洲永久精品| 国产视频911| 国产自产高清不卡| 欧美一区二区大片| 亚洲观看高清完整版在线观看| www.日韩av| 久久久久久麻豆| 狠狠色综合日日| 欧美成人国产一区二区| 日韩中文欧美在线| 欧美色视频在线| 亚洲国产精品天堂| 色婷婷亚洲综合| 亚洲人精品午夜| 91蝌蚪国产九色| 国产精品国产三级国产专播品爱网| 精品一区二区三区的国产在线播放| 欧美一区二区网站| 午夜精品福利在线| 欧美猛男男办公室激情| 亚洲777理论| 欧美日韩综合色| 一区二区三区四区激情 | 亚洲免费在线视频一区 二区| 福利一区福利二区| 欧美国产一区视频在线观看| 国产成人免费视频一区| 国产亚洲欧美一级| 国产精品一区二区三区99| 日本一区二区三区在线不卡| 国产99精品国产| 国产精品美女久久久久久久久久久| 成人听书哪个软件好| 国产清纯白嫩初高生在线观看91 | 欧美一区二区黄色| 麻豆91精品视频| 精品盗摄一区二区三区| 国产自产视频一区二区三区| 国产情人综合久久777777| 成人亚洲精品久久久久软件| 亚洲三级免费观看| 欧美最新大片在线看| 午夜久久久久久电影| 欧美一二三在线| 国内久久精品视频| 国产精品国产三级国产普通话三级| gogogo免费视频观看亚洲一| 亚洲精品高清视频在线观看| 欧美性一区二区| 免费日本视频一区| 久久久久国产精品厨房| 91一区二区三区在线观看| 午夜成人免费视频| 精品国产免费人成电影在线观看四季| 狠狠色丁香婷婷综合久久片| 中文字幕av一区二区三区| 在线观看网站黄不卡| 免费成人你懂的| 国产精品看片你懂得| 欧美亚洲日本国产| 久久99久久99小草精品免视看| 国产欧美日韩麻豆91| 欧美特级限制片免费在线观看| 美女www一区二区| 中文字幕一区二区三区色视频| 色哟哟一区二区| 日本91福利区| 国产精品网站导航| 在线播放91灌醉迷j高跟美女| 国产在线乱码一区二区三区| 18欧美乱大交hd1984| 7777精品伊人久久久大香线蕉的| 国产一区二区调教| 亚洲在线视频网站| 久久久99久久精品欧美| 欧美视频中文字幕| 国产老妇另类xxxxx| 亚洲制服丝袜一区| 国产午夜精品久久久久久免费视| 欧美网站大全在线观看| 国产精品一线二线三线| 亚洲国产成人91porn| 中文子幕无线码一区tr| 91精品国产免费久久综合| www.激情成人| 国产综合成人久久大片91| 亚洲一级二级三级在线免费观看| 国产肉丝袜一区二区| 91麻豆精品国产91久久久资源速度 | 日韩一区二区电影| 成人性生交大片免费看中文 | 96av麻豆蜜桃一区二区| 蜜臀精品一区二区三区在线观看| 国产精品美女久久久久久2018| 7777精品伊人久久久大香线蕉经典版下载 | 欧美激情综合网| 日韩一区二区在线观看视频| 久久精品无码一区二区三区| 欧美日韩三级视频| 99v久久综合狠狠综合久久| 精品中文字幕一区二区| 亚洲综合在线电影| 国产精品美女一区二区三区| 精品国产电影一区二区| 欧美精品一卡二卡| 91视频在线看| 国产精品99精品久久免费| 日本sm残虐另类| 午夜视频一区在线观看| 一区二区三区不卡视频| 中文字幕一区二区三区蜜月| 久久久久久久久久久黄色| 91精品欧美福利在线观看| 欧美亚洲日本一区| 91极品视觉盛宴| 成人av动漫在线| 粉嫩aⅴ一区二区三区四区五区| 精品在线一区二区三区| 人人爽香蕉精品| 人人超碰91尤物精品国产| 亚洲成人免费看| 午夜精品久久久久久久99水蜜桃| 亚洲自拍偷拍网站| 亚洲一区二区三区在线播放| 亚洲精品福利视频网站|