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

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

?? vmmvs.c

?? zip壓縮
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*  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*//*---------------------------------------------------------------------------  vmmvs.c (for both VM/CMS and MVS)  Contains:  vmmvs_open_infile()             open_outfile()             close_outfile()             close_infile()             getVMMVSexfield()             do_wild()             mapattr()             mapname()             checkdir()             check_for_newer()             stat()             version()  ---------------------------------------------------------------------------*/#define __VMMVS_C       /* identifies this source module */#define UNZIP_INTERNAL#include "unzip.h"/********************************//* Function vmmvs_open_infile() *//********************************/FILE *vmmvs_open_infile(__G)   __GDEF{   FILE *fzip;   G.tempfn = NULL;   fzip = fopen(G.zipfn, FOPR);#if 0   /* Let's try it without the convert for a while -- RG Hartwig */   if ((fzip = fopen(G.zipfn,"rb,recfm=fb")) == NULL) {      size_t cnt;      char *buf;      FILE *in, *out;      if ((buf = (char *)malloc(32768)) == NULL) return NULL;      if ((G.tempfn = tmpnam(NULL)) == NULL) return NULL;      if ((in = fopen(G.zipfn,"rb")) != NULL &&          (out = fopen(G.tempfn,"wb,recfm=fb,lrecl=1")) != NULL) {         Trace((stdout,"Converting ZIP file to fixed record format...\n"));         while (!feof(in)) {            cnt = fread(buf,1,32768,in);            if (cnt) fwrite(buf,1,cnt,out);         }      }      else {         free(buf);         fclose(out);         fclose(in);         return NULL;      }      free(buf);      fclose(out);      fclose(in);      fzip = fopen(G.tempfn,"rb,recfm=fb");      if (fzip == NULL) return NULL;      /* Update the G.ziplen value since it might have changed after         the reformatting copy. */      fseek(fzip,0L,SEEK_SET);      fseek(fzip,0L,SEEK_END);      G.ziplen = ftell(fzip);   }#endif   return fzip;}/***************************//* Function open_outfile() *//***************************/int open_outfile(__G)           /* return 1 if fail */    __GDEF{    char type[100];    char *mode = NULL;#ifdef MVS    /* Check if the output file already exists and do not overwrite its DCB */    char basefilename[PATH_MAX], *p;    FILE *exists;    /* Get the base file name, without any member name */    strcpy(basefilename, G.filename);    if ((p = strchr(basefilename, '(')) != NULL) {       if (basefilename[0] == '\'')          *p++ = '\'';       *p = '\0';    }    exists = fopen(basefilename, FOPR);    if (exists) {       if (G.pInfo->textmode)           mode = FOPWTE;       /* Text file, existing */       else           mode = FOPWE;        /* Binary file, existing */       fclose(exists);    }    else   /* continued on next line */#endif /* MVS */    if (G.pInfo->textmode) {        if (mode == NULL)           mode = FOPWT;    } else if (G.lrec.extra_field_length > 0 && G.extra_field != NULL) {        unsigned lef_len = (unsigned)(G.lrec.extra_field_length);        uch *lef_buf = G.extra_field;        while (lef_len > EB_HEADSIZE) {            unsigned eb_id = makeword(&lef_buf[EB_ID]);            unsigned eb_dlen = makeword(&lef_buf[EB_LEN]);            if (eb_dlen > (lef_len - EB_HEADSIZE)) {                /* Discovered some extra field inconsistency! */                TTrace((stderr,                        "open_outfile: block length %u > rest lef_size %u\n",                        eb_dlen, lef_len - EB_HEADSIZE));                break;            }            if ((eb_id == EF_VMCMS || eb_id == EF_MVS) &&                (getVMMVSexfield(type, lef_buf, eb_dlen) > 0)) {                mode = type;                break;            }            /* Skip this extra field block */            lef_buf += (eb_dlen + EB_HEADSIZE);            lef_len -= (eb_dlen + EB_HEADSIZE);        }    }    if (mode == NULL) mode = FOPW;    Trace((stderr, "Output file='%s' opening with '%s'\n", G.filename, mode));    if ((G.outfile = fopen(G.filename, mode)) == NULL) {        Info(slide, 0x401, ((char *)slide, "\nerror:  cannot create %s\n",             FnFilter1(G.filename)));        Trace((stderr, "error %d: '%s'\n", errno, strerror(errno)));        return 1;    }    return 0;} /* end function open_outfile() *//****************************//* Function close_outfile() *//****************************/void close_outfile(__G)   __GDEF{   fclose(G.outfile);} /* end function close_outfile() *//***************************//* Function close_infile() *//***************************/void close_infile(__G)   __GDEF{   fclose(G.zipfd);   /* If we're working from a temp file, erase it now */   if (G.tempfn)      remove(G.tempfn);} /* end function close_infile() *//******************************//* Function getVMMVSexfield() *//******************************/extent getVMMVSexfield(type, ef_block, datalen)    char *type;    uch *ef_block;    unsigned datalen;{    fldata_t *fdata = (fldata_t *) &ef_block[4];    if (datalen < sizeof(fldata_t))        return 0;    strcpy(type, "w");    strcat(type,  fdata->__openmode == __TEXT   ? ""                 :fdata->__openmode == __BINARY ? "b"                 :fdata->__openmode == __RECORD ? "b,type=record"                 :                                "");    strcat(type, ",recfm=");    strcat(type,  fdata->__recfmF? "F"                 :fdata->__recfmV? "V"                 :fdata->__recfmU? "U"                 :                 "?");    if (fdata->__recfmBlk) strcat(type, "B");    if (fdata->__recfmS)   strcat(type, "S");    if (fdata->__recfmASA) strcat(type, "A");    if (fdata->__recfmM)   strcat(type, "M");    sprintf(type+strlen(type), ",lrecl=%ld", fdata->__recfmV                                              ? fdata->__maxreclen+4                                              : fdata->__maxreclen);#ifdef VM_CMS    /* For CMS, use blocksize for FB files only */    if (fdata->__recfmBlk)       sprintf(type+strlen(type), ",blksize=%ld", fdata->__blksize);#else    /* For MVS, always use blocksize */    sprintf(type+strlen(type), ",blksize=%ld", fdata->__blksize);#endif    return strlen(type);} /* end function getVMMVSexfield() */#ifndef SFX/**********************//* Function do_wild() */   /* for porting:  dir separator; match(ignore_case) *//**********************/char *do_wild(__G__ wld)    __GDEF    ZCONST char *wld;      /* only used first time on a given dir */{    static int First = 0;    static char filename[256];    if (First == 0) {       First = 1;       strcpy( filename, wld );       return filename;    }    else       return (char *)NULL;} /* end function do_wild() */#endif /* !SFX *//************************//*  Function mapattr()  *//************************/int mapattr(__G)     __GDEF{    return 0;}/************************//*  Function mapname()  *//************************/int mapname(__G__ renamed)    __GDEF    int renamed;/* * returns: *  MPN_OK          - no problem detected *  MPN_INF_TRUNC   - caution (truncated filename) *  MPN_INF_SKIP    - info "skip entry" (dir doesn't exist) *  MPN_ERR_SKIP    - error -> skip entry *  MPN_ERR_TOOLONG - error -> path is too long *  MPN_NOMEM       - error (memory allocation failed) -> skip entry *  [also MPN_VOL_LABEL, MPN_CREATED_DIR] */{    char newname[FILNAMSIZ], *lbar;#ifdef MVS    char *pmember;#endif    int name_changed = MPN_OK;    if (G.pInfo->vollabel)        return MPN_VOL_LABEL;   /* can't set disk volume labels in CMS_MVS */#ifdef MVS    /* Remove bad characters for MVS from the filename */    while ((lbar = strpbrk(G.filename, "_+-")) != NULL) {       /* Must use memmove() here because data overlaps.  */       /* strcpy() gives undefined behavior in this case. */       memmove(lbar, lbar+1, strlen(lbar));       name_changed = MPN_INF_TRUNC;    }#endif    /* Remove bad characters for MVS/CMS from the filename */    while ((lbar = strpbrk(G.filename, "()")) != NULL) {       memmove(lbar, lbar+1, strlen(lbar));       name_changed = MPN_INF_TRUNC;    }#ifdef VM_CMS    if ((lbar = strrchr(G.filename, '/')) != NULL) {        strcpy(newname, lbar+1);        Trace((stderr, "File '%s' renamed to '%s'\n", G.filename, newname));        strcpy(G.filename, newname);        name_changed = MPN_INF_TRUNC;    }#else /* MVS */    if ((pmember = strrchr(G.filename, '/')) == NULL)        pmember = G.filename;    else        pmember++;    /* search for extension in file name */    if ((lbar = strrchr(pmember, '.')) != NULL) {        *lbar++ = '\0';        strcpy(newname, pmember);        strcpy(pmember, lbar);        strcat(pmember, "(");        strcat(pmember, newname);        strcat(pmember, ")");    }    /* Remove all 'internal' dots '.', to prevent false consideration as     * MVS path delimiters! */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合成人在线视频| 亚洲一区二区在线免费观看视频| 91.xcao| 色成人在线视频| 91网站黄www| 91视频观看视频| 一本久久a久久精品亚洲| 色乱码一区二区三区88| 91成人看片片| 欧美日韩电影一区| 在线不卡中文字幕| 日韩欧美在线网站| 精品久久久久久久久久久久久久久| 日韩欧美一级片| 26uuu精品一区二区| 久久综合精品国产一区二区三区 | 日韩欧美一二三四区| 欧美一区二区视频观看视频| 欧美一区二区三区视频| 欧美成va人片在线观看| 国产亚洲综合性久久久影院| 国产日韩欧美麻豆| 最新国产精品久久精品| 亚洲另类色综合网站| 亚洲第一二三四区| 日本va欧美va欧美va精品| 国内外成人在线视频| 国产 欧美在线| 色一情一乱一乱一91av| 在线电影欧美成精品| 精品人伦一区二区色婷婷| 国产视频911| 亚洲人成网站精品片在线观看| 亚洲国产一二三| 久久99精品久久久久久国产越南 | 日韩电影免费在线| 国产在线精品不卡| 91视频免费看| 91麻豆精品久久久久蜜臀| 国产欧美日韩视频一区二区| 亚洲丝袜精品丝袜在线| 日本大胆欧美人术艺术动态| 国产激情精品久久久第一区二区| 色婷婷国产精品综合在线观看| 91精品欧美一区二区三区综合在| 久久日一线二线三线suv| 亚洲欧美欧美一区二区三区| 日本vs亚洲vs韩国一区三区| 成人激情黄色小说| 欧美一区二区精品| 亚洲色图20p| 久久99久久99小草精品免视看| 91在线视频在线| 欧美一二区视频| 亚洲女人****多毛耸耸8| 久久丁香综合五月国产三级网站| 色久综合一二码| www久久精品| 天堂av在线一区| 成人性视频免费网站| 91精品在线免费观看| 国产精品视频一区二区三区不卡| 日韩精品一级中文字幕精品视频免费观看| 国产伦精品一区二区三区免费迷| 欧洲色大大久久| 日本一区二区成人| 免费一级片91| 在线观看网站黄不卡| 中文字幕欧美日韩一区| 日韩av电影免费观看高清完整版 | 欧美日韩一区国产| 国产精品久久久久久久蜜臀| 日本aⅴ亚洲精品中文乱码| 在线视频国内一区二区| 国产婷婷精品av在线| 全部av―极品视觉盛宴亚洲| 91成人免费网站| 亚洲欧美在线另类| 国产精品一线二线三线| 欧美一区二区女人| 亚洲精品亚洲人成人网 | 日韩三级视频在线看| 一区二区三区丝袜| 成人av网站在线观看免费| 2017欧美狠狠色| 蜜臀av亚洲一区中文字幕| 欧美日韩午夜在线| ...xxx性欧美| 91在线观看美女| 国产精品午夜免费| 福利电影一区二区三区| 欧美精品一区二区精品网| 秋霞电影网一区二区| 欧美色图一区二区三区| 一区二区三区资源| 91美女在线视频| 亚洲美女视频一区| 97se亚洲国产综合自在线观| 国产精品丝袜在线| 成人黄色小视频在线观看| 欧美国产一区二区在线观看 | 91精品国产欧美日韩| 亚洲国产精品久久不卡毛片| 欧美性猛交xxxx乱大交退制版| 亚洲欧美电影一区二区| 日本乱人伦一区| 一区二区三区四区不卡在线| 欧美影片第一页| 亚洲大片在线观看| 日韩一区二区三区观看| 免费不卡在线观看| 欧美精品一区二区久久婷婷| 国产一区二区福利视频| 欧美国产1区2区| 成人国产免费视频| 亚洲精品成人在线| 欧美视频你懂的| 男女激情视频一区| 久久久高清一区二区三区| 成人午夜碰碰视频| 艳妇臀荡乳欲伦亚洲一区| 欧美三日本三级三级在线播放| 丝瓜av网站精品一区二区| 91精品国产美女浴室洗澡无遮挡| 美女视频黄a大片欧美| 国产亚洲欧美一区在线观看| 成人18视频日本| 亚洲综合无码一区二区| 69久久99精品久久久久婷婷| 久草精品在线观看| 国产精品视频yy9299一区| 一本色道亚洲精品aⅴ| 亚洲成人免费视频| 精品不卡在线视频| 色综合久久久久| 视频一区二区欧美| 精品欧美一区二区三区精品久久 | 91香蕉国产在线观看软件| 婷婷久久综合九色综合绿巨人 | 久久久久久电影| 色综合久久久久久久久| 日韩av电影天堂| 国产精品人妖ts系列视频| 日本丰满少妇一区二区三区| 免费在线观看成人| 亚洲欧美色一区| 91精品欧美综合在线观看最新| 成人三级伦理片| 香蕉av福利精品导航| 国产亚洲一区二区三区四区| 91官网在线观看| 国产乱子轮精品视频| 色欧美88888久久久久久影院| 91天堂素人约啪| 欧美裸体bbwbbwbbw| 欧美一区二区在线看| 欧美成人在线直播| 久久久久99精品国产片| 亚洲一二三专区| 欧美二区三区91| 婷婷六月综合网| 国产999精品久久| 日韩视频在线一区二区| 日本一区二区视频在线| 日韩电影在线一区二区三区| 9191成人精品久久| 久久久91精品国产一区二区精品| 久久久久久免费| 亚洲嫩草精品久久| 不卡电影一区二区三区| 欧美在线制服丝袜| 国产精品久久网站| 丝袜亚洲另类欧美综合| 国产成人亚洲精品青草天美 | 国产精品久久综合| 蜜臀精品一区二区三区在线观看 | 日日欢夜夜爽一区| www.欧美日韩国产在线| 久久精品人人做人人爽人人| 五月综合激情日本mⅴ| 97se亚洲国产综合自在线| 欧美一级黄色录像| 日韩激情中文字幕| 欧美精品日日鲁夜夜添| 国产精品毛片大码女人| 久久精品国产一区二区三区免费看 | 久久综合色播五月| 一区二区三区免费看视频| 狠狠狠色丁香婷婷综合久久五月| 欧美亚洲动漫精品| 国产亚洲婷婷免费| 懂色av噜噜一区二区三区av| 精品久久99ma| 五月婷婷久久丁香| 一本色道a无线码一区v| 亚洲免费电影在线| 91视频免费看| 同产精品九九九| 日韩丝袜美女视频| 免费高清在线一区|