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

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

?? htwwwstr.c

?? firtext搜索引擎源碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
	    tm.tm_hour = strtol(s, &s, 10);	    tm.tm_min = strtol(++s, &s, 10);	    tm.tm_sec = strtol(++s, &s, 10);	} else {					    /* Second format */	    HTTRACE(CORE_TRACE, "Format...... Wkd, 00 Mon 0000 00:00:00 GMT\n");	    if ((int)strlen(s) < 20) {		HTTRACE(CORE_TRACE, "ERROR....... Not a valid time format \"%s\"\n" _ s);		return 0;	    }	    tm.tm_mday = strtol(s, &s, 10);	    tm.tm_mon = make_month(s, &s);	    tm.tm_year = strtol(s, &s, 10) - 1900;	    tm.tm_hour = strtol(s, &s, 10);	    tm.tm_min = strtol(++s, &s, 10);	    tm.tm_sec = strtol(++s, &s, 10);	}    } else if (isdigit((int) *str)) {	if (strchr(str, 'T')) {		        /* ISO (limited format) date string */	    HTTRACE(CORE_TRACE, "Format...... YYYY.MM.DDThh:mmStzWkd\n");	    s = (char *) str;	    while (*s && *s==' ') s++;	    if ((int)strlen(s) < 21) {		HTTRACE(CORE_TRACE, "ERROR....... Not a valid time format `%s\'\n" _ s);		return 0;	    }	    tm.tm_year = strtol(s, &s, 10) - 1900;	    tm.tm_mon  = strtol(++s, &s, 10);	    tm.tm_mday = strtol(++s, &s, 10);	    tm.tm_hour = strtol(++s, &s, 10);	    tm.tm_min  = strtol(++s, &s, 10);	    tm.tm_sec  = strtol(++s, &s, 10);	} else {					    /* delta seconds */	    t = expand ? time(NULL) + atol(str) : atol(str);#ifdef HTDEBUG	    if (CORE_TRACE) {		if (expand) {#if defined (HAVE_CTIME_R_2)		    char buffer[CTIME_MAX];		    HTTRACE(CORE_TRACE, "Time string. Delta-time %s parsed to %ld seconds, or in local time: %s" _			    str _ (long) t _ (char *) ctime_r(&t, buffer));#elif defined(HAVE_CTIME_R_3)		    char buffer[CTIME_MAX];		    HTTRACE(CORE_TRACE, "Time string. Delta-time %s parsed to %ld seconds, or in local time: %s" _			    str _ (long) t _ (char *) ctime_r(&t, buffer, CTIME_MAX));#else		    HTTRACE(CORE_TRACE, "Time string. Delta-time %s parsed to %ld seconds, or in local time: %s" _			    str _ (long) t _ ctime(&t));#endif /* HT_REENTRANT */		} else {		    HTTRACE(CORE_TRACE, "Time string. Delta-time %s parsed to %ld seconds\n" _ str _ (long) t);		}	    }#endif /* HT_DEBUG */	    return t;	}    } else {	      /* Try the other format:  Wed Jun  9 01:29:59 1993 GMT */	HTTRACE(CORE_TRACE, "Format...... Wkd Mon 00 00:00:00 0000 GMT\n");	s = (char *) str;	while (*s && *s==' ') s++;	HTTRACE(CORE_TRACE, "Trying...... The Wrong time format: %s\n" _ s);	if ((int)strlen(s) < 24) {	    HTTRACE(CORE_TRACE, "ERROR....... Not a valid time format \"%s\"\n" _ s);	    return 0;	}	tm.tm_mon = make_month(s, &s);	tm.tm_mday = strtol(s, &s, 10);	tm.tm_hour = strtol(s, &s, 10);	tm.tm_min = strtol(++s, &s, 10);	tm.tm_sec = strtol(++s, &s, 10);	tm.tm_year = strtol(s, &s, 10) - 1900;    }    if (tm.tm_sec  < 0  ||  tm.tm_sec  > 59  ||	tm.tm_min  < 0  ||  tm.tm_min  > 59  ||	tm.tm_hour < 0  ||  tm.tm_hour > 23  ||	tm.tm_mday < 1  ||  tm.tm_mday > 31  ||	tm.tm_mon  < 0  ||  tm.tm_mon  > 11  ||	tm.tm_year <70  ||  tm.tm_year >120) {	HTTRACE(CORE_TRACE, "ERROR....... Parsed illegal time: %02d.%02d.%02d %02d:%02d:%02d\n" _ 	       tm.tm_mday _ tm.tm_mon+1 _ tm.tm_year _ 	       tm.tm_hour _ tm.tm_min _ tm.tm_sec);	return 0;    }#if 0#if defined(HAVE_TIMEZONE) && defined(HAVE_ALTZONE)    tm.tm_isdst = daylight;		       /* Already taken into account */    HTTRACE(CORE_TRACE, "Time string. Daylight is %s\n" _	    daylight>0 ? "on" : daylight==0 ? "off" : "unknown");#endif#else    /* Let mktime decide whether we have DST or not */    tm.tm_isdst = -1;#endif#ifdef HAVE_MKTIME    t = mktime(&tm);    t += (up ? HTUserProfile_timezone(up) : HTGetTimeZoneOffset());#else#ifdef HAVE_TIMEGM    t = timegm(&tm);#else#error "Neither mktime nor timegm defined"#endif /* HAVE_TIMEGM */#endif /* HAVE_MKTIME */    HTTRACE(CORE_TRACE, "Time string. %s parsed to %ld calendar time or `%s' in local time\n" _ 		str _ (long) t _ ctime(&t));    return t;}/***	Returns a string pointer to a static area of the current calendar**	time in RFC 1123 format, for example****		Sun, 06 Nov 1994 08:49:37 GMT****	The result can be given in both local and GMT dependent on the flag*/PUBLIC const char *HTDateTimeStr (time_t * calendar, BOOL local){    static char buf[40];#ifdef HAVE_STRFTIME    if (local) {	/*	** Solaris 2.3 has a bug so we _must_ use reentrant version	** Thomas Maslen <tmaslen@verity.com>	*/#if defined(HT_REENTRANT) || defined(SOLARIS)	struct tm loctime;	localtime_r(calendar, &loctime);	strftime(buf, 40, "%a, %d %b %Y %H:%M:%S", &loctime);#else	struct tm *loctime = localtime(calendar);	strftime(buf, 40, "%a, %d %b %Y %H:%M:%S", loctime);#endif /* SOLARIS || HT_REENTRANT */    } else {#if defined(HT_REENTRANT) || defined(SOLARIS)	struct tm gmt;	gmtime_r(calendar, &gmt);    	strftime(buf, 40, "%a, %d %b %Y %H:%M:%S GMT", &gmt);#else	struct tm *gmt = gmtime(calendar);    	strftime(buf, 40, "%a, %d %b %Y %H:%M:%S GMT", gmt);#endif /* SOLARIS || HT_REENTRANT */    }#else    if (local) {#if defined(HT_REENTRANT)	struct tm loctime;	localtime_r(calendar, &loctime);#else	struct tm *loctime = localtime(calendar);#endif /* HT_REENTRANT */	sprintf(buf,"%s, %02d %s %04d %02d:%02d:%02d",		wkdays[loctime->tm_wday],		loctime->tm_mday,		months[loctime->tm_mon],		loctime->tm_year + 1900,		loctime->tm_hour,		loctime->tm_min,		loctime->tm_sec);    } else {#if defined(HT_REENTRANT) || defined(SOLARIS)	struct tm gmt;	gmtime_r(calendar, &gmt);#else	struct tm *gmt = gmtime(calendar);#endif	sprintf(buf,"%s, %02d %s %04d %02d:%02d:%02d GMT",		wkdays[gmt->tm_wday],		gmt->tm_mday,		months[gmt->tm_mon],		gmt->tm_year + 1900,		gmt->tm_hour,		gmt->tm_min,		gmt->tm_sec);    }#endif    return buf;}/*	HTDateDirStr**	------------**	Generates a date string used in directory listings*/PUBLIC BOOL HTDateDirStr (time_t * time, char * str, int len){#ifdef HAVE_STRFTIME#if defined(HT_REENTRANT) || defined(SOLARIS)    struct tm loctime;    localtime_r(time, &loctime);    strftime(str, len, "%d-%b-%Y %H:%M", &loctime);    return YES;#else    strftime(str, len, "%d-%b-%Y %H:%M", localtime(time));    return YES;#endif /* HT_REENTRANT || SOLARIS */#else    if (len >= 16) {	struct tm *loctime = localtime(time);	sprintf(str,"%02d-%s-%02d %02d:%02d",		loctime->tm_mday,		months[loctime->tm_mon],		loctime->tm_year % 100,		loctime->tm_hour,		loctime->tm_min);	return YES;    }    return NO;#endif /* HAVE_STRFTIME */		}/* 							     	HTNumToStr**	Converts a long (byte count) to a string**	----------------------------------------**	This function was a PAIN!  In computer-world 1K is 1024 bytes**	and 1M is 1024K -- however, sprintf() still formats in base-10.**	Therefore I output only until 999, and then start using the**	next unit.  This doesn't work wrong, it's just a feature.**	The "str" must be large enough to contain the result.*/PUBLIC void HTNumToStr (unsigned long n, char * str, int len){    double size = n/1024.0;    if (len < 6) {	*str = '\0';	return;    }    if (n < 1000)	sprintf(str, "%dK", n>0 ? 1 : 0);    else if (size + 0.999 < 1000)	sprintf(str, "%dK", (int)(size + 0.5));    else if ((size /= 1024) < 9.9)	sprintf(str, "%.1fM", (size + 0.05));    else if (size < 1000)	sprintf(str, "%dM", (int)(size + 0.5));    else if ((size /= 1024) < 9.9)	sprintf(str, "%.1fG", (size + 0.05));    else	sprintf(str, "%dG", (int)(size + 0.5));}/***	Matches MIME constructions for content-types and others like**	them, for example "text/html", "text/plain". It can also match**	wild cards like "text/<star>" and "<star>/<star>. We use <star>**	instead of * in order note to make C like comments :-)*/PUBLIC BOOL HTMIMEMatch (HTAtom * tmplate, HTAtom * actual){    const char *t, *a;    char *st, *sa;    BOOL match = NO;    if (tmplate && actual && (t = HTAtom_name(tmplate))) {	if (!strcmp(t, "*"))	    return YES;	if (strchr(t, '*') &&	    (a = HTAtom_name(actual)) &&	    (st = strchr(t, '/')) && (sa = strchr(a,'/'))) {	    *sa = 0;	    *st = 0;	    if ((*(st-1)=='*' &&		 (*(st+1)=='*' || !strcasecomp(st+1, sa+1))) ||		(*(st+1)=='*' && !strcasecomp(t,a)))		match = YES;	    *sa = '/';	    *st = '/';	}        }    return match;}/*	Convert file URLs into a local representation**	---------------------------------------------**	The URL has already been translated through the rules in get_physical**	in HTAccess.c and all we need to do now is to map the path to a local**	representation, for example if must translate '/' to the ones that**	turn the wrong way ;-)**	Returns:**		OK:	local file (that must be freed by caller)**		Error:	NULL*/PUBLIC char * HTWWWToLocal (const char * url, const char * base,			    HTUserProfile * up){    if (url) {	char * access = HTParse(url, base, PARSE_ACCESS);	char * host = HTParse(url, base, PARSE_HOST);	char * path = HTParse(url, base, PARSE_PATH+PARSE_PUNCTUATION);	const char * myhost = HTUserProfile_fqdn(up);	/* Find out if this is a reference to the local file system */	if ((*access && strcmp(access, "file") && strcmp(access, "cache")) ||	     (*host && strcasecomp(host, "localhost") &&	      myhost && strcmp(host, myhost))) {	    HTTRACE(CORE_TRACE, "LocalName... Not on local file system\n");	    HT_FREE(access);	    HT_FREE(host);	    HT_FREE(path);	    return NULL;	} else {	    char *ptr;	    if ((ptr = strchr(path, ';')) || (ptr = strchr(path, '?')))		*ptr = '\0';		    /*	    ** Do whatever translation is required here in order to fit your	    ** platform _before_ the path is unescaped.	    */#ifdef VMS	    HTVMS_checkDecnet(path);#endif#ifdef WWW_MSWINDOWS	    /* An absolute pathname with logical drive */            if (*path == '/' && path[2] == ':') {		char *orig=path, *dest=path+1;		while((*orig++ = *dest++));	    /* A network host */            } else if (*host && strcasecomp(host, "localhost")) {		char * newpath = NULL;		StrAllocMCopy(&newpath, "//", host, path, NULL);		HT_FREE(path);		path = newpath;	    }	    /* Convert '/' to '\' */	    {		char *p = path;		while (*p) {		    if (*p=='/') *p='\\';		    p++;		}	    }#endif	    	    HTUnEscape(path);		  /* Take out the escaped characters */	    HTTRACE(CORE_TRACE, "Node........ `%s' means path `%s'\n" _ url _ path);	    HT_FREE(access);	    HT_FREE(host);	    return path;	}    }    return NULL;}/*	Convert a local file name into a URL**	------------------------------------**	Generates a WWW URL name from a local file name or NULL if error.**	Returns:**		OK:	local file (that must be freed by caller)**		Error:	NULL*/PUBLIC char * HTLocalToWWW (const char * local, const char * access){    char * escaped = NULL;    const char * scheme = (access && *access) ? access : "file:";     if (local && *local) {#ifdef VMS         char * unescaped = NULL;        if ((unescaped = (char *) HT_MALLOC(strlen(local) + 10)) == NULL)            HT_OUTOFMEM("HTLocalToWWW");        strcpy(unescaped, scheme);	     /* We get an absolute file name */	/* convert directory name to Unix-style syntax */	{	    char * disk = strchr (local, ':');	    char * dir = strchr (local, '[');	    if (disk) {		*disk = '\0';		strcat(unescaped, "/");		strcat(unescaped, local);	    }	    if (dir) {		char *p;		*dir = '/';	/* Convert leading '[' */		for (p = dir ; *p != ']'; ++p)		    if (*p == '.') *p = '/';		*p = '\0';	/* Cut on final ']' */		strcat(unescaped, dir);	    }	}        escaped = HTEscape(unescaped, URL_DOSFILE);        HT_FREE(unescaped);#else  /* not VMS */#ifdef WIN32        char * unescaped = NULL;        if ((unescaped = (char *) HT_MALLOC(strlen(local) + 10)) == NULL)            HT_OUTOFMEM("HTLocalToWWW");        strcpy(unescaped, scheme);	     /* We get an absolute file name */        if (strchr(local, ':')) strcat(unescaped, "/");        {            const char *p = local;            char *q = unescaped+strlen(unescaped);            while (*p) {                if (*p=='\\') {                    *q++='/';                } else                    *q++=*p;                p++;            }            *q = '\0';	}        escaped = HTEscape(unescaped, URL_DOSFILE);        HT_FREE(unescaped);#else  /* Unix */        char * escaped_path = HTEscape(local, URL_PATH);	escaped = StrAllocMCopy(&escaped, scheme, escaped_path, NULL);        HT_FREE(escaped_path);#endif /* not WIN32 */#endif /* not VMS */    }    return escaped;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品精华液2区45| 捆绑变态av一区二区三区| 欧美一级黄色大片| 欧美日韩激情一区| jlzzjlzz亚洲日本少妇| 国产欧美日韩精品a在线观看| 亚洲影院理伦片| 成人av电影在线网| 精品久久久久一区二区国产| 亚洲成人动漫在线免费观看| 成人av中文字幕| 久久新电视剧免费观看| 偷偷要91色婷婷| 色八戒一区二区三区| 国产欧美精品一区| 狠狠色综合日日| 日韩欧美国产wwwww| 亚洲自拍欧美精品| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 美女高潮久久久| 欧美午夜免费电影| 夜夜嗨av一区二区三区 | 久久97超碰色| 欧美一区二区三区婷婷月色| 亚洲欧美一区二区三区孕妇| 国产成人精品一区二| 日韩女优制服丝袜电影| 日韩不卡手机在线v区| 欧美视频日韩视频在线观看| 亚洲精品国久久99热| 色综合中文综合网| 99久久777色| 精品国产1区二区| 蜜桃视频在线一区| 精品久久久久99| 久草在线在线精品观看| 日韩精品一区二区三区四区视频 | 国产成人精品免费在线| 久久综合久久99| 国产盗摄视频一区二区三区| 久久综合色天天久久综合图片| 激情都市一区二区| 久久人人97超碰com| 国产美女视频91| 国产精品久久久久久久久久免费看| 国产寡妇亲子伦一区二区| 国产欧美日韩视频一区二区| 成人黄页在线观看| 玉足女爽爽91| 91精品在线一区二区| 免费观看在线色综合| 久久精品男人天堂av| 99久久免费精品| 亚洲午夜三级在线| 日韩一二三区不卡| 成人午夜免费电影| 亚洲尤物在线视频观看| 欧美一区二区黄| 国产成人综合网站| 一区二区三区在线高清| 91精品久久久久久蜜臀| 国产精品亚洲人在线观看| 国产精品久久久久久久午夜片| 欧洲一区在线观看| 国产乱人伦偷精品视频不卡| 亚洲视频一区二区在线观看| 5月丁香婷婷综合| 国产高清精品久久久久| 伊人夜夜躁av伊人久久| 欧美videossexotv100| proumb性欧美在线观看| 日韩国产在线观看| 亚洲天堂av一区| 精品三级在线观看| 91久久国产综合久久| 国产麻豆日韩欧美久久| 夜夜精品视频一区二区 | 成人免费视频一区| 午夜日韩在线观看| 国产精品日日摸夜夜摸av| 91精品国产色综合久久ai换脸| 成人免费毛片aaaaa**| 日韩激情视频网站| 一区二区国产盗摄色噜噜| 欧美精品一区二区三区在线播放| 91久久免费观看| 成人激情午夜影院| 国产乱人伦偷精品视频不卡| 午夜精品久久久久久| 中文字幕视频一区| 久久亚洲二区三区| 日韩精品一区国产麻豆| 在线观看日韩电影| 色综合久久久网| 成人免费毛片嘿嘿连载视频| 久久99久国产精品黄毛片色诱| 亚洲国产毛片aaaaa无费看| 国产精品少妇自拍| 国产日韩影视精品| 欧美电视剧免费观看| 欧美一区二区免费| 欧美蜜桃一区二区三区| 欧美又粗又大又爽| 91蜜桃免费观看视频| 成人一区二区三区视频| 韩国av一区二区三区在线观看| 青青青伊人色综合久久| 偷窥少妇高潮呻吟av久久免费| 亚洲蜜臀av乱码久久精品蜜桃| 国产欧美一区二区在线| 欧美tickling挠脚心丨vk| 欧美日韩黄视频| 91精品视频网| 91麻豆精品国产无毒不卡在线观看 | 欧美日韩久久久| 在线一区二区三区四区五区| 色综合天天视频在线观看| av激情亚洲男人天堂| 国产九色sp调教91| 国产精品中文字幕日韩精品| 极品销魂美女一区二区三区| 精品一区二区三区免费视频| 久久成人羞羞网站| 狠狠色丁香婷婷综合久久片| 国产在线视频精品一区| 国产精一品亚洲二区在线视频| 国产精品18久久久久久久久| 国产mv日韩mv欧美| 色中色一区二区| 欧美日韩在线三级| 欧美二区三区的天堂| 91 com成人网| 2020国产精品自拍| 日韩美女啊v在线免费观看| 亚洲人成7777| 蜜臀久久久久久久| 国产精品一区二区不卡| 99视频超级精品| 欧美亚洲国产一卡| 精品久久国产97色综合| 一区在线中文字幕| 亚洲国产成人va在线观看天堂| 免费成人在线视频观看| 从欧美一区二区三区| 欧美日韩免费观看一区二区三区| 91精品国产乱码| 亚洲国产成人午夜在线一区| 一区二区三区波多野结衣在线观看| 天涯成人国产亚洲精品一区av| 国模一区二区三区白浆| 99re成人精品视频| 欧美一区二区三区四区五区| 国产精品女人毛片| 日韩中文字幕一区二区三区| 国产麻豆成人传媒免费观看| 色哦色哦哦色天天综合| 精品黑人一区二区三区久久| 亚洲精品网站在线观看| 美女视频一区在线观看| 99久久精品国产观看| 制服丝袜av成人在线看| 国产精品久久久久久一区二区三区 | 国产乱码精品一品二品| 在线一区二区三区| 国产亚洲精品aa| 奇米精品一区二区三区在线观看一 | 国产高清在线精品| 欧美日韩亚洲另类| 成人欧美一区二区三区1314 | 成人一区二区三区在线观看| 欧美性受xxxx黑人xyx性爽| 久久久噜噜噜久噜久久综合| 亚洲综合在线五月| 国产69精品久久777的优势| 欧美一区二区啪啪| 亚洲国产一区二区视频| 91麻豆免费观看| 国产精品三级久久久久三级| 久久99这里只有精品| 欧美人狂配大交3d怪物一区| 日韩一区欧美一区| 丁香婷婷综合激情五月色| 日韩三级伦理片妻子的秘密按摩| 亚洲综合男人的天堂| 92国产精品观看| 国产欧美精品一区二区色综合| 久久99久国产精品黄毛片色诱| 欧美精品xxxxbbbb| 亚洲午夜电影在线观看| 色哟哟精品一区| 一色屋精品亚洲香蕉网站| 成人手机电影网| 国产精品污污网站在线观看| 国内精品久久久久影院薰衣草 | 狠狠久久亚洲欧美| 91麻豆精品国产91久久久久久久久| 亚洲一区二区三区视频在线播放| 91在线免费看| 一区二区三区成人| 欧美三级蜜桃2在线观看|