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

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

?? ruserpass.c

?? 一個FTP工具C源碼.zip. 可以完成大部分功能.
?? C
字號:
/* * Copyright (c) 1985, 1993, 1994 *	The Regents of the University of California.  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. * 4. Neither the name of the University nor the names of its contributors *    may be used to endorse or promote products derived from this software *    without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. */#ifndef lintstatic char sccsid[] = "@(#)ruserpass.c	8.4 (Berkeley) 4/27/95";#endif /* not lint */#ifdef HAVE_CONFIG_H#include <config.h>#endif#include <sys/types.h>#include <sys/stat.h>#include <ctype.h>#include <errno.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#if defined(HAVE_STDARG_H) && defined(__STDC__) && __STDC__#include <stdarg.h>#else#include <varargs.h>#endif#include <err.h>#include "ftp_var.h"extern char *localhost __P((void));extern char *xstrdup __P((const char *));extern char *xmalloc __P((size_t));static	int token __P((void));static	FILE *cfile;/* protect agains os headers */#undef	DEFAULT#define	DEFAULT	1#undef	LOGIN#define	LOGIN	2#undef	PASSWD#define	PASSWD	3#undef	ACCOUNT#define	ACCOUNT 4#undef  MACDEF#define MACDEF  5#undef	ID#define	ID	10#undef	MACHINE#define	MACHINE	11static char tokval[100];static struct toktab {  char *tokstr;  int tval;} toktab[]= {  { "default",	DEFAULT },  { "login",	LOGIN },  { "password",	PASSWD },  { "passwd",	PASSWD },  { "account",	ACCOUNT },  { "machine",	MACHINE },  { "macdef",	MACDEF },  { NULL,		0 }};intruserpass(char *host, char **aname, char **apass, char **aacct){  char *hdir, buf[BUFSIZ], *tmp;  char *myname = 0, *mydomain;  int t, i, c, usedefault = 0;  struct stat stb;  hdir = getenv("HOME");  if (hdir == NULL)    hdir = ".";  snprintf (buf, sizeof buf, "%s/.netrc", hdir);  cfile = fopen(buf, "r");  if (cfile == NULL)    {      if (errno != ENOENT)	warn("%s", buf);      return (0);    }  myname = localhost ();  if (! myname)    myname = xstrdup ("");  mydomain = strchr(myname, '.');  if (mydomain == NULL)    mydomain = xstrdup (""); next:  while ((t = token()))    switch(t)      {      case DEFAULT:	usedefault = 1;	/* FALL THROUGH */      case MACHINE:	if (!usedefault)	  {	    if (token() != ID)	      continue;	    /*	     * Allow match either for user's input host name	     * or official hostname.  Also allow match of	     * incompletely-specified host in local domain.  */	    if (strcasecmp(host, tokval) == 0)	      goto match;	    if (strcasecmp(hostname, tokval) == 0)	      goto match;	    if ((tmp = strchr(hostname, '.')) != NULL		&& strcasecmp(tmp, mydomain) == 0		&& strncasecmp(hostname, tokval, tmp-hostname) == 0		&& tokval[tmp - hostname] == '\0')	      goto match;	    if ((tmp = strchr(host, '.')) != NULL		&& strcasecmp(tmp, mydomain) == 0		&& strncasecmp(host, tokval, tmp - host) == 0		&& tokval[tmp - host] == '\0')	      goto match;	    continue;	  }      match:	while ((t = token()) && t != MACHINE && t != DEFAULT)	  switch(t)	    {	    case LOGIN:	      if (token())		if (*aname == 0)		  {		    *aname = xmalloc((unsigned) strlen(tokval) + 1);		    (void) strcpy(*aname, tokval);		  }		else		  {		    if (strcmp(*aname, tokval))		      goto next;		  }	      break;	    case PASSWD:	      if ((*aname == NULL || strcmp(*aname, "anonymous"))		  && fstat(fileno(cfile), &stb) >= 0		  && (stb.st_mode & 077) != 0)		{		  warnx("Error: .netrc file is readable by others.");		  warnx("Remove password or make file unreadable by others.");		  goto bad;		}	      if (token() && *apass == 0)		{		  *apass = xmalloc((unsigned) strlen(tokval) + 1);		  (void) strcpy(*apass, tokval);		}	      break;	    case ACCOUNT:	      if (fstat(fileno(cfile), &stb) >= 0		  && (stb.st_mode & 077) != 0)		{		  warnx("Error: .netrc file is readable by others.");		  warnx("Remove account or make file unreadable by others.");		  goto bad;		}	      if (token() && *aacct == 0)		{		  *aacct = xmalloc((unsigned) strlen(tokval) + 1);		  (void) strcpy(*aacct, tokval);		}	      break;	    case MACDEF:	      if (proxy)		goto done;	      while ((c=getc(cfile)) != EOF && c == ' ' || c == '\t')		;	      if (c == EOF || c == '\n')		{		  printf("Missing macdef name argument.\n");		  goto bad;		}	      if (macnum == 16)		{		  printf("Limit of 16 macros have already been defined\n");		  goto bad;		}	      tmp = macros[macnum].mac_name;	      *tmp++ = c;	      for (i=0; i < 8 && (c=getc(cfile)) != EOF && !isspace(c); ++i)		{		  *tmp++ = c;		}	      if (c == EOF)		{		  printf("Macro definition missing null line terminator.\n");		  goto bad;		}	      *tmp = '\0';	      if (c != '\n')		{		  while ((c = getc(cfile)) != EOF && c != '\n');		}	      if (c == EOF)		{		  printf("Macro definition missing null line terminator.\n");		  goto bad;		}	      if (macnum == 0)		{		  macros[macnum].mac_start = macbuf;		}	      else		{		  macros[macnum].mac_start = macros[macnum-1].mac_end + 1;		}	      tmp = macros[macnum].mac_start;	      while (tmp != macbuf + 4096)		{		  if ((c = getc (cfile)) == EOF)		    {		      printf("Macro definition missing null line terminator.\n");		      goto bad;		    }		  *tmp = c;		  if (*tmp == '\n')		    {		      if (*(tmp-1) == '\0')			{			  macros[macnum++].mac_end = tmp - 1;			  break;			}		      *tmp = '\0';		    }		  tmp++;		}	      if (tmp == macbuf + 4096)		{		  printf("4K macro buffer exceeded\n");		  goto bad;		}	      break;	    default:	      warnx("Unknown .netrc keyword %s", tokval);	      break;	    }	goto done;      } done:  (void) fclose(cfile);  if (myname)    free (myname);  return (0); bad:  (void) fclose(cfile);  if (myname)    free (myname);  return (-1);}static inttoken(void){  char *cp;  int c;  struct toktab *t;  if (feof(cfile) || ferror(cfile))    return (0);  while ((c = getc(cfile)) != EOF &&	 (c == '\n' || c == '\t' || c == ' ' || c == ','))    continue;  if (c == EOF)    return (0);  cp = tokval;  if (c == '"')    {      while ((c = getc(cfile)) != EOF && c != '"')	{	  if (c == '\\')	    c = getc(cfile);	  *cp++ = c;	}    }  else    {      *cp++ = c;      while ((c = getc(cfile)) != EOF	     && c != '\n' && c != '\t' && c != ' ' && c != ',')	{	  if (c == '\\')	    c = getc(cfile);	  *cp++ = c;	}    }  *cp = 0;  if (tokval[0] == 0)    return (0);  for (t = toktab; t->tokstr; t++)    if (!strcmp(t->tokstr, tokval))      return (t->tval);  return (ID);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产99久久久国产精品潘金| 精品综合免费视频观看| 成人综合婷婷国产精品久久免费| 在线亚洲高清视频| 久久综合视频网| 国产精品456| 欧美日韩国产一区二区三区地区| 国产亚洲污的网站| 国产福利不卡视频| 欧美mv日韩mv国产网站app| 中文字幕制服丝袜成人av | 久久久久久久网| 国产成人免费9x9x人网站视频| 国产欧美一区二区三区在线看蜜臀| 一区二区在线看| 成人久久18免费网站麻豆 | 色综合天天综合色综合av | 欧美精品一区二| 福利一区二区在线观看| 亚洲精品中文在线影院| 日韩午夜激情av| 93久久精品日日躁夜夜躁欧美| 亚洲一区二区三区四区在线| 日韩精品一区二区三区四区视频 | 欧美日韩午夜在线视频| 国产精品亚洲一区二区三区在线 | 一区二区免费在线| 欧美色电影在线| 91视频国产观看| 麻豆精品视频在线观看视频| 欧美午夜一区二区三区| 蜜臀av一区二区在线免费观看| 中文无字幕一区二区三区| 国产老肥熟一区二区三区| 日韩专区一卡二卡| 亚洲一区二区三区四区在线观看 | 在线成人av影院| 国产精品一区在线观看乱码| 婷婷中文字幕综合| 视频一区二区国产| 丝袜诱惑亚洲看片| 亚洲福利一区二区三区| 午夜影院久久久| 亚洲综合丁香婷婷六月香| 亚洲男人的天堂av| 国产精品天干天干在观线| 4438x成人网最大色成网站| 欧美在线免费视屏| 在线看国产一区| 男女性色大片免费观看一区二区 | 91福利在线看| 欧美视频日韩视频| 色域天天综合网| 3atv一区二区三区| 精品久久久三级丝袜| www.色综合.com| 欧美一区二视频| 国产精品久久久久久久久快鸭| 久久久亚洲精品一区二区三区| 国产精品麻豆久久久| 136国产福利精品导航| 五月天一区二区三区| 国产一区二区三区美女| 9久草视频在线视频精品| 91 com成人网| 亚洲一二三四区| 日韩福利电影在线观看| thepron国产精品| 日韩三级中文字幕| 亚洲另类春色校园小说| 美女诱惑一区二区| 97久久超碰精品国产| 欧美日韩和欧美的一区二区| 国产精品网站一区| 日本特黄久久久高潮| 欧美日韩一级大片网址| 一区二区三区不卡视频在线观看| 国产.精品.日韩.另类.中文.在线.播放 | 九九精品视频在线看| 久久精品视频一区二区| 久久成人免费电影| 久久久天堂av| 一本色道久久综合亚洲精品按摩| 亚洲男同1069视频| 欧美精品在线观看播放| 激情综合色综合久久综合| 精品日韩av一区二区| 国产自产v一区二区三区c| 国产精品成人一区二区艾草| 欧美日韩免费一区二区三区视频| 看国产成人h片视频| 欧美经典一区二区三区| 91精品在线麻豆| 99麻豆久久久国产精品免费优播| 亚洲v精品v日韩v欧美v专区| 国产欧美视频一区二区| 欧美久久久一区| 色综合久久中文字幕综合网| 精品一区二区免费看| 亚洲福利一二三区| 亚洲欧美日本在线| 欧美在线观看18| 午夜精品一区二区三区电影天堂| 欧美久久久久中文字幕| 国内精品久久久久影院一蜜桃| 水蜜桃久久夜色精品一区的特点| 久久色在线视频| 免费看欧美女人艹b| 日韩免费视频一区| 91精品国产91久久综合桃花| 三级欧美在线一区| 在线欧美小视频| 97久久超碰国产精品电影| 日韩精品亚洲一区| 久久精品亚洲精品国产欧美kt∨| 国产亚洲欧洲997久久综合| 欧美一区二区精美| 91同城在线观看| 天天色图综合网| 欧美三级日本三级少妇99| 99久久精品免费| 日本vs亚洲vs韩国一区三区二区| 中文幕一区二区三区久久蜜桃| 国产一区二区视频在线| 日韩国产欧美视频| 亚洲免费成人av| 欧美电影免费观看完整版| 51午夜精品国产| 欧美午夜寂寞影院| 成人动漫一区二区| 国产成人精品综合在线观看 | 亚洲黄色免费网站| 51午夜精品国产| 日韩一区和二区| 欧美性受xxxx黑人xyx| 日韩免费看的电影| 欧美一激情一区二区三区| 欧美精品一级二级| 色综合欧美在线视频区| 91在线视频18| 在线视频一区二区三| 色婷婷亚洲一区二区三区| 91美女视频网站| 欧美系列亚洲系列| 波多野结衣一区二区三区| 亚洲一二三级电影| 理论电影国产精品| 国产精品一二三| 色综合天天综合色综合av| 国产欧美日产一区| 国产精品欧美一区喷水| 欧美国产禁国产网站cc| 欧美电视剧在线看免费| 一区二区三区.www| 青青青伊人色综合久久| 国产精品影音先锋| 色噜噜夜夜夜综合网| av日韩在线网站| 久久精品一区二区三区av| 综合久久给合久久狠狠狠97色| 精品久久国产字幕高潮| 视频一区二区不卡| 捆绑变态av一区二区三区| 不卡一区二区中文字幕| 久久午夜色播影院免费高清| 亚洲小说欧美激情另类| 91麻豆.com| 久久久精品国产免大香伊| 麻豆成人久久精品二区三区红| 日韩av中文在线观看| 国内精品伊人久久久久影院对白| 日韩午夜小视频| 图片区小说区区亚洲影院| 精品系列免费在线观看| 欧美视频一区在线观看| 亚洲黄一区二区三区| 天天爽夜夜爽夜夜爽精品视频| 日韩一区二区影院| 极品少妇一区二区三区精品视频 | 欧美电影免费观看高清完整版在线观看| 色爱区综合激月婷婷| 26uuu国产在线精品一区二区| 国产精品无遮挡| 亚洲自拍都市欧美小说| 国产午夜一区二区三区| 国产精品一区二区你懂的| 欧美va天堂va视频va在线| 国产成人午夜高潮毛片| 中文字幕精品—区二区四季| 成人免费毛片片v| 久久超碰97人人做人人爱| 欧美乱妇15p| 国产在线视频一区二区| 欧美一区二区在线视频| 午夜欧美2019年伦理| 精品国产乱码久久久久久浪潮 | 裸体健美xxxx欧美裸体表演| 精品久久国产字幕高潮| 91在线观看高清| 精品一区二区三区在线播放视频|