NLCHECK.PPE Documentation Nodelist update checker version 1.0 Author: Herbert Bushong BBS: 318-468-3385 Fido: 1:19/19 I-net: herbert.bushong@bbread.pecan.com Copyright ========= Although freeware, this PPE is copyrighted and you are subject to all copyright laws. It is trojan and backdoor free. It works for me and should for you. Description =========== I must update several nodelists weekly, and it was a real hassle to copy, extract, apply the diffs, and run PCBNLC every week (I do have better things to do ) What NLCHECK does is create a BAT or CMD file. That's it. The BAT file will do all the work, and it's up to you to run the BAT file. NLCHECK will only work with one extension at a time. If you have nodelists that are created on different days (thus different numbered extensions), you current will only be able to use NLCHECK for one set of them. If there is a demand, I can update it to handle that particular situation. NLCHECK can handle multiple archive formats and even uncompressed files. Installation ============ If you are upgrading from the PPE version, read the UPGRADE.TXT for instructions. Extract the files in the archive to a directory of your choice. Edit the CFG and LST files to match your setup. They are commented at the end of each file. Execution ========= NLCHECK is best run from an event which runs ONCE a week, on the day the nodelists are created. For Fidonet (and most others) this day is Friday. In the event, add the following line: d:\path\nlcheck.exe d:\path [/L] where: d:\path - points to the directory that the CFG and LST files are. /L - if used, a log file will be created in the directory of d:\path. This file is appended to, so should be checked and deleted occassionally. this will create a BAT or CMD file (see configuration for location) called NLCHECK.BAT (CMD). It will overwrite any previous NLCHECK.BAT. You can then run NLCHECK.BAT manually from the command line, or in another weekly event to automatically update your nodelists. If you run the BAT file from another event, make sure you give all your diffs time to come in, though you can re-run the BAT file. NLCHECK takes one additional parameter. You can override the day number by placing it on the command line, so: d:\path\nlcheck.exe d:\path /D:300 [/L] would create a BAT file for all nodediffs for day 300 rather than today's day number. Configuration ============= NLCHECK uses 3 configuration files. They are commented at the end of them, but an example and description of each follows. NLCHECK.CFG - main config file ----------- D:\pcb\node2 Y d: \pcb\fido\nodelist d: \pcb\node2 N Line 1 - Location to create batch file (will be named NLCHECK.BAT or CMD) Since you may want to create the file in a directory other than a node directory, this tells NLCheck where to create it. No trailing backslash Line 2 - Y/N, Y=BAT N=CMD Tells NLCheck whether to create a DOS batch file, or an OS/2 CMD File. ;line 3 - The drive where your PCBFido nodelist directory resides This is the drive where nodediffs will be copied to and extracted. ;line 4 - path only to nodelist directory Same as line 3, but only the path to the directory, with leading backslash and no trailing backslash. ;line 5 - drive where pcbnlc will be run from This is the drive where PCBNLC will be run from with the /DIFF parameter and then without. ;line 6 - path only where pcbnlc will be run from This should be a node directory, or a directory where a PCBOARD.DAT resides. ;line 7 - Y/N, Y=delete copied diffs after processing, N=leave diffs If you want to keep the diff copies, set this to N. If you don't want to keep them, there are two methods. Setting this to 'Y' will add DEL statements to the BAT file to delete the archived and unpacked diffs. Or, if the archiver supports it, the archiver can MOVE the files out of the archive and delete them. PAK is an example of an archiver that can do this. ARC.LST - Archiver Difinitions -------- 2 A c:\bin\PAK x #ARC# Z c:\bin\pkunzip -o #ARC# ;Archiver definition file. Contains the definitions and the ;command line for each archiver. Use the special macro #ARC# to indicate ;placement of the archive filename (which will include the path) Line 1 - Number of entries in the file each entry has 2 lines Line 2 - Prefix This is the prefix ( 1 character ) used for this archiver. NODELIST.A14 - indicates ARC format NODELIST.Z14 - indicates ZIP format Add any others that you need. **Note** The letter N is reserved to indicate uncompressed lists. Line 3 - Archiver command line for prefix This is the command line to unarchive the file. In the above examples PAK will move the files out of the archive and delete the archive. PKUNZIP will extract the files and overwrite any existing diffs. Repeat 2 & 3 for each Archive format that your nodelists come in. DIFF.LST - List of DIFF files to process --------- 4 d:\files\dl09\NODEDIFF d:\pcb\fido\nodelist\nodediff A d:\makenl\intel\INTEDIFF d:\pcb\fido\nodelist\intediff A d:\makenl\rebel\REBDIFF d:\pcb\fido\nodelist\rebdiff A d:\makenl\pclist\PCCDIFF d:\pcb\fido\nodelist\pccdiff A ;Line 1 - number of entries ;each entry has 3 lines ;Line 2 - location and Diff file basename (no extension) Where the diff file can be found. ;Line 3 - location and basename to COPY diff file to (no extension) this should be your PCBFido Nodelist directory. ;Line 4 - Archiver prefix. This Letter corresponds to an entry in the ARC.LST file and indicates which archive format the diff will be in. It also replaces the first number of extension. Must be listed in ARC.LST or N for no compression Repeat lines 2-4 for each diff entry Sample NLCHECK.BAT ================== Here is a sample BAT file, created with my config files. ------- @ECHO OFF IF NOT EXIST d:\files\dl09\NODEDIFF.A21 GOTO FILE1 COPY d:\files\dl09\NODEDIFF.A21 d:\pcb\fido\nodelist\nodediff.A21 :FILE1 IF NOT EXIST d:\makenl\intel\INTEDIFF.A21 GOTO FILE2 COPY d:\makenl\intel\INTEDIFF.A21 d:\pcb\fido\nodelist\intediff.A21 :FILE2 IF NOT EXIST d:\makenl\rebel\REBDIFF.A21 GOTO FILE3 COPY d:\makenl\rebel\REBDIFF.A21 d:\pcb\fido\nodelist\rebdiff.A21 :FILE3 IF NOT EXIST d:\makenl\pclist\PCCDIFF.A21 GOTO FILE4 COPY d:\makenl\pclist\PCCDIFF.A21 d:\pcb\fido\nodelist\pccdiff.A21 :FILE4 d: CD\pcb\fido\nodelist c:\bin\PAK x d:\pcb\fido\nodelist\nodediff.A21 c:\bin\PAK x d:\pcb\fido\nodelist\intediff.A21 c:\bin\PAK x d:\pcb\fido\nodelist\rebdiff.A21 c:\bin\PAK x d:\pcb\fido\nodelist\pccdiff.A21 d: CD\pcb\node1 PCBNLC /DIFF PCBNLC ---------- I run NLCheck.EXE in an event on Friday, then call NLCHECK.BAT from an event on Monday. This gives time for the files to come in and get posted before the diffs actually get applied. That's all there is to it. If you have questions, suggestion, comments, I can be reached by one of the methods at the beginning of the docs.