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

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

?? rz.c

?? 開源串口利用Xmodem,Ymodem,ZModem 下載,上傳的程序.在Linux,Arm-Linux 都可使用
?? C
?? 第 1 頁 / 共 2 頁
字號:
#define VERSION "3.48 01-27-98"#define PUBDIR "/usr/spool/uucppublic"/* * * rz.c By Chuck Forsberg *    Copyright 1997 Omen Technology Inc All Rights Reserved * * A program for Unix to receive files and commands from computers running *  Professional-YAM, PowerCom, YAM, IMP, or programs supporting XMODEM. *  rz uses Unix buffered input to reduce wasted CPU time. * *  ********************************************************************* ********************************************************************* *  * *	This version implements numerous enhancements including ZMODEM *	Run Length Encoding and variable length headers.  These *	features were not funded by the original Telenet development *	contract. *  *  * This software may be freely used for educational (didactic * only) purposes.  "Didactic" means it is used as a study item * in a course teaching the workings of computer protocols. *  * This software may also be freely used to support file transfer * operations to or from duly licensed Omen Technology products. * This includes DSZ, GSZ, ZCOMM, Professional-YAM and PowerCom. * Institutions desiring to use rz/sz this way should add the * following to the sz compile line:	-DCOMPL * Programs based on stolen or public domain ZMODEM materials are * not included.  Use with other commercial or shareware programs * (Crosstalk, Procomm, etc.) REQUIRES REGISTRATION. *  * *  Any programs which incorporate part or all of this code must be *  provided in source form with this notice intact except by *  prior written permission from Omen Technology Incorporated. *  This includes compiled executables of this program. * *   The .doc files and the file "mailer.rz" must also be included. *  * Use of this software for commercial or administrative purposes * except when exclusively limited to interfacing Omen Technology * products requires license payment of $20.00 US per user * (less in quantity, see mailer.rz).  Use of this code by * inclusion, decompilation, reverse engineering or any other means * constitutes agreement to these conditions and acceptance of * liability to license the materials and payment of reasonable * legal costs necessary to enforce this license agreement. * * *		Omen Technology Inc *		Post Office Box 4681 *		Portland OR 97208 * *	This code is made available in the hope it will be useful, *	BUT WITHOUT ANY WARRANTY OF ANY KIND OR LIABILITY FOR ANY *	DAMAGES OF ANY KIND. * * *  -DMD may be added to compiler command line to compile in *    Directory-creating routines from Public Domain TAR by John Gilmore * *  USG UNIX (3.0) ioctl conventions courtesy  Jeff Martin */char *Copyrrz = "Copyright 1997 Omen Technology Inc All Rights Reserved";#define LOGFILE "/tmp/rzlog"#define LOGFILE2 "rzlog"#include <stdio.h>#include <signal.h>#include <ctype.h>#include <errno.h>extern int errno;#define OK 0#define FALSE 0#define TRUE 1#define ERROR (-1)/* * Max value for HOWMANY is 255. *   A larger value reduces system overhead but may evoke kernel bugs. */#ifndef HOWMANY#define HOWMANY 96#endif/* Ward Christensen / CP/M parameters - Don't change these! */#define ENQ 005#define CAN ('X'&037)#define XOFF ('s'&037)#define XON ('q'&037)#define SOH 1#define STX 2#define EOT 4#define ACK 6#define NAK 025#define CPMEOF 032#define WANTCRC 0103	/* send C not NAK to get crc not checksum */#define TIMEOUT (-2)#define RCDO (-3)#define GCOUNT (-4)#define ERRORMAX 5#define RETRYMAX 5#define WCEOT (-10)#define PATHLEN 257	/* ready for 4.2 bsd ? */#define UNIXFILE 0xF000	/* The S_IFMT file mask bit for stat */int Zmodem=0;		/* ZMODEM protocol requested */int Nozmodem = 0;	/* If invoked as "rb" */unsigned Baudrate = 9600;#include "rbsb.c"	/* most of the system dependent stuff here */#include "crctab.c"char endmsg[90] = {0};	/* Possible message to display on exit */char Zsendmask[33];	/* Additional control chars to mask */char *substr();FILE *fout;/* * Routine to calculate the free bytes on the current file system *  ~0 means many free bytes (unknown) */long getfree(){	return(2147483647);	/* many free bytes ... */}int Lastrx;long rxbytes;int Crcflg;int Firstsec;int Eofseen;		/* indicates cpm eof (^Z) has been received */int errors;int Restricted=0;	/* restricted; no /.. or ../ in filenames */#define DEFBYTL 2000000000L	/* default rx file size */long Bytesleft;	/* number of bytes of incoming file left */long Modtime;		/* Unix style mod time for incoming file */int Filemode;		/* Unix style mode for incoming file */long Totalleft;long Filesleft;char Pathname[PATHLEN];char *Progname;		/* the name by which we were called */int Batch=0;int Thisbinary;		/* current file is to be received in bin mode */int Rxbinary=FALSE;	/* receive all files in bin mode */int Rxascii=FALSE;	/* receive files in ascii (translate) mode */int Blklen;		/* record length of received packets */#ifdef SEGMENTSint chinseg = 0;	/* Number of characters received in this data seg */char secbuf[1+(SEGMENTS+1)*1024];#elsechar secbuf[1025];#endiftime_t timep[2];char Lzmanag;		/* Local file management request */char Lzconv;		/* Local ZMODEM file conversion request */char zconv;		/* ZMODEM file conversion request */char zmanag;		/* ZMODEM file management request */char ztrans;		/* ZMODEM file transport request */int Zctlesc;		/* Encode control characters */int Zrwindow = 1400;	/* RX window size (controls garbage count) *//* * Log an error */voidzperr1(s,p,u)char *s, *p, *u;{	if (Verbose <= 0)		return;	fprintf(stderr, "Retry %d: ", errors);	fprintf(stderr, s);	fprintf(stderr, "\n");}voidzperr2(s,p,u)char *s, *p, *u;{	if (Verbose <= 0)		return;	fprintf(stderr, "Retry %d: ", errors);	fprintf(stderr, s, p);	fprintf(stderr, "\n");}voidzperr3(s,p,u)char *s, *p, *u;{	if (Verbose <= 0)		return;	fprintf(stderr, "Retry %d: ", errors);	fprintf(stderr, s, p, u);	fprintf(stderr, "\n");}#include "zm.c"#include "zmr.c"int tryzhdrtype=ZRINIT;	/* Header type to send corresponding to Last rx close *//* called by signal interrupt or terminate to clean things up */voidbibi(n){	if (Zmodem)		zmputs(Attn);	canit(); mode(0);	fprintf(stderr, "rz: caught signal %d; exiting", n);	exit(3);}main(argc, argv)char *argv[];{	register char *cp;	register npats;	char *virgin, **patts;	int exitcode = 0;	Rxtimeout = 100;	setbuf(stderr, NULL);	if (((cp = getenv("RESTRICTED")) != 0)  &&  *cp == '1')		Restricted=TRUE;	if ((cp=getenv("SHELL")) && (substr(cp, "rsh") || substr(cp, "rksh")))		Restricted=TRUE;	chkinvok(virgin=argv[0]);	inittty();	npats = 0;	while (--argc) {		cp = *++argv;		if (*cp == '-') {			++cp;			while( *cp) {				if (isdigit(*cp)) {					++cp;  continue;				}				switch(*cp++) {				case '\\':					 *cp = toupper(*cp);  continue;				case 'a':					if (!Batch || Nozmodem)						Rxascii=TRUE;					else						usage();					break;				case 't':					if (isdigit(*cp))						Rxtimeout = atoi(cp);					else {						if (--argc < 1)							usage();						Rxtimeout = atoi(*++argv);					}					if (Rxtimeout<1 || Rxtimeout>1000)						usage();					break;				case 'w':					if (isdigit(*cp))						Zrwindow = atoi(cp);					else {						if (--argc < 1)							usage();						Zrwindow = atoi(*++argv);					}					break;				case 'v':					++Verbose; break;				case 'y':					Lzmanag = ZMCLOB;					break;				default:					usage();				}			}		}		else if ( !npats && argc>0) {			if (argv[0][0]) {				npats=argc;				patts=argv;			}		}	}	if (npats > 1)		usage();	if (Batch && npats)		usage();	if (Verbose) {		if (freopen(LOGFILE, "a", stderr)==NULL)			if (freopen(LOGFILE2, "a", stderr)==NULL) {				fprintf(stderr, "Can't open log file!\n");				exit(2);			}		setbuf(stderr, NULL);		fprintf(stderr, "argv[0]=%s Progname=%s\n", virgin, Progname);	}	vfile("%s %s for %s tty=%s\n", Progname, VERSION, OS, Nametty);	mode(1);	if (signal(SIGINT, bibi) == SIG_IGN) {		signal(SIGINT, SIG_IGN); signal(SIGKILL, SIG_IGN);	}	else {		signal(SIGINT, bibi); signal(SIGKILL, bibi);	}	signal(SIGTERM, bibi);	if (wcreceive(npats, patts)==ERROR) {		exitcode=1;		canit();	}	if (exitcode && !Zmodem)	/* bellow again with all thy might. */		canit();	if (endmsg[0])		fprintf(stderr, "  %s: %s\r\n", Progname, endmsg);	fprintf(stderr, "%s %s finished.\r\n", Progname, VERSION);	fflush(stderr);#ifndef REGISTERED	/* Removing or disabling this code without registering is theft */	if (!Usevhdrs) {		fprintf(stderr, "\n\n\n**** UNREGISTERED COPY *****\r\n");		fprintf(stderr, "Please read the License Agreement in rz.doc\r\n");		fflush(stderr);		sleep(10);	}#endif	mode(0);	if(exitcode)		exit(1);	exit(0);	/* NOTREACHED */}usage(){	fprintf(stderr,	"Receive Files and Commands with ZMODEM/YMODEM/XMODEM Protocol\n\n");	fprintf(stderr,"Usage:	rz [-v]   [-wN] [-tT]	(ZMODEM)\n");	fprintf(stderr,"or	rb [-avy] [-tT]		(YMODEM)\n");	fprintf(stderr,"or	rc [-avy] [-tT] file	(XMODEM-CRC)\n");	fprintf(stderr,"or	rx [-avy] [-tT] file	(XMODEM)\n\n");	fprintf(stderr,"Supports the following incoming ZMODEM options given to the sending program:\n\	compression (-Z), binary (-b), ASCII CR/LF>NL (-a), newer(-n),\n\	newer+longer(-N), protect (-p), Crash Recovery (-r),\n\	clobber (-y), match+clobber (-Y),  and append (-+).\n\n");	fprintf(stderr,"%s %s for %s by Chuck Forsberg, Omen Technology INC\n",	  Progname, VERSION, OS);	fprintf(stderr, "\t\t\042The High Reliability Software\042\n\n");	fprintf(stderr,"Copyright (c) 1997 Omen Technology INC All Rights Reserved\n");	fprintf(stderr,	"See rz.doc and README for option descriptions and licensing information.\n\n");	fprintf(stderr,	"This program is designed to talk to terminal programs,\nnot to be called by one.\n");#ifndef REGISTERED	fprintf(stderr, "\n\n\n      **** UNREGISTERED COPY *****\r\n");	fprintf(stderr, "Please read the License Agreement in rz.doc\r\n");#endif	exit(2);}/* * Let's receive something already. */char *rbmsg = "%s ready. Type \"%s file ...\" to your modem program\n\r";wcreceive(argc, argp)char **argp;{	register c;	if (Batch || argc==0) {		Crcflg=1;		fprintf(stderr, rbmsg, Progname, Nozmodem?"sb":"sz");		if (c=tryz()) {			if (c == ZCOMPL)				return OK;			if (c == ERROR)				goto fubar;			c = rzfiles();			if (c)				goto fubar;		} else {			for (;;) {				if (wcrxpn(secbuf)== ERROR)					goto fubar;				if (secbuf[0]==0)					return OK;				if (procheader(secbuf))					goto fubar;				if (wcrx()==ERROR)					goto fubar;			}		}	} else {		Bytesleft = DEFBYTL; Filemode = 0; Modtime = 0L;		procheader(""); strcpy(Pathname, *argp); checkpath(Pathname);		fprintf(stderr, "\nrz: ready to receive %s\r\n", Pathname);		if ((fout=fopen(Pathname, "w")) == NULL)			return ERROR;		if (wcrx()==ERROR)			goto fubar;	}	return OK;fubar:	canit();	Modtime = 1;	if (fout)		fclose(fout);	if (Restricted) {		unlink(Pathname);		fprintf(stderr, "\r\nrz: %s removed.\r\n", Pathname);	}	return ERROR;}/* * Fetch a pathname from the other end as a C ctyle ASCIZ string. * Length is indeterminate as long as less than Blklen * A null string represents no more files (YMODEM) */wcrxpn(rpn)char *rpn;	/* receive a pathname */{	register c;	purgeline();et_tu:	Firstsec=TRUE;  Eofseen=FALSE;	sendline(Crcflg?WANTCRC:NAK);  flushmo();	Lleft=0;	/* Do read next time ... */	switch (c = wcgetsec(rpn, 100)) {	case WCEOT:		zperr2( "Pathname fetch returned %d", c);		sendline(ACK);  flushmo();		Lleft=0;	/* Do read next time ... */		readline(1);		goto et_tu;	case 0:		sendline(ACK);  flushmo(); return OK;	default:		return ERROR;	}}/* * Adapted from CMODEM13.C, written by * Jack M. Wierda and Roderick W. Hart */wcrx(){	register int sectnum, sectcurr;	register char sendchar;	int cblklen;			/* bytes to dump this block */	Firstsec=TRUE;sectnum=0; Eofseen=FALSE;	sendchar=Crcflg?WANTCRC:NAK;	for (;;) {		sendline(sendchar);	/* send it now, we're ready! */		flushmo();		Lleft=0;	/* Do read next time ... */		sectcurr=wcgetsec(secbuf, (sectnum&0177)?50:130);		if (sectcurr==(sectnum+1 &0377)) {			sectnum++;			cblklen = Bytesleft>Blklen ? Blklen:Bytesleft;			if (putsec(secbuf, cblklen)==ERROR)				return ERROR;			if ((Bytesleft-=cblklen) < 0)				Bytesleft = 0;			sendchar=ACK;		}		else if (sectcurr==(sectnum&0377)) {			zperr1( "Received dup Sector");			sendchar=ACK;		}		else if (sectcurr==WCEOT) {			if (closeit())				return ERROR;			sendline(ACK); flushmo();			Lleft=0;	/* Do read next time ... */			return OK;		}		else if (sectcurr==ERROR)			return ERROR;		else {			zperr1( "Sync Error");			return ERROR;		}	}	/* NOTREACHED */}/* * Wcgetsec fetches a Ward Christensen type sector. * Returns sector number encountered or ERROR if valid sector not received, * or CAN CAN received * or WCEOT if eot sector * time is timeout for first char, set to 4 seconds thereafter ***************** NO ACK IS SENT IF SECTOR IS RECEIVED OK ************** *    (Caller must do that when he is good and ready to get next sector) */wcgetsec(rxbuf, maxtime)char *rxbuf;int maxtime;{	register checksum, wcj, firstch;	register unsigned short oldcrc;	register char *p;	int sectcurr;	for (Lastrx=errors=0; errors<RETRYMAX; errors++) {		if ((firstch=readline(maxtime))==STX) {			Blklen=1024; goto get2;		}		if (firstch==SOH) {			Blklen=128;get2:			sectcurr=readline(1);			if ((sectcurr+(oldcrc=readline(1)))==0377) {				oldcrc=checksum=0;				for (p=rxbuf,wcj=Blklen; --wcj>=0; ) {					if ((firstch=readline(1)) < 0)						goto bilge;					oldcrc=updcrc(firstch, oldcrc);					checksum += (*p++ = firstch);				}				if ((firstch=readline(1)) < 0)					goto bilge;				if (Crcflg) {					oldcrc=updcrc(firstch, oldcrc);					if ((firstch=readline(1)) < 0)						goto bilge;					oldcrc=updcrc(firstch, oldcrc);					if (oldcrc & 0xFFFF)						zperr1( "CRC");					else {						Firstsec=FALSE;						return sectcurr;					}				}				else if (((checksum-firstch)&0377)==0) {					Firstsec=FALSE;					return sectcurr;				}				else					zperr1( "Checksum");			}			else				zperr1("Sector number garbled");		}		/* make sure eot really is eot and not just mixmash */		else if (firstch==EOT && Lleft==0)			return WCEOT;		else if (firstch==CAN) {			if (Lastrx==CAN) {				zperr1( "Sender CANcelled");				return ERROR;			} else {				Lastrx=CAN;				continue;			}		}		else if (firstch==TIMEOUT) {			if (Firstsec)				goto humbug;bilge:			zperr1( "TIMEOUT");		}		else			zperr1( "Got 0%o sector header", firstch);humbug:		Lastrx=0;		while(readline(1)!=TIMEOUT)			;		if (Firstsec) {			sendline(Crcflg?WANTCRC:NAK);  flushmo();			Lleft=0;	/* Do read next time ... */		} else {			maxtime=40; sendline(NAK);  flushmo();			Lleft=0;	/* Do read next time ... */		}	}	/* try to stop the bubble machine. */	canit();	return ERROR;}/* * Process incoming file information header *  Returns 0 for success, other codes for errors *  or skip conditions. */procheader(name)char *name;{	register char *openmode, *p;	static dummy;	struct stat f;	/* set default parameters and overrides */	openmode = "w";	Thisbinary = (!Rxascii) || Rxbinary;	if (zconv == ZCBIN && Lzconv != ZCRESUM)		Lzconv = zconv;			/* Remote Binary override */	if (Lzconv)		zconv = Lzconv;	if (Lzmanag)		zmanag = Lzmanag;	/*	 *  Process ZMODEM remote file management requests	 */	if (!Rxbinary && zconv == ZCNL)	/* Remote ASCII override */		Thisbinary = 0;	if (zconv == ZCBIN)	/* Remote Binary override */		Thisbinary = TRUE;	else if (zmanag == ZMAPND)		openmode = "a";	Bytesleft = DEFBYTL; Filemode = 0; Modtime = 0L;	if (!name || !*name)		return 0;	p = name + 1 + strlen(name);	if (*p) {	/* file coming from Unix or DOS system */		sscanf(p, "%ld%lo%o%lo%d%ld%d%d",		  &Bytesleft, &Modtime, &Filemode,		  &dummy, &Filesleft, &Totalleft, &dummy, &dummy);		if (Filemode & UNIXFILE)			++Thisbinary;		if (Verbose) {			fprintf(stderr,  "Incoming: %s %ld %lo %o\n",			  name, Bytesleft, Modtime, Filemode);			fprintf(stderr,  "YMODEM header: %s\n", p);		}	}	else {		/* File coming from CP/M system */		for (p=name; *p; ++p)		/* change / to _ */			if ( *p == '/')				*p = '_';		if ( *--p == '.')		/* zap trailing period */			*p = 0;	}	strcpy(Pathname, name);	checkpath(name);	if (*name && stat(name, &f)!= -1) {		zmanag &= ZMMASK;		if (zmanag==ZMPROT)			goto skipfile;		vfile("Current %s is %ld %lo", name, f.st_size, f.st_mtime);		if (Thisbinary && zconv==ZCRESUM) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月天激情综合| 色婷婷综合久久久久中文一区二区 | 韩国一区二区视频| 日韩一级完整毛片| 看国产成人h片视频| 欧美精品一区二区精品网| 久久99久久久久| 久久久久久免费毛片精品| 成人综合在线观看| 一区二区三区电影在线播| 在线不卡的av| 激情久久五月天| 国产精品福利一区二区| 91丨porny丨首页| 天堂一区二区在线| 久久久av毛片精品| 91久久一区二区| 日本不卡免费在线视频| 2021中文字幕一区亚洲| 成人黄色电影在线 | 韩日欧美一区二区三区| 国产亚洲一区二区三区| 91视频www| 另类小说一区二区三区| 亚洲婷婷在线视频| 91精品国产综合久久福利| 国产一区二区三区综合| 一二三区精品福利视频| 精品乱人伦小说| 欧洲一区二区av| 欧美成人福利视频| 国产精品一区二区在线播放| 亚洲天堂福利av| 精品福利av导航| 欧美影视一区二区三区| 国产电影一区在线| 五月婷婷激情综合| 亚洲男人天堂av网| 国产女同互慰高潮91漫画| 欧美影院一区二区| 99国产精品久久久久| 久久超碰97中文字幕| 樱桃国产成人精品视频| 国产亚洲精品7777| 久久综合99re88久久爱| 欧美精选午夜久久久乱码6080| 成人美女在线观看| 国产成人综合在线| 精品亚洲成a人| 五月综合激情日本mⅴ| 亚洲人成人一区二区在线观看| 久久婷婷国产综合国色天香| 91精品国产色综合久久| 欧美色手机在线观看| 99vv1com这只有精品| 国产a视频精品免费观看| 国产一区二区三区电影在线观看| 蜜臀av性久久久久av蜜臀妖精| 亚洲在线免费播放| 亚洲欧美一区二区不卡| 国产精品大尺度| 中文字幕欧美激情一区| 国产欧美一区二区在线观看| 亚洲精品在线观看网站| 精品国产亚洲一区二区三区在线观看| 69堂精品视频| 日韩欧美激情一区| 日韩三级视频中文字幕| 日韩视频在线你懂得| 欧美一区二区三区四区久久| 欧美一区二区播放| 在线不卡中文字幕| 日韩欧美亚洲国产精品字幕久久久| 欧美久久一二三四区| 欧美mv日韩mv国产网站| 精品国产精品网麻豆系列| 久久伊人中文字幕| 国产精品免费av| 亚洲色图都市小说| 午夜精品一区二区三区三上悠亚| 亚洲成人动漫精品| 青青草国产精品97视觉盛宴| 老鸭窝一区二区久久精品| 韩国精品主播一区二区在线观看| 国产一区二区三区久久悠悠色av| 国产成人日日夜夜| 91在线视频免费91| 91麻豆精品国产91久久久久| 久久综合狠狠综合| 一区二区三区在线不卡| 日本不卡123| 国产一区二区在线视频| 91一区二区三区在线观看| 欧美美女喷水视频| 久久精品欧美一区二区三区麻豆 | 99国产精品久久久久久久久久| 色一情一伦一子一伦一区| 欧美日韩高清一区二区| 久久久精品黄色| 亚洲一本大道在线| 国产成人午夜精品5599| 欧美色区777第一页| 国产人久久人人人人爽| 首页亚洲欧美制服丝腿| 成人高清av在线| 91麻豆精品91久久久久同性| 国产免费久久精品| 日本免费在线视频不卡一不卡二| 成人福利视频网站| 91精品国产高清一区二区三区| 中文字幕精品一区| 美女视频黄 久久| 色欧美片视频在线观看在线视频| 日韩片之四级片| 一区二区三区在线观看国产 | 亚洲精品日韩综合观看成人91| 美女网站视频久久| 欧美手机在线视频| 中文字幕一区三区| 国产又黄又大久久| 久久综合色播五月| 欧洲一区在线观看| 亚洲国产人成综合网站| 欧美日韩国产精品成人| 日本色综合中文字幕| 精品国产91洋老外米糕| 国产精品主播直播| 亚洲免费观看高清完整| 制服丝袜av成人在线看| 国产精品自拍网站| 亚洲精品久久嫩草网站秘色| 欧美精品一级二级| 国产成人精品一区二区三区四区 | 日韩天堂在线观看| av在线不卡网| 日韩国产在线观看一区| 欧美激情一区三区| 欧美视频在线不卡| 国产精品99久久不卡二区| 亚洲国产色一区| 国产欧美精品区一区二区三区| 日本久久电影网| 国产一区二三区| 婷婷久久综合九色综合伊人色| 国产日韩欧美电影| 欧美一区二区三区的| 97se亚洲国产综合自在线不卡 | 中文字幕日韩av资源站| 欧美一区二区视频网站| aaa国产一区| 久久精工是国产品牌吗| 一区二区三区不卡视频在线观看| 久久亚洲二区三区| 欧美一区二区三区免费大片| 91在线云播放| 成人免费三级在线| 国内成人免费视频| 天天色天天操综合| 亚洲激情综合网| 中文字幕av在线一区二区三区| 日韩欧美国产三级电影视频| 在线观看免费亚洲| www.亚洲人| 国产1区2区3区精品美女| 免费成人性网站| 丝袜美腿亚洲一区二区图片| 亚洲精品菠萝久久久久久久| 日本一区二区三区dvd视频在线| 日韩美一区二区三区| 精品视频一区二区不卡| 色婷婷综合激情| 99精品视频一区二区三区| 国产精品77777| 国产精品一区二区三区四区| 青青草原综合久久大伊人精品 | 欧美日韩一区二区在线观看视频 | 亚洲欧洲成人精品av97| 国产日韩欧美高清| 国产日韩一级二级三级| 国产欧美一区二区三区鸳鸯浴| 久久亚洲精华国产精华液 | 国产精品动漫网站| 中文字幕在线观看不卡| 国产精品乱码一区二区三区软件| 久久久久久一二三区| 久久久久亚洲蜜桃| 国产精品久久久久影视| 最新久久zyz资源站| 亚洲天堂久久久久久久| 亚洲欧美电影院| 午夜精品一区在线观看| 日本色综合中文字幕| 麻豆国产欧美日韩综合精品二区| 免费人成精品欧美精品| 日本亚洲天堂网| 国产精品一线二线三线| 成人小视频免费观看| 91免费看片在线观看| 欧美午夜一区二区三区| 欧美精品九九99久久|