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

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

?? win32.c

?? zip壓縮
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*  Copyright (c) 1990-2002 Info-ZIP.  All rights reserved.  See the accompanying file LICENSE, version 2000-Apr-09 or later  (the contents of which are also included in unzip.h) for terms of use.  If, for some reason, all these files are missing, the Info-ZIP license  also may be found at:  ftp://ftp.info-zip.org/pub/infozip/license.html*//*---------------------------------------------------------------------------  win32.c  32-bit Windows-specific (NT/95) routines for use with Info-ZIP's UnZip 5.3  and later.  Contains:  GetLoadPath()             Opendir()             Readdir()             Closedir()             process_defer_NT()   process any deferred items             SetSD()              set security descriptor on file             EvalExtraFields()    evaluate and process and extra field NOW             IsWinNT()            indicate type of WIN32 platform             test_NTSD()          test integrity of NT security data             utime2FileTime()             FStampIsLocTime()             FileTime2utime()             VFatFileTime2utime()             UTCtime2Localtime()             NTtzbugWorkaround()             getNTfiletime()             SetFileSize()             close_outfile()             stamp_file()             isfloppy()             NTQueryVolInfo()             IsVolumeOldFAT()             do_wild()             mapattr()             mapname()             maskDOSdevice()             map2fat()             checkdir()             dateformat()             version()             screensize()             zstat_win32()             conv_to_rule()             GetPlatformLocalTimezone()             getch_win32()  ---------------------------------------------------------------------------*/#define UNZIP_INTERNAL#include "../unzip.h"#include <windows.h>    /* must be AFTER unzip.h to avoid struct G problems */#ifdef __RSXNT__#  include "../win32/rsxntwin.h"#endif#include "../win32/nt.h"#ifndef FUNZIP          /* most of this file is not used with fUnZip */#if (defined(__EMX__) || defined(__CYGWIN__))#  define MKDIR(path,mode)   mkdir(path,mode)#else#  define MKDIR(path,mode)   mkdir(path)#endif#ifdef HAVE_WORKING_DIRENT_H#  undef HAVE_WORKING_DIRENT_H#endif/* The emxrtl dirent support of (__GO32__ || __EMX__) converts to lowercase! */#if defined(__CYGWIN__)#  define HAVE_WORKING_DIRENT_H#endif#ifndef SFX#  ifdef HAVE_WORKING_DIRENT_H#    include <dirent.h>         /* use readdir() */#    define zdirent  dirent#    define zDIR     DIR#    define Opendir  opendir#    define Readdir  readdir#    define Closedir closedir#  else /* !HAVE_WORKING_DIRENT_H */     typedef struct zdirent {         char    reserved [21];         char    ff_attrib;         short   ff_ftime;         short   ff_fdate;         long    size;         char    d_name[MAX_PATH];         int     d_first;         HANDLE  d_hFindFile;     } zDIR;     static zDIR           *Opendir  (const char *n);     static struct zdirent *Readdir  (zDIR *d);     static void            Closedir (zDIR *d);#  endif /* ?HAVE_WORKING_DIRENT_H */#endif /* !SFX *//* Function prototypes */#ifdef NTSD_EAS   static int  SetSD(__GPRO__ char *path, PVOLUMECAPS VolumeCaps,                     uch *eb_ptr, unsigned eb_len);   static int  EvalExtraFields(__GPRO__ char *path, uch *ef_ptr,                               unsigned ef_len);#endif#if (defined(USE_EF_UT_TIME) || defined(NT_TZBUG_WORKAROUND) || \     defined(TIMESTAMP))   static void utime2FileTime(time_t ut, FILETIME *pft);   static int FStampIsLocTime(__GPRO__ const char *path);#endif /* USE_EF_UT_TIME || NT_TZBUG_WORKAROUND || TIMESTAMP */#ifdef NT_TZBUG_WORKAROUND   static int FileTime2utime(const FILETIME *pft, time_t *ut);#ifdef W32_STAT_BANDAID   static int VFatFileTime2utime(const FILETIME *pft, time_t *ut);#endif   static time_t UTCtime2Localtime(time_t utctime);   static void NTtzbugWorkaround(time_t ut, FILETIME *pft);#endif /* NT_TZBUG_WORKAROUND */static int  getNTfiletime   (__GPRO__ FILETIME *pModFT, FILETIME *pAccFT,                             FILETIME *pCreFT);static int  isfloppy        (int nDrive);static int  NTQueryVolInfo  (__GPRO__ const char *name);static int  IsVolumeOldFAT  (__GPRO__ const char *name);static void maskDOSdevice   (__GPRO__ char *pathcomp);static void map2fat         (char *pathcomp, char **pEndFAT);#ifdef __MINGW32__   int _CRT_glob = 0;   /* suppress command line globbing by C RTL */#endif#ifdef ACORN_FTYPE_NFS/* Acorn bits for NFS filetyping */typedef struct {  uch ID[2];  uch size[2];  uch ID_2[4];  uch loadaddr[4];  uch execaddr[4];  uch attr[4];} RO_extra_block;#endif /* ACORN_FTYPE_NFS *//* static int created_dir;      */     /* used by mapname(), checkdir() *//* static int renamed_fullpath; */     /* ditto *//* static int fnlen;            */     /* ditto *//* static unsigned nLabelDrive; */     /* ditto */extern char Far TruncNTSD[];    /* in extract.c */#ifdef SFX/**************************//* Function GetLoadPath() *//**************************/char *GetLoadPath(__GPRO){#ifdef MSC    extern char *_pgmptr;    return _pgmptr;#else    /* use generic API call */    GetModuleFileName(NULL, G.filename, FILNAMSIZ-1);    _ISO_INTERN(G.filename);    /* translate to codepage of C rtl's stdio */    return G.filename;#endif} /* end function GetLoadPath() */#else /* !SFX */#ifndef HAVE_WORKING_DIRENT_H/**********************/        /* Borrowed from ZIP 2.0 sources            *//* Function Opendir() */        /* Difference: no special handling for      *//**********************/        /*             hidden or system files.      */static zDIR *Opendir(n)    const char *n;          /* directory to open */{    zDIR *d;                /* malloc'd return value */    char *p;                /* malloc'd temporary string */    WIN32_FIND_DATA fd;    extent len = strlen(n);    /* Start searching for files in directory n */    if ((d = (zDIR *)malloc(sizeof(zDIR))) == NULL ||        (p = malloc(strlen(n) + 5)) == NULL)    {        if (d != (zDIR *)NULL)            free((void *)d);        return (zDIR *)NULL;    }    INTERN_TO_ISO(n, p);    if (len > 0) {        if (p[len-1] == ':')            p[len++] = '.';     /* x: => x:. */        else if (p[len-1] == '/' || p[len-1] == '\\')            --len;              /* foo/ => foo */    }    strcpy(p+len, "/*");    if (INVALID_HANDLE_VALUE == (d->d_hFindFile = FindFirstFile(p, &fd))) {        free((zvoid *)d);        free((zvoid *)p);        return NULL;    }    strcpy(d->d_name, fd.cFileName);    free((zvoid *)p);    d->d_first = 1;    return d;} /* end of function Opendir() *//**********************/        /* Borrowed from ZIP 2.0 sources            *//* Function Readdir() */        /* Difference: no special handling for      *//**********************/        /*             hidden or system files.      */static struct zdirent *Readdir(d)    zDIR *d;                    /* directory stream from which to read */{    /* Return pointer to first or next directory entry, or NULL if end. */    if ( d->d_first )        d->d_first = 0;    else    {        WIN32_FIND_DATA fd;        if ( !FindNextFile(d->d_hFindFile, &fd) )            return NULL;        ISO_TO_INTERN(fd.cFileName, d->d_name);    }    return (struct zdirent *)d;} /* end of function Readdir() *//***********************//* Function Closedir() */       /* Borrowed from ZIP 2.0 sources *//***********************/static void Closedir(d)    zDIR *d;                    /* directory stream to close */{    FindClose(d->d_hFindFile);    free(d);}#endif /* !HAVE_WORKING_DIRENT_H */#endif /* ?SFX */#ifdef NTSD_EAS/*********************************//*  Function process_defer_NT()  *//*********************************/void process_defer_NT(__G)    __GDEF{    /* process deferred items */    DWORD dir, bytes;    DWORD dirfail, bytesfail;    ProcessDefer(&dir, &bytes, &dirfail, &bytesfail);    if (!uO.tflag && (uO.qflag < 2)) {        if (dir)            Info(slide, 0, ((char *)slide,              "    updated: %lu directory entries with %lu bytes security",              (ulg)dir, (ulg)bytes));        if (dirfail)            Info(slide, 0, ((char *)slide,              "     failed: %lu directory entries with %lu bytes security",              (ulg)dirfail, (ulg)bytesfail));    }}/**********************//*  Function SetSD()  */   /* return almost-PK errors *//**********************/static int SetSD(__G__ path, VolumeCaps, eb_ptr, eb_len)    __GDEF    char *path;    PVOLUMECAPS VolumeCaps;    uch *eb_ptr;    unsigned eb_len;{    ulg ntsd_ucSize;    uch *security_data;    int error;    if (eb_ptr == NULL || eb_len < EB_NTSD_L_LEN)        return PK_OK;  /* not a valid NTSD extra field:  assume OK */    /* check if we know how to handle this version */    if (*(eb_ptr + (EB_HEADSIZE+EB_NTSD_VERSION)) > (uch)EB_NTSD_MAX_VER)        return PK_OK;    ntsd_ucSize = makelong(eb_ptr + (EB_HEADSIZE+EB_UCSIZE_P));    if (ntsd_ucSize > 0L && eb_len <= (EB_NTSD_L_LEN + EB_CMPRHEADLEN))        return IZ_EF_TRUNC;               /* no compressed data! */    /* allocate storage for uncompressed data */    security_data = (uch *)malloc((extent)ntsd_ucSize);    if (security_data == (uch *)NULL)        return PK_MEM4;    error = memextract(__G__ security_data, ntsd_ucSize,      (eb_ptr + (EB_HEADSIZE+EB_NTSD_L_LEN)), (ulg)(eb_len - EB_NTSD_L_LEN));    if (error == PK_OK) {        if (SecuritySet(path, VolumeCaps, security_data)) {            error = PK_COOL;            if (!uO.tflag && (uO.qflag < 2) &&                (!(VolumeCaps->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)))                Info(slide, 0, ((char *)slide, " (%ld bytes security)",                  ntsd_ucSize));        }    }    free(security_data);    return error;}/********************************/   /* scan extra fields for something *//*  Function EvalExtraFields()  */   /*  we happen to know *//********************************/static int EvalExtraFields(__G__ path, ef_ptr, ef_len)    __GDEF    char *path;    uch *ef_ptr;    unsigned ef_len;{    int rc = PK_OK;    if (!uO.X_flag)        return PK_OK;  /* user said don't process ACLs; for now, no other                          extra block types are handled here */    while (ef_len >= EB_HEADSIZE)    {        unsigned eb_id = makeword(EB_ID + ef_ptr);        unsigned eb_len = makeword(EB_LEN + ef_ptr);        if (eb_len > (ef_len - EB_HEADSIZE)) {            /* discovered some extra field inconsistency! */            Trace((stderr,              "EvalExtraFields: block length %u > rest ef_size %u\n", eb_len,

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产亚洲在线| 91国产免费观看| 美女久久久精品| 亚洲成人免费在线观看| 一区二区三区日韩在线观看| 亚洲精品乱码久久久久| 亚洲三级理论片| 亚洲v中文字幕| 久久成人久久鬼色| 国产精品一区二区在线观看不卡| 国产自产v一区二区三区c| 国产一区二区三区av电影| 高清在线观看日韩| 91啦中文在线观看| 欧美日韩国产高清一区二区| 日韩限制级电影在线观看| 久久久久久久久99精品| 中文字幕人成不卡一区| 亚洲综合成人网| 久色婷婷小香蕉久久| 国产精一区二区三区| 国产一区亚洲一区| 色综合网站在线| 日韩一区国产二区欧美三区| 国产欧美日本一区视频| 亚洲一区二区三区爽爽爽爽爽| 五月婷婷另类国产| 国产成人精品一区二区三区网站观看| 成人av在线影院| 91精品欧美久久久久久动漫| 久久九九久久九九| 亚洲日本免费电影| 国产一区二区三区黄视频 | 中文字幕一区二区三区av| 亚洲欧美一区二区久久| 麻豆精品蜜桃视频网站| 色综合久久久久久久久| 精品国产一二三| 午夜精品免费在线观看| 风间由美一区二区av101| 欧美精品xxxxbbbb| 亚洲男人天堂av| 国产最新精品精品你懂的| 欧美色手机在线观看| 国产精品女主播av| 久久97超碰国产精品超碰| 欧美调教femdomvk| 中文字幕日韩av资源站| 国产乱人伦偷精品视频不卡 | 精品亚洲成a人在线观看| 91在线观看高清| 久久理论电影网| 免费一级欧美片在线观看| 色噜噜狠狠色综合欧洲selulu| 精品成a人在线观看| 日产精品久久久久久久性色| 日本韩国精品在线| 欧美xxxxxxxxx| 日韩精品一二三| 欧美午夜精品理论片a级按摩| 国产亲近乱来精品视频| 久久se这里有精品| 日韩欧美综合一区| 蜜桃久久av一区| 欧美一区欧美二区| 男男视频亚洲欧美| 欧美电影在线免费观看| 午夜精品福利一区二区三区av| 91网站最新地址| 亚洲欧美激情插| 一本色道a无线码一区v| 国产精品久久三| 97久久精品人人澡人人爽| 日韩美女久久久| 91一区二区在线观看| 亚洲四区在线观看| 在线观看免费一区| 亚洲国产美女搞黄色| 欧美艳星brazzers| 婷婷久久综合九色国产成人| 欧美片在线播放| 紧缚捆绑精品一区二区| 2022国产精品视频| 国产91精品久久久久久久网曝门| 中文天堂在线一区| 在线免费亚洲电影| 日韩黄色小视频| 久久综合色综合88| 成人国产一区二区三区精品| 亚洲日穴在线视频| 7777精品伊人久久久大香线蕉完整版 | 中文字幕一区在线| 色综合久久中文综合久久97 | 日韩精品影音先锋| 国产美女视频91| 亚洲欧美综合在线精品| 欧美日韩在线综合| 无码av免费一区二区三区试看| 日韩欧美视频在线| 粉嫩欧美一区二区三区高清影视| 椎名由奈av一区二区三区| 欧美性大战久久久久久久蜜臀| 免费在线观看一区| 国产日韩三级在线| 8v天堂国产在线一区二区| 国产在线播放一区二区三区| 亚洲婷婷国产精品电影人久久| 欧美日本韩国一区二区三区视频| 韩国成人福利片在线播放| 亚洲天堂成人网| 精品久久久久久久人人人人传媒| www.综合网.com| 欧美aⅴ一区二区三区视频| 中文字幕av一区二区三区高| 欧美日韩国产大片| www.欧美精品一二区| 麻豆精品一区二区av白丝在线| 中文字幕一区二区三区精华液| 91精品国产综合久久久蜜臀图片| 国产成人99久久亚洲综合精品| 亚洲gay无套男同| ㊣最新国产の精品bt伙计久久| 欧美一区二区三区婷婷月色| 不卡视频免费播放| 老司机免费视频一区二区三区| 一区二区三区 在线观看视频| 精品sm捆绑视频| 欧美久久久久久久久| 色婷婷亚洲综合| 懂色中文一区二区在线播放| 美腿丝袜亚洲三区| 日韩中文字幕91| 亚洲国产视频网站| 国产精品国产馆在线真实露脸| 久久人人超碰精品| 欧美大片国产精品| 日韩一区二区麻豆国产| 欧美日韩电影一区| 欧美三级电影网| 欧美性猛片xxxx免费看久爱| 国产精品91一区二区| 免费观看一级欧美片| 五月天久久比比资源色| 亚洲精品你懂的| 综合久久久久久久| 亚洲天堂成人网| 亚洲美女在线国产| 亚洲丝袜精品丝袜在线| 亚洲图片你懂的| 亚洲图片另类小说| 亚洲综合色网站| 亚洲国产日韩一级| 午夜欧美视频在线观看| 日本成人中文字幕| 久久国产精品99精品国产| 精品一区二区三区不卡| 国产精品亚洲а∨天堂免在线| 国产综合久久久久久鬼色| 青青草精品视频| 韩国三级电影一区二区| 国产精品亚洲综合一区在线观看| 久久精品国内一区二区三区| 国产自产2019最新不卡| 懂色av一区二区夜夜嗨| 一本高清dvd不卡在线观看| 在线观看亚洲精品视频| 欧美一级高清大全免费观看| 精品国产乱码91久久久久久网站| 久久久蜜桃精品| 亚洲免费观看高清| 男女男精品网站| 波多野结衣中文字幕一区| 一本大道综合伊人精品热热| 欧美蜜桃一区二区三区| 91.xcao| 亚洲国产成人一区二区三区| 亚洲乱码国产乱码精品精的特点| 亚洲影院理伦片| 国产毛片精品一区| 在线精品视频免费观看| 日韩女优电影在线观看| 国产欧美视频在线观看| 亚洲高清免费一级二级三级| 精品影视av免费| 在线这里只有精品| 欧美精品一区男女天堂| 亚洲日本va在线观看| 国产专区欧美精品| 欧美综合视频在线观看| 久久久国产一区二区三区四区小说 | 亚洲欧美日韩一区二区| 日韩在线一二三区| 99热这里都是精品| 欧美xxxx老人做受| 一区二区免费在线播放| 国产成人欧美日韩在线电影| 欧美肥妇毛茸茸| 亚洲色大成网站www久久九九| 精品一区二区三区免费播放| 欧美日韩一区二区三区四区 |