home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / archives / admin / 419 < prev    next >
Encoding:
Text File  |  1992-09-08  |  8.1 KB  |  264 lines

  1. Newsgroups: comp.archives.admin
  2. Path: sparky!uunet!math.fu-berlin.de!Harpo.Chemie.FU-Berlin.DE!heiko
  3. From: heiko@Harpo.Chemie.FU-Berlin.DE (Heiko Schlichting)
  4. Subject: Re: genindex 1.0 released
  5. Message-ID: <O5R6LX@math.fu-berlin.de>
  6. Sender: news@math.fu-berlin.de (Math Department)
  7. Organization: Free University of Berlin, Dept. of Chemistry
  8. References: <R0G6YKV@mailgzrz.tu-berlin.de> <18d6ulINN7tv@nigel.msen.com>
  9. Date: Mon, 7 Sep 1992 04:34:55 GMT
  10. Lines: 252
  11.  
  12. emv@msen.com (Edward Vielmetti) writes:
  13.  
  14. >The FTP admins in Berlin have come up with a standardized tool to generate
  15. >/INDEX, /ls-lR, /INDEX-diffs/* etc. files, based on a format that's easier
  16. >to grep and to dump into archie than the ls-lR format.  It lists only
  17. >readable files and avoids the slight nagging differences between ls
  18. >programs.
  19. >
  20. >See
  21. >    ftp.cs.tu-berlin.de:/projects/genindex/*
  22. >for details.
  23.  
  24. I've put genindex.tar.Z to ftp.uu.net:/tmp/genindex.tar.Z so that there
  25. is no problem with the slow lines to Berlin. This file is only 14 kBytes
  26. small. You also needs GNU find to use the software.
  27.  
  28. >The code is based on GNU find, and comes with filters so
  29. >that archie admins can load these index files directly.  Installation
  30. >involves running a configure script, compiling the code, and throwing in a
  31. >crontab entry.
  32.  
  33. I should mention that this is version 1.0 and there is a little glitch in
  34. the source so that one feature (IGNORENAME, a file which contains pathnames
  35. which are not listed in the Index) does not work. There is a very small
  36. patch for this and when the author of genindex is back from vacation he
  37. will look for bugreports and make a new implemenattion. "genindex 1.0"
  38. is the first release and has still a little bit of an experimental state.
  39.  
  40. BTW: it is a config file in shell syntax (config.sh) not a configure script.
  41.  
  42. But genindex-1.0 works - look into FTP.FU-Berlin.DE:/INDEX[.Z]
  43. Because the connection to Berlin are so slow, here are the first 20
  44. lines from this INDEX to show the format:
  45.  
  46. #NAME           ftp.FU-Berlin.DE
  47. #ADDRESS        130.133.4.50
  48. #ORGANIZATION   Freie Universitaet Berlin
  49. #LOCATION       Berlin, Germany; 52 31 N / 13 24 E
  50. #ACCESS         no restrictions
  51. #MAIL           ftp-adm@FU-Berlin.DE
  52. #SERVER-TIMEZONE +0200 (MET DST)
  53. #
  54. #INDEX-TIMEZONE +0000 (UTC)
  55. #VERSION        1.0 (28-Aug-1992); de-mirror INDEX format
  56. #CREATED        07-Sep-1992 01:00
  57. #
  58. DR-X          0 24-Aug-1992 00:02 /
  59. DRWX          0 04-Sep-1992 01:43 /incoming
  60. DRWX          0 24-Aug-1992 16:57 /incoming/amiga
  61. FRW-       4435 01-Jul-1992 16:48 /incoming/amiga/JOES.amiga.sites
  62. FRW-     583680 24-Aug-1992 16:57 /incoming/amiga/MED_Songs.dms
  63. FRW-        452 24-Aug-1992 16:57 /incoming/amiga/MED_Songs.readme
  64. FRW-     168103 03-Jul-1992 12:23 /incoming/amiga/ReOrg_V2.3.lha
  65. FRW-     210243 07-Jul-1992 17:51 /incoming/amiga/vortaro.lha
  66.  
  67.  
  68. This format was discussed in the German FTP-mirror mailing list
  69. (de-mirror@informatik.tu-muenchen.de, to join this list write to
  70. de-mirror-owner@informatik.tu-muenchen.de - but the conversation language 
  71. in this list is German). The name for this format comes from this
  72. mailing list: "de-mirror INDEX format".
  73.  
  74. Also defined is a format for names of INDEX-diff-files so that
  75. archie and similar tools can get only diffs and not the hole INDEX file.
  76.  
  77. Below is the draft text for the "de-mirror INDEX format" but it is
  78. *NOT* necessary that everyone writes own tools to create INDEX-files
  79. in this format. "genindex.tar.Z" already includes such a sh-script.
  80. If it does not work on your machine, please report bugs to
  81. ftpadm@cs.tu-berlin.de.
  82.  
  83. (author: Carsten Rossenhoevel <cross@cs.tu-berlin.de>)
  84.  
  85. [as discussed in de-mirror up to Aug 07, 1992]
  86. [editorial changes / bug fixes by {cross,marion}@cs.tu-berlin.de Aug 15, 1992]
  87. [info-line extensions by {heiko,vera,cross}@{cs.t,f}u-berlin.de Aug 22, 1992]
  88. [info-line extensions frozen Aug 28, 1992]
  89.  
  90.         DRAFT Syntax for FTP server index files
  91.         ---------------------------------------
  92.  
  93.  
  94.     index        = *( line CRLF )
  95.  
  96.     line        = comment-line
  97.             / info-line
  98.             / index-line
  99.  
  100.     comment-line    = "#" white-space text
  101.                     -- user information, format undefined
  102.  
  103.     info-line        = "#" 1*<any CHAR, excluding white-space and CRLF>
  104.               white-space text
  105.                     -- reserved for further parsable
  106.                        information (contact addresses,
  107.                        IP addresses...)
  108.                        (preliminary standard see below)
  109.  
  110.     index-line        = directory-line
  111.             / symlink-line
  112.             / file-line
  113.  
  114.     directory-line    = ("D" / "d") 
  115.                 ("R" / "r" / "-")
  116.                 ("W" / "w" / "-")
  117.                 ("X" / "x")
  118.                 white-space
  119.                 date-time white-space
  120.                 "0" " "
  121.                 pathname
  122.                     -- directories always have size 0. 
  123.                           the search permission 'x' must
  124.                        be set.
  125.  
  126.     file-line        = ("F" / "f")
  127.                 ("R" / "r") 
  128.                 ("W" / "w" / "-")
  129.                 ("X" / "x" / "-")
  130.                 white-space
  131.                 date-time white-space
  132.                 size " "
  133.                 pathname
  134.                     -- files must be readable.
  135.                        There is NO white-space between
  136.                        size and pathname to support
  137.                        pathnames with leading 
  138.                        white-space.
  139.  
  140.     symlink-line     = ("L" / "l")
  141.                 "---"
  142.                 white-space
  143.                 date-time white-space
  144.                 "0" " "
  145.                 pathname 
  146.                 " " "-" ">" " "
  147.                 pathname
  148.                     -- symlinks have size 0 and
  149.                        mode '---' by convention.
  150.                        There is NO white-space
  151.                        between the two pathnames
  152.                        in order to support pathnames
  153.                        containing white-space.
  154.  
  155.     date-time        = date " " time
  156.  
  157.     date        = day "-" month-name "-" year
  158.  
  159.     time        = hour ":" minute
  160.                     -- time should be given in GMT
  161.  
  162.     day            = ("0" / "1" / "2" / "3") 
  163.               DIGIT
  164.                     -- days < 10 have a leading 0.
  165.  
  166.     month-name        = ("Jan" / "Feb" / "Mar" / "Apr" / "May" /
  167.                "Jun" / "Jul" / "Aug" / "Sep" / "Oct" /
  168.                "Nov" / "Dec")
  169.  
  170.     year        = 4*DIGIT
  171.                     -- year should be >= 1970.
  172.  
  173.     hour        = 2*DIGIT
  174.                     -- in 24 hour notation; entries
  175.                        < 10 have leading zeros
  176.  
  177.     minute        = 2*DIGIT    -- entries < 10 with leading
  178.                        zeros
  179.  
  180.     size        = ( <any DIGIT except "0">  *( DIGIT ) )
  181.             / "0"
  182.  
  183.     pathname        = <any text not containing CRLF or " -> ">
  184.                     -- path components should be
  185.                        divided by "/" (UNIX
  186.                        pathname convention).
  187.  
  188.     text        = *( CHAR )
  189.     
  190.     white-space        = *( <ASCII SPACE> / <ASCII TAB>)
  191.  
  192.     token        = <text without white-space>
  193.  
  194.     CHAR        = <any ISO-8859-1 (8-bit ISO10646 subset) character>
  195.                     -- in POSIX.1, file names may
  196.                        contain any printable
  197.                        8-bit-character (at least,
  198.                        I think so ;-)).
  199.  
  200.     NUMBER        = DIGIT *( DIGIT )
  201.  
  202.     DIGIT        = <any ASCII digit "0" .. "9">
  203.  
  204.  
  205.  
  206.         valid Info Line keywords && formats (preliminary)
  207.         -------------------------------------------------
  208.           ( M = multiple lines allowed, ! = mandatory ) 
  209.  
  210.  !M server-name        = "#NAME" white-space token
  211.                     -- any CNAME, first occurrence
  212.                        is preferred
  213.  
  214.   M contact-address    = "#MAIL" white-space *( token )
  215.                     -- RFC822 mail addresses
  216.  
  217.  !  index-version    = "#VERSION" white-space NUMBER "." NUMBER
  218.                     -- INDEX format version. MANDATORY.
  219.                        Indices without a #VERSION-line
  220.                        are illegal.
  221.  
  222.  !  create-date        = "#CREATED" white-space date-time
  223.                     -- index creation time, same timezone
  224.                        and format as other INDEX dates.
  225.                        Mandatory because it is used for
  226.                        diffs.
  227.  
  228.     timezone        = ( "+" / "-" ) <four digits>
  229.               white-space text
  230.                     -- offset to GMT as in RFC822
  231.                        text is optional and describes 
  232.                        the timezone (not parsed)
  233.  
  234.     index-timezone    = "#INDEX-TIMEZONE" white-space timezone 
  235.                     -- timezone of INDEX dates,
  236.                        always +0000
  237.  
  238.     server-timezone    = "#SERVER-TIMEZONE" white-space timezone
  239.                     -- server's home timezone
  240.  
  241.     organization    = "#ORGANIZATION" white-space text
  242.                     -- name of server's organization;
  243.                        not parsed
  244.  
  245.     location        = "#LOCATION" white-space text
  246.                     -- server coordinates etc. (not spec)
  247.  
  248.     access        = "#ACCESS" white-space text
  249.                     -- access restrictions, not parsed.
  250.  
  251.     sort-field        = "date" / "path" / "filename"
  252.  
  253.     sort-specifier    = [ "casesensitive" white-space]
  254.               [ "reverse" white-space]
  255.               sort-field
  256.  
  257.     sort        = "#SORT" sort-specifier
  258.                     -- no sort line means unsorted
  259.  
  260.  
  261. -- 
  262. Heiko Schlichting                     | Freie Universitaet Berlin
  263. heiko@groucho.chemie.fu-berlin.de     | Institut fuer Kristallographie
  264.