home *** CD-ROM | disk | FTP | other *** search
/ RISC DISC 2 / RISC_DISC_2.iso / pd_share / utilities / cli / infozip / zip / zip_doc < prev    next >
Encoding:
Text File  |  1995-04-05  |  26.5 KB  |  613 lines

  1.  
  2. ZIP(1L)           MISC. REFERENCE MANUAL PAGES            ZIP(1L)
  3.  
  4. NAME
  5.      zip, zipcloak, zipnote,  zipsplit  -  package  and  compress
  6.      (archive) files
  7.  
  8. SYNOPSIS
  9.      zip [-cdDeEfFghjklLmoqrSTuvVwXyz@$] [-b path]  [-n suffixes]
  10.      [-t mmddyy] [ zipfile [ file1 file2 ...]] [-xi list]
  11.  
  12.      zipcloak [-dhL] [-b path] zipfile
  13.  
  14.      zipnote [-hwL] [-b path] zipfile
  15.  
  16.      zipsplit [-hiLpst] [-n size] [-b path] zipfile
  17.  
  18. DESCRIPTION
  19.      zip is a compression and file packaging  utility  for  Unix,
  20.      VMS,  MSDOS,  OS/2,  Windows NT, Minix, Atari and Macintosh.
  21.      It is analogous to a combination of the UNIX commands tar(1)
  22.      and  compress(1)  and  is compatible with PKZIP (Phil Katz's
  23.      ZIP for MSDOS systems).
  24.  
  25.      A companion program (unzip(1L)), unpacks zip archives.   The
  26.      zip  and  unzip(1L) programs can work with archives produced
  27.      by PKZIP, and PKZIP and PKUNZIP can work with archives  pro-
  28.      duced  by  zip.   zip version 2.0.1 is compatible with PKZIP
  29.      2.04.  Note that PKUNZIP 1.10 cannot extract files  produced
  30.      by  PKZIP  2.04  or zip 2.0.1. You must use PKUNZIP 2.04g or
  31.      unzip 5.0p1 (or later versions) to extract them.
  32.  
  33.      For a brief help on zip and unzip, run each without specify-
  34.      ing any parameters on the command line.
  35.  
  36.      The program is useful for packaging a set of files for  dis-
  37.      tribution; for archiving files; and for saving disk space by
  38.      temporarily compressing unused files or directories.
  39.  
  40.      The zip program puts one or more  compressed  files  into  a
  41.      single  zip  archive, along with information about the files
  42.      (name, path, date, time of  last  modification,  protection,
  43.      and  check information to verify file integrity).  An entire
  44.      directory structure can be packed into a zip archive with  a
  45.      single command.  Compression ratios of 2:1 to 3:1 are common
  46.      for text files.  zip has one compression method  (deflation)
  47.      and can also store files without compression.  zip automati-
  48.      cally chooses the better of the two  for  each  file  to  be
  49.      compressed.
  50.  
  51.      When given the name of an existing  zip  archive,  zip  will
  52.      replace  identically named entries in the zip archive or add
  53.      entries for new names.  For example, if foo.zip  exists  and
  54.      contains foo/file1 and foo/file2, and the directory foo con-
  55.      tains the files foo/file1 and foo/file3, then:
  56.  
  57.           zip -r foo foo
  58.  
  59.      will replace foo/file1  in  foo.zip  and  add  foo/file3  to
  60.      foo.zip.  After this, foo.zip contains foo/file1, foo/file2,
  61.      and foo/file3, with foo/file2 unchanged from before.
  62.  
  63.      If the file list is specified as -@, zip takes the  list  of
  64.      input  files  from  standard input.  Under UNIX, this option
  65.      can be used to  powerful  effect  in  conjunction  with  the
  66.      find(1)  command.   For example, to archive all the C source
  67.      files in the current directory and its subdirectories:
  68.  
  69.           find . -name "*.[ch]" -print | zip source -@
  70.  
  71.      (note that the pattern must be quoted to keep the shell from
  72.      expanding  it).  zip will also accept a single dash ("-") as
  73.      the zip file name, in which case it will write the zip  file
  74.      to  standard  output,  allowing  the  output  to be piped to
  75.      another program. For example:
  76.  
  77.           zip -r - . | dd of=/dev/nrst0 obs=16k
  78.  
  79.      would write the zip output  directly  to  a  tape  with  the
  80.      specified  block  size  for  the  purpose  of backing up the
  81.      current directory.
  82.  
  83.      zip also accepts a single dash ("-") as the name of  a  file
  84.      to  be  compressed, in which case it will read the file from
  85.      standard input, allowing zip to take input from another pro-
  86.      gram. For example:
  87.  
  88.           tar cf - . | zip backup -
  89.  
  90.      would compress the output of the tar command for the purpose
  91.      of backing up the current directory. This generally produces
  92.      better compression than the previous example  using  the  -r
  93.      option, because zip can take advantage of redundancy between
  94.      files. The backup can be restored using the command
  95.  
  96.           unzip -p backup | tar xf -
  97.  
  98.      When no zip file name is given and stdout is not a terminal,
  99.      zip acts as a filter, compressing standard input to standard
  100.      output.  For example,
  101.  
  102.           tar cf - . | zip | dd of=/dev/nrst0 obs=16k
  103.  
  104.      is equivalent to
  105.  
  106.           tar cf - . | zip - - | dd of=/dev/nrst0 obs=16k
  107.  
  108.      zip archives created in this manner can  be  extracted  with
  109.      the  program  funzip which is provided in the unzip package,
  110.      or by gunzip which is provided  in  the  gzip  package.  For
  111.      example:
  112.  
  113.      dd if=/dev/nrst0  ibs=16k | funzip | tar xvf -
  114.  
  115.      When changing an existing zip archive, zip will write a tem-
  116.      porary  file with the new contents, and only replace the old
  117.      one when the process of creating the new  version  has  been
  118.      completed without error.
  119.  
  120.      If the name of the zip archive does not  contain  an  exten-
  121.      sion,  the extension .zip is added. If the name already con-
  122.      tains an extension other than .zip the existing extension is
  123.      kept unchanged.
  124.  
  125. OPTIONS
  126.      -b path
  127.           Use the specified path for the temporary  zip  archive.
  128.           For example:
  129.  
  130.                zip -b /tmp stuff *
  131.  
  132.           will put the temporary zip  archive  in  the  directory
  133.           /tmp,  copying  over stuff.zip to the current directory
  134.           when done. This option is only useful when updating  an
  135.           existing  archive,  and the file system containing this
  136.           old archive does not have enough space to hold both old
  137.           and new archive at the same time.
  138.  
  139.      -c   Add one-line comments for each file.   File  operations
  140.           (adding, updating) are done first, and the user is then
  141.           prompted for a one-line comment for each  file.   Enter
  142.           the  comment  followed by return, or just return for no
  143.           comment.
  144.  
  145.      -d   Remove (delete) entries from a zip archive.  For  exam-
  146.           ple:
  147.  
  148.                zip -d foo foo/tom/junk foo/harry/\* \*.o
  149.  
  150.           will remove the entry foo/tom/junk, all  of  the  files
  151.           that  start  with foo/harry/, and all of the files that
  152.           end with .o (in any path).  Note  that  shell  pathname
  153.           expansion  has been inhibited with backslashes, so that
  154.           zip can see the asterisks, enabling zip to match on the
  155.           contents  of the zip archive instead of the contents of
  156.           the current directory.
  157.  
  158.           Under MSDOS, -d is case sensitive when it matches names
  159.           in  the  zip archive.  This requires that file names be
  160.           entered in upper case if they were zipped by  PKZIP  on
  161.           an MSDOS system.
  162.  
  163.      -D   Do not create entries in the  zip  archive  for  direc-
  164.           tories.   Directory  entries  are created by default so
  165.           that their attributes can be saved in the zip  archive.
  166.           The  environment  variable ZIPOPT can be used to change
  167.           the default options. For example under Unix with sh:
  168.  
  169.                ZIPOPT="-D"; export ZIPOPT
  170.  
  171.           (The variable ZIPOPT can be used for any option  except
  172.           -i  and -x and can include several options.) The option
  173.           -D is a shorthand for -x "*/" but the latter cannot  be
  174.           set as default in the ZIPOPT environment variable.
  175.  
  176.      -e   Encrypt the contents of the zip archive using  a  pass-
  177.           word  which is entered on the terminal in response to a
  178.           prompt (this will not be echoed; if standard  error  is
  179.           not a tty, zip will exit with an error).
  180.  
  181.      -ee  Encrypt contents, prompting  for  the  password  twice,
  182.           checking  that  the  two  entries  are identical before
  183.           using the password.
  184.  
  185.      -f   Replace (freshen) an existing entry in the zip  archive
  186.           only  if  it  has  been modified more recently than the
  187.           version already in the zip archive; unlike  the  update
  188.           option  (-u)  this  will  not  add  files  that are not
  189.           already in the zip archive.  For example:
  190.  
  191.                zip -f foo
  192.  
  193.           This command should be run from the same directory from
  194.           which  the  original  zip  command was run, since paths
  195.           stored in zip archives are always relative.
  196.  
  197.      -F   Fix the zip archive. This option can be  used  if  some
  198.           portions   of  the  archive  are  missing.  It  is  not
  199.           guaranteed to work, so you MUST make a  backup  of  the
  200.           original archive first.
  201.  
  202.           When doubled as  in  -FF  the  compressed  sizes  given
  203.           inside  the  damaged  archive  are  not trusted and zip
  204.           scans for special signatures  to  identify  the  limits
  205.           between  the  archive  members.  The  single -F is more
  206.           reliable if the archive is not too  much  damaged,  for
  207.           example  if  it  has  only  been truncated, so try this
  208.           option first.
  209.  
  210.           Neither option will recover  archives  that  have  been
  211.           incorrectly   transferred  in  ascii  mode  instead  of
  212.           binary. After the repair, the -t option  of  unzip  may
  213.           show  that some files have a bad CRC. Such files cannot
  214.           be recovered; you can  remove  them  from  the  archive
  215.           using the -d option of zip.
  216.  
  217.      -g   Grow (append to) the specified zip archive, instead  of
  218.           creating  a  new  one.  If  this  operation  fails, zip
  219.           attempts to restore the archive to its original  state.
  220.           If the restoration fails, the archive might become cor-
  221.           rupted.
  222.  
  223.      -h   Display the zip help information (this also appears  if
  224.           zip is run with no arguments).
  225.  
  226.      -i files
  227.           Include only the specified files, as in:
  228.  
  229.                zip -r foo . -i \*.c
  230.  
  231.           which will include only the files that end in .c in the
  232.           current  directory  and  its  subdirectories. (Note for
  233.           PKZIP users: the equivalent command is
  234.  
  235.                pkzip -r foo *.c
  236.  
  237.           PKZIP does not allow  recursion  in  directories  other
  238.           than  the  current one.) The backslash avoids the shell
  239.           filename substitution, so that  the  name  matching  is
  240.           performed by zip at all directory levels.
  241.  
  242.      -j   Store just the name of a saved file  (junk  the  path),
  243.           and  do not store directory names. By default, zip will
  244.           store the full path (relative to the current path).
  245.  
  246.      -k   Attempt to convert the names and paths  to  conform  to
  247.           MSDOS,  store  only  the MSDOS attribute (just the user
  248.           write attribute from UNIX), and mark the entry as  made
  249.           under MSDOS (even though it was not); for compatibility
  250.           with PKUNZIP under MSDOS which  cannot  handle  certain
  251.           names such as those with two dots.
  252.  
  253.      -l   Translate the Unix end-of-line character  LF  into  the
  254.           MSDOS  convention CR LF. This option should not be used
  255.           on binary files.  This option can be used  on  Unix  if
  256.           the  zip  file  is intended for PKUNZIP under MSDOS. If
  257.           the input files already contain CR LF, this option adds
  258.           an extra CR. This ensure that unzip -a on Unix will get
  259.           back an exact copy of the original file,  to  undo  the
  260.           effect of zip -l.
  261.  
  262.      -ll  Translate the MSDOS end-of-line CR  LF  into  Unix  LF.
  263.           This  option  should not be used on binary files.  This
  264.           option can be used on MSDOS if the zip file is intended
  265.           for unzip under Unix.
  266.  
  267.      -L   Display the zip license.
  268.  
  269.      -m   Move the specified files into the  zip  archive;  actu-
  270.           ally,  this  deletes the target directories/files after
  271.           making  the  specified  zip  archive.  If  a  directory
  272.           becomes empty after removal of the files, the directory
  273.           is also removed. No deletions are done  until  zip  has
  274.           created  the archive without error.  This is useful for
  275.           conserving disk space, but is potentially dangerous  so
  276.           it  is  recommended to use it in combination with -T to
  277.           test the archive before removing all input files.
  278.  
  279.      -n suffixes
  280.           Do not attempt to compress files named with  the  given
  281.           suffixes. Such files are simply stored (0% compression)
  282.           in the output zip file, so that zip doesn't  waste  its
  283.           time   trying  to  compress  them.   The  suffixes  are
  284.           separated by either colons or semicolons.  For example:
  285.  
  286.                zip -rn .Z:.zip:.tiff:.gif:.snd  foo foo
  287.  
  288.           will copy everything from foo into  foo.zip,  but  will
  289.           store  any  files that end in .Z, .zip, .tiff, .gif, or
  290.           .snd without trying to compress them (image  and  sound
  291.           files  often  have  their  own  specialized compression
  292.           methods).  By default, zip does not compress files with
  293.           extensions  in  the  list  .Z:.zip:.zoo:.arc:.lzh:.arj.
  294.           Such files are stored directly in the  output  archive.
  295.           The  environment  variable ZIPOPT can be used to change
  296.           the default options. For example under Unix with csh:
  297.  
  298.                setenv ZIPOPT "-n .gif:.zip"
  299.  
  300.           To attempt compression on all files, use:
  301.  
  302.                zip -n : foo
  303.  
  304.           The  maximum  compression  option  -9   also   attempts
  305.           compression on all files regardless of extension.
  306.  
  307.      -o   Set the "last modified" time of the zip archive to  the
  308.           latest  (oldest)  "last  modified" time found among the
  309.           entries in the zip archive.  This can be  used  without
  310.           any other operations, if desired.  For example:
  311.  
  312.           zip -o foo
  313.  
  314.           will change the last modified time of  foo.zip  to  the
  315.           latest time of the entries in foo.zip.
  316.  
  317.      -q   Quiet mode; eliminate informational messages  and  com-
  318.           ment  prompts.   (Useful, for example, in shell scripts
  319.           and background tasks).
  320.  
  321.      -r   Travel the directory structure recursively;  for  exam-
  322.           ple:
  323.  
  324.                zip -r foo foo
  325.  
  326.           In this case, all the files and directories in foo  are
  327.           saved  in  a zip archive named foo.zip, including files
  328.           with names starting with ".", since the recursion  does
  329.           not  use  the shell's file-name substitution mechanism.
  330.           If you wish to include only a specific  subset  of  the
  331.           files  in directory foo and its subdirectories, use the
  332.           -i option  to  specify  the  pattern  of  files  to  be
  333.           included.   You  should  not use -r with the name ".*",
  334.           since that matches ".." which will attempt  to  zip  up
  335.           the parent directory (probably not what was intended).
  336.  
  337.      -S   Include system and hidden files. This option is  effec-
  338.           tive on some systems only; it is ignored on Unix.
  339.  
  340.      -t mmddyy
  341.           Do not operate on files modified prior to the specified
  342.           date,  where  mm  is the month (0-12), dd is the day of
  343.           the month (1-31), and yy are the last two digits of the
  344.           year.  For example:
  345.  
  346.                zip -rt 120791 infamy foo
  347.  
  348.           will add all the files in foo  and  its  subdirectories
  349.           that were last modified on or after 7 December 1991, to
  350.           the zip archive infamy.zip.
  351.  
  352.      -T   Test the integrity of the new zip file.  If  the  check
  353.           fails,  the  old zip file is unchanged and (with the -m
  354.           option) not input files are removed.
  355.  
  356.      -u   Replace (update) an existing entry in the  zip  archive
  357.           only  if  it  has  been modified more recently than the
  358.           version already in the zip archive.  For example:
  359.  
  360.                zip -u stuff *
  361.  
  362.           will add any new files in the  current  directory,  and
  363.           update any files which have been modified since the zip
  364.           archive stuff.zip was last created/modified (note  that
  365.           zip will not try to pack stuff.zip into itself when you
  366.           do this).
  367.  
  368.           Note that the -u option with no arguments acts like the
  369.           -f (freshen) option.
  370.  
  371.      -v   Verbose  mode.  Display  a  progress  indicator  during
  372.           compression.
  373.  
  374.      -V   Save VMS file attributes. This option is  available  on
  375.           VMS  only;  zip  archives created with this option will
  376.           generally not be usable on other systems.
  377.  
  378.      -w   Append the version number of the  files  to  the  name,
  379.           including  multiple  versions  of  files.   (VMS  only;
  380.           default: use only the most recent version of  a  speci-
  381.           fied file).
  382.  
  383.      -x files
  384.           Explicitly exclude the specified files, as in:
  385.  
  386.                zip -r foo foo -x \*.o
  387.  
  388.           which will include the contents of foo in foo.zip while
  389.           excluding  all the files that end in .o.  The backslash
  390.           avoids the shell filename  substitution,  so  that  the
  391.           name matching is performed by zip at all directory lev-
  392.           els.
  393.  
  394.      -X   Do not save extra file attributes (Extended  Attributes
  395.           on OS/2, uid/gid and file times on Unix).
  396.  
  397.      -y   Store symbolic  links  as  such  in  the  zip  archive,
  398.           instead of compressing and storing the file referred to
  399.           by the link (UNIX only).
  400.  
  401.      -z   Prompt for a multi-line  comment  for  the  entire  zip
  402.           archive.   The  comment  is  ended by a line containing
  403.           just a period, or an end of file condition (^D on UNIX,
  404.           ^Z  on  MSDOS,  OS/2, and VAX/VMS).  The comment can be
  405.           taken from a file:
  406.  
  407.                zip -z foo < foowhat
  408.  
  409.      -#   Regulate the speed of compression using  the  specified
  410.           digit  #,  where -0 indicates no compression (store all
  411.           files), -1 indicates  the  fastest  compression  method
  412.           (less   compression)   and  -9  indicates  the  slowest
  413.           compression method (optimal  compression,  ignores  the
  414.           suffix list). The default compression level is -6.
  415.  
  416.      -@   Take the list of input files from standard input.  File
  417.           names  containing  spaces  must  be quoted using single
  418.           quotes, as in 'file name'.
  419.  
  420.      -$   Include the volume label for the the drive holding  the
  421.           first  file  to  be compressed.  If you want to include
  422.           only the volume label or to force a specific drive, use
  423.           the drive name as first file name, as in:
  424.  
  425.                zip -$ foo a: c:bar
  426.  
  427.           This option is effective on some  systems  only  (MSDOS
  428.           and OS/2); it is ignored on Unix.
  429.  
  430. EXAMPLES
  431.      The simplest example:
  432.  
  433.           zip stuff *
  434.  
  435.      creates the archive stuff.zip (assuming it does  not  exist)
  436.      and  puts  all  the files in the current directory in it, in
  437.      compressed form (the .zip  suffix  is  added  automatically,
  438.      unless  that archive name given contains a dot already; this
  439.      allows the explicit specification of other suffixes).
  440.  
  441.      Because of the way the  shell  does  filename  substitution,
  442.      files  starting  with "." are not included; to include these
  443.      as well:
  444.  
  445.           zip stuff .* *
  446.  
  447.      Even this will  not  include  any  subdirectories  from  the
  448.      current directory.
  449.  
  450.      To zip up an entire directory, the command:
  451.  
  452.           zip -r foo foo
  453.  
  454.      creates the archive foo.zip, containing all  the  files  and
  455.      directories  in  the  directory foo that is contained within
  456.      the current directory.
  457.  
  458.      You may want to make a zip archive that contains  the  files
  459.      in  foo, without recording the directory name, foo.  You can
  460.      use the -j option to leave off the paths, as in:
  461.  
  462.           zip -j foo foo/*
  463.  
  464.      If you are short on disk space, you might  not  have  enough
  465.      room to hold both the original directory and the correspond-
  466.      ing compressed zip archive.  In this case,  you  can  create
  467.      the  archive  in steps using the -m option.  If foo contains
  468.      the subdirectories tom, dick, and harry, you can:
  469.  
  470.           zip -rm foo foo/tom
  471.           zip -rm foo foo/dick
  472.           zip -rm foo foo/harry
  473.  
  474.      where the first command creates foo.zip, and  the  next  two
  475.      add  to it.  At the completion of each zip command, the last
  476.      created archive is deleted, making room  for  the  next  zip
  477.      command to function.
  478.  
  479. PATTERN MATCHING
  480.      This section applies only to UNIX.   Watch  this  space  for
  481.      details on MSDOS and VMS operation.
  482.  
  483.      The UNIX shells (sh(1) and csh(1)) do filename  substitution
  484.      on command arguments.  The special characters are:
  485.  
  486.      ?    match any single character
  487.  
  488.      *    match any number of characters (including none)
  489.  
  490.      []   match any character in the range indicated  within  the
  491.           brackets (example: [a-f], [0-9]).
  492.  
  493.      When these characters are encountered (without being escaped
  494.      with  a  backslash or quotes), the shell will look for files
  495.      relative to the current path that  match  the  pattern,  and
  496.      replace the argument with a list of the names that matched.
  497.  
  498.      The zip program can do the same matching on names  that  are
  499.      in  the zip archive being modified or, in the case of the -x
  500.      (exclude) or -i (include) options, on the list of  files  to
  501.      be  operated  on, by using backslashes or quotes to tell the
  502.      shell not to do the name expansion.  In  general,  when  zip
  503.      encounters a name in the list of files to do, it first looks
  504.      for the name in the file system.  If it finds  it,  it  then
  505.      adds it to the list of files to do.  If it does not find it,
  506.      it looks for the name in the zip archive being modified  (if
  507.      it  exists), using the pattern matching characters described
  508.      above, if present.  For each match, it will add that name to
  509.      the  list of files to be processed, unless this name matches
  510.      one given with the -x option, or does  not  match  any  name
  511.      given with the -i option.
  512.  
  513.      The pattern matching includes the path, and so patterns like
  514.      \*.o  match  names that end in ".o", no matter what the path
  515.      prefix is.  Note that the backslash must precede every  spe-
  516.      cial  character  (i.e. ?*[]), or the entire argument must be
  517.      enclosed in double quotes ("").
  518.  
  519.      In general, use backslash to make zip do the pattern  match-
  520.      ing with the -f (freshen) and -d (delete) options, and some-
  521.      times after the  -x  (exclude)  option  when  used  with  an
  522.      appropriate operation (add, -u, -f, or -d).
  523.  
  524. SEE ALSO
  525.      compress(1), shar(1L), tar(1), unzip(1L), gzip(1L)
  526.  
  527. BUGS
  528.      zip 2.0.1 is not compatible with PKUNZIP 1.10. Use  zip  1.1
  529.      to produce zip files which can be extracted by PKUNZIP 1.10.
  530.  
  531.      zip files produced by zip 2.0.1 must not be updated  by  zip
  532.      1.1  or  PKZIP 1.10, if they contain encrypted members or if
  533.      they have been produced in a pipe or on a non-seekable  dev-
  534.      ice.  The  old  versions  of  zip  or  PKZIP would create an
  535.      archive with an incorrect format.  The old versions can list
  536.      the  contents  of  the zip file but cannot extract it anyway
  537.      (because of the new compression algorithm).  If you  do  not
  538.      use  encryption  and use regular disk files, you do not have
  539.      to care about this problem.
  540.  
  541.      Under VMS, not all of the odd file formats are treated prop-
  542.      erly.   Only stream-LF format zip files are expected to work
  543.      with zip.  Others can be converted using Rahul Dhesi's  BILF
  544.      program.  This version of zip handles some of the conversion
  545.      internally.  When using Kermit to transfer  zip  files  from
  546.      Vax  to  MSDOS, type "set file type block" on the Vax.  When
  547.      transfering from MSDOS to Vax, type "set file type fixed" on
  548.      the  Vax.   In  both  cases,  type "set file type binary" on
  549.      MSDOS.
  550.  
  551.      Under VMS, zip hangs for file specification that uses DECnet
  552.      syntax foo::*.*.
  553.  
  554.      On OS/2, zip cannot match some names, such as those  includ-
  555.      ing  an  exclamation  mark or a hash sign.  This is a bug in
  556.      OS/2 itself: the 32-bit DosFindFirst/Next  don't  find  such
  557.      names.   Other programs such as GNU tar are also affected by
  558.      this bug.
  559.  
  560.      Under OS/2, the amount of External Attributes  displayed  by
  561.      DIR is (for compatibility) the amount returned by the 16-bit
  562.      version of DosQueryPathInfo(). Otherwise OS/2  1.3  and  2.0
  563.      would  report  different  EA sizes when DIRing a file.  How-
  564.      ever,  the  structure  layout   returned   by   the   32-bit
  565.      DosQueryPathInfo() is a bit different, it uses extra padding
  566.      bytes and link pointers (it's a linked  list)  to  have  all
  567.      fields  on  4-byte boundaries for portability to future RISC
  568.      OS/2 versions. Therefore the value reported  by  zip  (which
  569.      uses  this  32-bit-mode  size) differs from that reported by
  570.      DIR.  zip stores the 32-bit format for portability, even the
  571.      16-bit  MS-C-compiled  version  running on OS/2 1.3, so even
  572.      this one shows the 32-bit-mode size.
  573.  
  574. AUTHORS
  575.      Copyright (C) 1990-1993 Mark Adler, Richard B. Wales,  Jean-
  576.      loup  Gailly,  Kai  Uwe Rommel, Igor Mandrichenko, John Bush
  577.      and Paul Kienitz.  Permission is granted to  any  individual
  578.      or  institution  to use, copy, or redistribute this software
  579.      so long as all of the original files are included,  that  it
  580.      is  not  sold  for profit, and that this copyright notice is
  581.      retained.
  582.  
  583.      LIKE ANYTHING ELSE THAT'S FREE, ZIP AND ITS ASSOCIATED UTIL-
  584.      ITIES  ARE  PROVIDED  AS IS AND COME WITH NO WARRANTY OF ANY
  585.      KIND, EITHER EXPRESSED OR IMPLIED.  IN  NO  EVENT  WILL  THE
  586.      COPYRIGHT  HOLDERS  BE LIABLE FOR ANY DAMAGES RESULTING FROM
  587.      THE USE OF THIS SOFTWARE.
  588.  
  589.      Please  send  bug  reports  and  comments   by   email   to:
  590.      zip-bugs@wkuvx1.bitnet.  For bug reports, please include the
  591.      version of zip, the make options used  to  compile  it,  the
  592.      machine  and operating system in use, and as much additional
  593.      information as possible.
  594.  
  595. ACKNOWLEDGEMENTS
  596.      Thanks to R. P. Byrne  for  his  Shrink.Pas  program,  which
  597.      inspired  this  project, and from which the shrink algorithm
  598.      was stolen; to Phil Katz for placing in  the  public  domain
  599.      the  zip  file format, compression format, and .ZIP filename
  600.      extension, and for accepting minor changes to the file  for-
  601.      mat; to Steve Burg for clarifications on the deflate format;
  602.      to Haruhiko Okumura and Leonid Broukhis for  providing  some
  603.      useful  ideas for the compression algorithm; to Keith Peter-
  604.      sen, Rich Wales, Hunter Goatley and Mark Adler for providing
  605.      a  mailing  list and ftp site for the INFO-ZIP group to use;
  606.      and most importantly, to the INFO-ZIP group  itself  (listed
  607.      in  the file infozip.who) without whose tireless testing and
  608.      bug-fixing efforts a portable zip would not have been possi-
  609.      ble.   Finally  we  should  thank (blame) the first INFO-ZIP
  610.      moderator, David Kirschbaum, for getting us into  this  mess
  611.      in  the first place.  The manual page was rewritten for UNIX
  612.      by R. P. C. Rodgers.
  613.