home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / APPS / macutils.lzh / MACUTILS / DOC / README.scan < prev    next >
Text File  |  1995-09-18  |  4KB  |  93 lines

  1. Preliminary info about the Unix scanner.
  2. ----------------------------------------
  3.  
  4. This file states mostly how to use it, it is not yet full documentation.
  5.  
  6. There are a few utilities in this package that help scanning: macidf,
  7. macscan, macstream, hexbin and macunpack.  I will give examples of use
  8. where every use highlights some factilities.
  9.  
  10. The main program is macscan.  It reads from standard input (NB: no file
  11. parameters) and will scan the input for offensive stuff.  The input
  12. consists of a stream of files in MacBinary format, with additional
  13. information between (about Unix file name, Archive/Packed file name,
  14. folder entry/exit in an archive etc.).
  15.  
  16. To scan a single MacBinary file just do:
  17.     macscan <file
  18. This will read the file and macscan will mark everything it does not like.
  19. Also when macscan detects that it is an archive, it will unpack the archive,
  20. and recursively so for embedded archives.  When given the opion -l macscan
  21. will list the contents of the archive during its scan.  When given the
  22. option -v it will also list all resources found, with type, number,
  23. name (if defined) and size.
  24.  
  25. If you have multiple MacBinary files (e.g. a set of MacBinary files in a
  26. directory tree), you can do the following (supposing the filenames end in
  27. '.bin'):
  28.     find directory -name '*.bin' -exec xxx {} \; | macscan
  29. Where xxx is the following shellscript:
  30.     #!/bin/sh
  31.     macidf $1
  32.     cat $1
  33. The macidf is needed so that macscan knows the original Unix file name.
  34. Of course macscan can also get the -l and -v options.
  35.  
  36. If you have a directory tree with binhexed files, the following is
  37. appropriate:
  38.     find directory -name '*.hqx' -exec hexbin -S {} \; | macscan
  39. The flag -S tells hexbin that filename info for macscan must be included.
  40. And here again, macscan can have options.  Note: every binhexed file must
  41. be contained in a single Unix file, unlike mcvert.  But, like mcvert,
  42. mailheaders and such can preceed and follow the binhexed file, and can
  43. also be in the middle.
  44.  
  45. You can of course have compressed binhexed files, in that case:
  46.     find directory -name '*.hqx.Z' -exec xxx {} \; | macscan
  47. with xxx the following shellscript:
  48.     #!/bin/sh
  49.     macidf $1
  50.     zcat $1 | hexbin -s
  51. (Note, lower case s here.  Hexbin has no knowledge about the Unix filename.)
  52.  
  53. If the directory is an AUFS directory the following can be done:
  54.     macstream directory | macscan
  55. Note: in this case it is not yet possible to include the Unix filename in
  56. the output of macscan.  With the option -l Mac names are listed.
  57.  
  58. The previous method might also work with AppleDouble directories, but I am
  59. not sure about that.
  60.  
  61. -------
  62. What macscan can at this moment.
  63.  
  64. It currently uses a subset of Jeff's VirusDetective strings during the scan.
  65. Not all strings are yet implemented, so not all viruses are already detected.
  66.  
  67. Moreover, it includes warnings for CDEF 0, WDEF 0 etc. resources, as per
  68. Zig's suggestion.
  69.  
  70. Finally, it warns about resources compressed by the resource compressor of
  71. Ben Haller.
  72.  
  73. -------
  74. The status.
  75.  
  76. This version is preliminary and confidential.  Do not distribute.
  77. There are probably a number of bugs present, although my testing
  78. on a Sun (actually an FPS == very fast Sun) worked pretty well.
  79. Lint does not complain too much ;-).  Also SGI's lint has not
  80. many problems with it.  Mostly because the difference between
  81.     (char *)malloc();
  82. and
  83.     (void *)malloc();
  84. etc.  That must be straightened out sometime.
  85.  
  86. Any bug-reports, suggestions are wellcome.  Please support bug-reports
  87. with input or somesuch.
  88.  
  89. dik
  90. --
  91. dik t. winter, cwi, kruislaan 413, 1098 sj  amsterdam, nederland
  92. dik@cwi.nl
  93.