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

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

?? sftp.c

?? C++編寫
?? C
字號:
/* * Copyright (c) 2001,2002 Damien Miller.  All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */#include "includes.h"RCSID("$OpenBSD: sftp.c,v 1.34 2003/01/10 08:19:07 fgsch Exp $");/* XXX: short-form remote directory listings (like 'ls -C') */#include "buffer.h"#include "xmalloc.h"#include "log.h"#include "pathnames.h"#include "misc.h"#include "sftp.h"#include "sftp-common.h"#include "sftp-client.h"#include "sftp-int.h"FILE* infile;size_t copy_buffer_len = 32768;size_t num_requests = 16;extern int showprogress;static voidconnect_to_server(char *path, char **args, int *in, int *out, pid_t *sshpid){	int c_in, c_out;#ifdef USE_PIPES	int pin[2], pout[2];	if ((pipe(pin) == -1) || (pipe(pout) == -1))		fatal("pipe: %s", strerror(errno));	*in = pin[0];	*out = pout[1];	c_in = pout[0];	c_out = pin[1];#else /* USE_PIPES */	int inout[2];	if (socketpair(AF_UNIX, SOCK_STREAM, 0, inout) == -1)		fatal("socketpair: %s", strerror(errno));	*in = *out = inout[0];	c_in = c_out = inout[1];#endif /* USE_PIPES */	if ((*sshpid = fork()) == -1)		fatal("fork: %s", strerror(errno));	else if (*sshpid == 0) {		if ((dup2(c_in, STDIN_FILENO) == -1) ||		    (dup2(c_out, STDOUT_FILENO) == -1)) {			fprintf(stderr, "dup2: %s\n", strerror(errno));			exit(1);		}		close(*in);		close(*out);		close(c_in);		close(c_out);		execv(path, args);		fprintf(stderr, "exec: %s: %s\n", path, strerror(errno));		exit(1);	}	close(c_in);	close(c_out);}static voidusage(void){	extern char *__progname;	fprintf(stderr,	    "usage: %s [-vC1] [-b batchfile] [-o option] [-s subsystem|path] [-B buffer_size]\n"	    "            [-F config] [-P direct server path] [-S program]\n"	    "            [user@]host[:file [file]]\n", __progname);	exit(1);}intmain(int argc, char **argv){	int in, out, ch, err;	pid_t sshpid;	char *host, *userhost, *cp, *file2;	int debug_level = 0, sshver = 2;	char *file1 = NULL, *sftp_server = NULL;	char *ssh_program = _PATH_SSH_PROGRAM, *sftp_direct = NULL;	LogLevel ll = SYSLOG_LEVEL_INFO;	arglist args;	extern int optind;	extern char *optarg;	args.list = NULL;	addargs(&args, "ssh");		/* overwritten with ssh_program */	addargs(&args, "-oForwardX11 no");	addargs(&args, "-oForwardAgent no");	addargs(&args, "-oClearAllForwardings yes");	ll = SYSLOG_LEVEL_INFO;	infile = stdin;		/* Read from STDIN unless changed by -b */	while ((ch = getopt(argc, argv, "1hvCo:s:S:b:B:F:P:R:")) != -1) {		switch (ch) {		case 'C':			addargs(&args, "-C");			break;		case 'v':			if (debug_level < 3) {				addargs(&args, "-v");				ll = SYSLOG_LEVEL_DEBUG1 + debug_level;			}			debug_level++;			break;		case 'F':		case 'o':			addargs(&args, "-%c%s", ch, optarg);			break;		case '1':			sshver = 1;			if (sftp_server == NULL)				sftp_server = _PATH_SFTP_SERVER;			break;		case 's':			sftp_server = optarg;			break;		case 'S':			ssh_program = optarg;			break;		case 'b':			if (infile == stdin) {				infile = fopen(optarg, "r");				if (infile == NULL)					fatal("%s (%s).", strerror(errno), optarg);			} else				fatal("Filename already specified.");			showprogress = 0;			break;		case 'P':			sftp_direct = optarg;			break;		case 'B':			copy_buffer_len = strtol(optarg, &cp, 10);			if (copy_buffer_len == 0 || *cp != '\0')				fatal("Invalid buffer size \"%s\"", optarg);			break;		case 'R':			num_requests = strtol(optarg, &cp, 10);			if (num_requests == 0 || *cp != '\0')				fatal("Invalid number of requests \"%s\"",				    optarg);			break;		case 'h':		default:			usage();		}	}	log_init(argv[0], ll, SYSLOG_FACILITY_USER, 1);	if (sftp_direct == NULL) {		if (optind == argc || argc > (optind + 2))			usage();		userhost = xstrdup(argv[optind]);		file2 = argv[optind+1];		if ((cp = colon(userhost)) != NULL) {			*cp++ = '\0';			file1 = cp;		}		if ((host = strrchr(userhost, '@')) == NULL)			host = userhost;		else {			*host++ = '\0';			if (!userhost[0]) {				fprintf(stderr, "Missing username\n");				usage();			}			addargs(&args, "-l%s",userhost);		}		host = cleanhostname(host);		if (!*host) {			fprintf(stderr, "Missing hostname\n");			usage();		}		addargs(&args, "-oProtocol %d", sshver);		/* no subsystem if the server-spec contains a '/' */		if (sftp_server == NULL || strchr(sftp_server, '/') == NULL)			addargs(&args, "-s");		addargs(&args, "%s", host);		addargs(&args, "%s", (sftp_server != NULL ?		    sftp_server : "sftp"));		args.list[0] = ssh_program;		fprintf(stderr, "Connecting to %s...\n", host);		connect_to_server(ssh_program, args.list, &in, &out,		    &sshpid);	} else {		args.list = NULL;		addargs(&args, "sftp-server");		fprintf(stderr, "Attaching to %s...\n", sftp_direct);		connect_to_server(sftp_direct, args.list, &in, &out,		    &sshpid);	}	err = interactive_loop(in, out, file1, file2);	close(in);	close(out);	if (infile != stdin)		fclose(infile);	while (waitpid(sshpid, NULL, 0) == -1)		if (errno != EINTR)			fatal("Couldn't wait for ssh process: %s",			    strerror(errno));	exit(err == 0 ? 0 : 1);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看av一区二区| 成人欧美一区二区三区黑人麻豆 | 国产大陆a不卡| 欧美日韩一级片在线观看| www亚洲一区| 亚洲不卡av一区二区三区| 国产成人一级电影| 日韩欧美电影一二三| 亚洲精品欧美二区三区中文字幕| 久久不见久久见免费视频1| 在线观看日韩av先锋影音电影院| 国产拍欧美日韩视频二区| 三级欧美在线一区| 欧美性videosxxxxx| 《视频一区视频二区| 国产乱码精品一区二区三| 欧美刺激脚交jootjob| 日韩影视精彩在线| 欧美精品在线观看播放| 亚洲高清免费观看高清完整版在线观看 | 国产精品白丝jk黑袜喷水| 日韩一区二区不卡| 午夜精品福利在线| 欧美群妇大交群中文字幕| 午夜久久久久久电影| 色婷婷av一区二区三区软件 | 欧美国产日韩a欧美在线观看| 免费在线观看一区二区三区| 欧美日韩久久不卡| 天天综合色天天| 欧美精选午夜久久久乱码6080| 五月天亚洲精品| 91精品国产福利| 美国一区二区三区在线播放| 日韩一二三四区| 韩国精品一区二区| 久久蜜桃香蕉精品一区二区三区| 国产高清在线精品| 中文字幕精品在线不卡| 99国产精品国产精品毛片| 亚洲免费在线播放| 在线观看亚洲精品视频| 亚洲h精品动漫在线观看| 制服丝袜亚洲精品中文字幕| 日韩电影在线观看一区| 日韩美女天天操| 风间由美中文字幕在线看视频国产欧美| 久久久久久免费毛片精品| 99久久综合色| 午夜av一区二区三区| 久久综合资源网| aa级大片欧美| 肉丝袜脚交视频一区二区| 日韩欧美一二三四区| 粉嫩av一区二区三区在线播放 | 97久久精品人人做人人爽| 亚洲精品中文在线影院| 67194成人在线观看| 激情综合色综合久久| 亚洲色图一区二区三区| 欧美日韩午夜在线| 韩国精品久久久| 亚洲男同1069视频| 日韩美女在线视频| 91色婷婷久久久久合中文| 麻豆国产一区二区| 中文字幕日韩精品一区| 欧美一区二区免费视频| 波多野结衣一区二区三区| 三级影片在线观看欧美日韩一区二区| 久久尤物电影视频在线观看| 日本精品视频一区二区| 国产乱码一区二区三区| 午夜精品一区在线观看| 日本一区二区三区在线不卡| 色婷婷综合在线| 国产精品一区一区| 亚洲成人你懂的| 亚洲婷婷国产精品电影人久久| 欧美一区二区成人| 色老头久久综合| 东方欧美亚洲色图在线| 日本伊人午夜精品| 亚洲一区二区三区四区五区黄 | 亚洲无线码一区二区三区| 久久精品网站免费观看| 777午夜精品免费视频| 91麻豆免费视频| 国产精品亚洲综合一区在线观看| 午夜欧美大尺度福利影院在线看 | 美女www一区二区| 亚洲黄色在线视频| 亚洲欧美在线高清| 久久综合色天天久久综合图片| 欧美人与性动xxxx| 欧美亚洲一区二区在线| 97aⅴ精品视频一二三区| 国产永久精品大片wwwapp| 秋霞午夜av一区二区三区| 伊人色综合久久天天| 亚洲日本青草视频在线怡红院| 国产三级欧美三级日产三级99| 日韩欧美黄色影院| 欧美肥妇毛茸茸| 在线观看av一区| 欧美亚洲另类激情小说| 日本精品免费观看高清观看| 色综合一区二区| 在线日韩一区二区| 欧洲在线/亚洲| 欧美午夜精品一区二区蜜桃 | 亚洲国产日产av| 一级特黄大欧美久久久| 一区二区三区欧美在线观看| 1024亚洲合集| 一区二区三区在线免费视频| 亚洲美女在线一区| 一区二区三区不卡在线观看| 亚洲影院在线观看| 午夜欧美一区二区三区在线播放| 亚洲成av人片www| 免费成人av资源网| 黄色日韩三级电影| 成人午夜激情在线| 99视频国产精品| 91国偷自产一区二区三区观看| 欧美专区在线观看一区| 欧美日本在线看| 久久综合九色综合97婷婷| 国产亚洲婷婷免费| 一个色妞综合视频在线观看| 亚洲韩国精品一区| 美女一区二区三区| 国产成人亚洲综合a∨婷婷图片| 国产高清久久久久| 色偷偷久久人人79超碰人人澡| 欧美影院一区二区| 日韩欧美成人激情| 国产精品午夜春色av| 亚洲一区二区三区四区中文字幕| 欧美aaa在线| 国产91清纯白嫩初高中在线观看 | 成人av在线播放网站| 91视频免费看| 日韩欧美在线123| 久久午夜羞羞影院免费观看| 国产精品久久久久久户外露出| 亚洲一区在线免费观看| 美女性感视频久久| 91免费视频观看| 欧美精品精品一区| 国产精品美女久久久久久久| 亚洲无人区一区| 懂色av一区二区夜夜嗨| 欧美午夜片在线看| 中文成人综合网| 天天色 色综合| 不卡的av电影| 欧美本精品男人aⅴ天堂| 亚洲色图一区二区| 国产一区在线不卡| 欧美乱妇20p| 亚洲色大成网站www久久九九| 蜜臀av性久久久久av蜜臀妖精| 不卡影院免费观看| 亚洲精品一区二区精华| 亚洲影院在线观看| 99麻豆久久久国产精品免费优播| 日韩一区二区三区高清免费看看| 日韩一区在线免费观看| 国产一区不卡在线| 日韩欧美在线观看一区二区三区| 亚洲天堂免费看| 成人免费视频网站在线观看| 日韩欧美激情在线| 亚洲成人精品影院| 色哟哟一区二区在线观看| 国产精品人人做人人爽人人添| 免费成人av在线| 欧美福利电影网| 图片区小说区区亚洲影院| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 99久久精品免费观看| 久久影院视频免费| 极品销魂美女一区二区三区| 91精品国产麻豆| 日本特黄久久久高潮| 538prom精品视频线放| 亚洲一区二区三区四区五区黄| 91丨porny丨最新| 国产精品福利一区二区三区| 成人夜色视频网站在线观看| 欧美精品一区二区在线播放| 久久国产夜色精品鲁鲁99| 日韩一区二区三区免费看| 另类人妖一区二区av| 日韩免费在线观看| 国产精一品亚洲二区在线视频| 欧美成人精品高清在线播放| 蜜臀99久久精品久久久久久软件|