     IX. SEA'S ARC files 
 
     IX.1 DeArcing 
        Citadel-86 allows users to selectively deARC and download files from 
     ARC-generated files if the Sysop so desires. 
 
        There are several considerations for the Sysop to keep in mind as s/he 
     decides whether or not to enable these commands, including 
 
      a) DeARCing files takes valuable system time; 
      b) DeARCing files takes space which the system may not have available; 
      c) Damaged ARC files can sometimes hang a deARCing program; occasionally, 
         they can even damage disk systems (it's happened to me!); 
      d) This ability may be vulnerable to system crashers in unforeseen ways; 
      e) <myriad other disasters for the unprepared> ... 
 
        Citadel-86 has implemented this ability by executing a deARCing program 
     of the Sysop's choice on the file specified by the user.  The files are 
     deARCed into a temporary directory that Citadel-86 creates and deletes as 
     needed.  When deARCing and downloading is finished, Citadel-86 will delete 
     all files that were deARCed, thus not taking up any permanent storage on 
     the system.  However, the Sysop must keep in mind that if there is not 
     enough temporary storage available, the system could still be hung, 
     depending on what the deARCing program does when it hits a disk out of 
     space limit; further, Citadel-86 does not detect when a failure occurs 
     (except for no files matching the deARC mask). 
 
        To enable the command, create a normal DOS text file named DEARC.SYS in 
     your #ROOMAREA directory.  Citadel-86 expects that the contents of this 
     file will be a single line that will name the program that you wish to use 
     for deARCing.  If the program is on your PATH, then you need not specify 
     the path to the program. 
 
 
 
 
 
                                    -27- 
 
 
 
 
 
 
        Citadel-86 makes the assumption that your deARC program's final two 
     arguments will be, respectively, the name of the file to be deARCed 
     (including the path, if any) and the "mask" (i.e., "*.*", "*.doc", etc.). 
     This is the standard format for SEA's ARC, and so I hope that it will 
     remain more or less a standard. 
 
        During testing, I have noted that 
 
            pkxarc 
 
     works just fine, as does 
 
            unpack 
 
     Unpack is Borland International's deARC program, which is being 
     distributed with Turbo Pascal 4.0 and Turbo C 2.0. 
 
        Oh, the Citadel commands to do this sort of thing?  (Read the help 
     files.)  There is one. 
 
            .Read Archive Binary-files 
 
     This will prompt for the name of one ARC file (with or without the ARC 
     extension), and then will prompt for the deARC mask.  A Carriage Return 
     for the deARC mask will result in "*.*".  The system will then ask the 
     user to wait for a moment, and then (attempt to) deARC the file using 
     the mask.  Once finished, it will send all files to the user via ASCII. 
     If the user wishes to use a protocol, they may.  For example, YMODEM 
     BATCH could be used this way: 
 
            .Read Ymodem Archive Binary-files 
 
        Downloading files this way via YMODEM or XMODEM will be tracked by the 
     Download time limits, if you are using them (or at least so I hope). 
 
        'T' and 'F' are synonyms for 'B' in the above. 
 
     IX.2 ARC Integrity Checks 
        Citadel-86 is also capable of integrity checks on newly uploaded ARC 
     files.  In order to enable this capability, the sysop must modify the 
     DEARC.SYS file described in IX.1 by adding a second line.  Much like 
     deARCing files, the second line also specifies a command line to be used 
     for performing a file integrity check. 
 
        However, the sysop MUST specify a program which returns an ERRORLEVEL 
     of 0 when the integrity check succeeds, and non-0 when the check fails, 
     or this feature will fail.  Fortunately, ARC V6 does precisely that, so 
     if you choose to use ARC for file integrity checks, you shouldn't have a 
     problem.  So, as an example, to use ARC as the file integrity check 
     utility, you'd simply have the line 
 
     ARC t 
 
     since 't' is the file test command. 
 
        Do NOT* specify a BAT file as the file check utility! 
 
 
 
                                    -28- 
 
 
 
 
 
 
        The integrity check takes place after the upload has been completed. 
     The name of the file is checked, and if the extension is .ARC, your 
     Citadel-86 will, if enabled, ask the user if the upload should be checked. 
     If the user agrees, the check is performed.  If it succeeds, the user 
     is prompted for a description.  If it fails, the user is asked if the 
     upload should be aborted.  If the user assents, the file is deleted; if 
     they wish to continue, they are then prompted for a description. 
 
        The sysop should bear in mind that some flawed ARC files can 
     cause their computer to hang during a file integrity check if they are 
     using ARC V5.  ARC V6's stability in this regard is not known by this 
     author. 
 
     X.  PKWARE's ZIP files 
 
     X.1 DeZIP 
        Citadel-86 is also capable of handling the ZIP files generated by 
     PKWARE's PKZIP utility.  Procedures for handling ZIP files are nearly 
     exactly the same as for SEA's ARC files, as are the warnings.  In fact, 
     the only difference is that you must create a new file named DEZIP.SYS, 
     rather than DEARC.SYS, in your #ROOMAREA directory, containing the command 
     to DeZip files. 
 
     pkunzip -x 
 
     seems to work just fine, if, of course, you have PKUNZIP.EXE available 
     somewhere. 
 
     X.2. ZIP Integrity Checks 
        Again, as with SEA ARC files, you may optionally enable integrity checks 
     on uploaded files by modifying DEZIP.SYS with a second line specifying the 
     file check.  PKUNZIP -t seems to work just fine.  This check, if enabled, 
     will be performed on files uploaded with a .ZIP extension. 
 
