Tillbaka till svenska Fidonet
English   Information   Debug  
FIDONEWS_OLD4   0/37224
FIDO_SYSOP   12847
FIDO_UTIL   0/180
FILEFIND   0/209
FILEGATE   0/212
FILM   0/18
FNEWS_PUBLISH   4215
FN_SYSOP   41525
FN_SYSOP_OLD1   71952
FTP_FIDO   0/2
FTSC_PUBLIC   0/13587
FUNNY   0/4886
GENEALOGY.EUR   0/71
GET_INFO   105
GOLDED   0/408
HAM   0/16054
HOLYSMOKE   0/6791
HOT_SITES   0/1
HTMLEDIT   0/71
HUB203   466
HUB_100   264
HUB_400   39
HUMOR   0/29
IC   0/2851
INTERNET   0/424
INTERUSER   0/3
IP_CONNECT   719
JAMNNTPD   0/233
JAMTLAND   0/47
KATTY_KORNER   0/41
LAN   0/16
LINUX-USER   0/19
LINUXHELP   0/1155
LINUX   0/22013
LINUX_BBS   0/957
mail   18.68
mail_fore_ok   249
MENSA   0/341
MODERATOR   0/102
MONTE   0/992
MOSCOW_OKLAHOMA   0/1245
MUFFIN   0/783
MUSIC   0/321
N203_STAT   902
N203_SYSCHAT   313
NET203   321
NET204   69
NET_DEV   0/10
NORD.ADMIN   0/101
NORD.CHAT   0/2572
NORD.FIDONET   189
NORD.HARDWARE   0/28
NORD.KULTUR   0/114
NORD.PROG   0/32
NORD.SOFTWARE   0/88
NORD.TEKNIK   0/58
NORD   0/453
OCCULT_CHAT   0/93
OS2BBS   0/787
OS2DOSBBS   0/580
OS2HW   0/42
OS2INET   0/37
OS2LAN   0/134
OS2PROG   0/36
OS2REXX   0/113
OS2USER-L   207
OS2   0/4786
OSDEBATE   0/18996
PASCAL   0/490
PERL   0/457
PHP   0/45
POINTS   0/405
POLITICS   0/29554
POL_INC   0/14731
PSION   103
R20_ADMIN   1117
R20_AMATORRADIO   0/2
R20_BEST_OF_FIDONET   13
R20_CHAT   0/893
R20_DEPP   0/3
R20_DEV   399
R20_ECHO2   1379
R20_ECHOPRES   0/35
R20_ESTAT   0/719
R20_FIDONETPROG...
...RAM.MYPOINT
  0/2
R20_FIDONETPROGRAM   0/22
R20_FIDONET   0/248
R20_FILEFIND   0/24
R20_FILEFOUND   0/22
R20_HIFI   0/3
R20_INFO2   2868
R20_INTERNET   0/12940
R20_INTRESSE   0/60
R20_INTR_KOM   0/99
R20_KANDIDAT.CHAT   42
R20_KANDIDAT   28
R20_KOM_DEV   112
R20_KONTROLL   0/13082
R20_KORSET   0/18
R20_LOKALTRAFIK   0/24
R20_MODERATOR   0/1852
R20_NC   76
R20_NET200   245
R20_NETWORK.OTH...
...ERNETS
  0/13
R20_OPERATIVSYS...
...TEM.LINUX
  0/44
R20_PROGRAMVAROR   0/1
R20_REC2NEC   534
R20_SFOSM   0/340
R20_SF   0/108
R20_SPRAK.ENGLISH   0/1
R20_SQUISH   107
R20_TEST   2
R20_WORST_OF_FIDONET   12
RAR   0/9
RA_MULTI   106
RA_UTIL   0/162
REGCON.EUR   0/2056
REGCON   0/13
SCIENCE   0/1206
SF   0/239
SHAREWARE_SUPPORT   0/5146
SHAREWRE   0/14
SIMPSONS   0/169
STATS_OLD1   0/2539.065
STATS_OLD2   0/2530
STATS_OLD3   0/2395.095
STATS_OLD4   0/1692.25
SURVIVOR   0/495
SYSOPS_CORNER   0/3
SYSOP   0/84
TAGLINES   0/112
TEAMOS2   0/4530
TECH   0/2617
TEST.444   0/105
TRAPDOOR   0/19
TREK   0/755
TUB   0/290
UFO   0/40
UNIX   0/1316
USA_EURLINK   0/102
USR_MODEMS   0/1
VATICAN   0/2740
VIETNAM_VETS   0/14
VIRUS   0/378
VIRUS_INFO   0/201
VISUAL_BASIC   0/473
WHITEHOUSE   0/5187
WIN2000   0/101
WIN32   0/30
WIN95   0/4277
WIN95_OLD1   0/70272
WINDOWS   0/1517
WWB_SYSOP   0/419
WWB_TECH   0/810
ZCC-PUBLIC   0/1
ZEC   4

 
4DOS   0/134
ABORTION   0/7
ALASKA_CHAT   0/506
ALLFIX_FILE   0/1313
ALLFIX_FILE_OLD1   0/7997
ALT_DOS   0/152
AMATEUR_RADIO   0/1039
AMIGASALE   0/14
AMIGA   0/331
AMIGA_INT   0/1
AMIGA_PROG   0/20
AMIGA_SYSOP   0/26
ANIME   0/15
ARGUS   0/924
ASCII_ART   0/340
ASIAN_LINK   0/651
ASTRONOMY   0/417
AUDIO   0/92
AUTOMOBILE_RACING   0/105
BABYLON5   0/17862
BAG   135
BATPOWER   0/361
BBBS.ENGLISH   0/382
BBSLAW   0/109
BBS_ADS   0/5290
BBS_INTERNET   0/507
BIBLE   0/3563
BINKD   0/1119
BINKLEY   0/215
BLUEWAVE   0/2173
CABLE_MODEMS   0/25
CBM   0/46
CDRECORD   0/66
CDROM   0/20
CLASSIC_COMPUTER   0/378
COMICS   0/15
CONSPRCY   0/899
COOKING   28907
COOKING_OLD1   0/24719
COOKING_OLD2   0/40862
COOKING_OLD3   0/37489
COOKING_OLD4   0/35496
COOKING_OLD5   9370
C_ECHO   0/189
C_PLUSPLUS   0/31
DIRTY_DOZEN   0/201
DOORGAMES   0/2031
DOS_INTERNET   0/196
duplikat   6000
ECHOLIST   0/18295
EC_SUPPORT   0/318
ELECTRONICS   0/359
ELEKTRONIK.GER   1534
ENET.LINGUISTIC   0/13
ENET.POLITICS   0/4
ENET.SOFT   0/11701
ENET.SYSOP   33817
ENET.TALKS   0/32
ENGLISH_TUTOR   0/2000
EVOLUTION   0/1335
FDECHO   0/217
FDN_ANNOUNCE   0/7068
FIDONEWS   23569
FIDONEWS_OLD1   0/49742
FIDONEWS_OLD2   0/35949
FIDONEWS_OLD3   0/30874
Möte FTSC_PUBLIC, 13587 texter
 lista första sista föregående nästa
Text 10027, 481 rader
Skriven 2018-02-15 20:08:38 av Markus Reschke (2:240/1661)
Ärende: review of FSP-1040
==========================
Hi!

This is meant to be an experiment about public feedback for a new FSP. The idea
is to ask you for help on reviewing the FSP regarding grammar/spelling errors
and technical details we might have missed or got wrong. It's not about
discussing why something is defined this way and not that way, and other
similar things. I don't know if you have experience with collaborating on
documents. If you have you know it becomes more complex as more people are
involved. So please focus on the main task.

Here we go:

**********************************************************************
FTSC                             FIDONET TECHNICAL STANDARDS COMMITTEE
**********************************************************************

Publication:    FSP-1040
Revision:       1
Title:          SRIF file request interface
Authors:        Markus Reschke, FTSC members
Date:           2017-12-13
----------------------------------------------------------------------

Contents
--------
                1. Definitions
                2. SRIF
                   2.1 Introduction
                   2.2 Description
                   2.3 SRIF Format 
                   2.4 Required Keywords
                   2.5 Optional Keywords
                A. References
                B. History
----------------------------------------------------------------------

Status of this document
-----------------------

   This document is a Fidonet Standard Proposal (FSP) - it specifies
   the current technical requirements and recommendations for FTN
   software developers, coordinators and sysops of the Fidonet network
   and other networks using FTN technology.

   This document is released to the public domain, and may be used,
   copied or modified for any purpose whatever.


1. Definitions
--------------

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
   NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
   in this document are to be interpreted as described in [FTA-1006].

   Filepath:
     The complete filepath of a file, i.e. path and file name.

   Text file:
     A file containing text characters. Since all keywords are based
     on the ASCII character encoding the format is assumed to be 
     compatible with most other character encodings.


2. SRIF
-------

2.1 Introduction
----------------

SRIF (Standard Request Information File) was developed to be a
standard interface to run external file request processors by mailers.
A standard interface provides more operational flexibility for sysops.
For example, a system can run different mailers for Internet and POTS
lines while using the same file request processor.

Originally SRIF was defined in FSC-0086. But that document is
protected by copyright and can't be simply amended by the FTSC. Also
it lacks some technical details, and new keywords were introduced
meanwhile. This new document intends to fix the shortcomings.


2.2 Description
---------------

The SRIF is a simple text file created by the mailer after receiving
an file request, and contains information for the file request
processor. It includes the filepath of the file request (.REQ file)
and the filepath of a response file besides other information. The
file request processor reads the SRIF, processes the file request,
and writes a list of files found to the response file. After the file
request processor has finished the mailer reads the response file
and sends the files listed.

The SRIF process in more detail:

When the mailer receives a .REQ file request from a calling system it
performs following tasks:
- creates a unique response file
- creates a unique SRIF
- writes all required data to the SRIF, also optional data
- executes the file request processor with the SRIF's filepath as
  command line parameter,
  and waits until the file request processor has finished
- processes the response file and sends the files found
- deletes the SRIF and the response file

The file request processor performs following tasks when executed:
- gets the SRIF's filepath from the command line
- reads its own configuration
- reads the SRIF
- reads and processes the file request file,
  and writes files found to the response file
- may create user feedback, e.g. a netmail packet, and add that to
  the the response file too
  hint: feedback has be a unique file also

The files created need to be unique to support a multi line or
multitasking system. It's up to the software developer to implement
a method ensuring unique files. Some operating systems offer library
functions for that purpose. If you use one of those, select a safe
function which minimizes the risk of race conditions.


2.3 SRIF Format
---------------

As already mentioned, the SRIF is a simple text file containing
information for the file request processor. Each line consists of a
keyword-value pair. The line termination isn't specified, so it could
be CR (Carriage Return, ASCII 0x0D), LF (Line Feed, ASCII 0x0A) or
CR-LF. The file request processor should support all three variations.
Empty lines should be avoided by the mailer, but tolerated by the file
request processor. The syntax for each line is:

  <keyword><space><value or string>

Space is ASCII 0x20. A string can include spaces, for example 
'sysop name'.

Keywords are divided into two groups, i.e. required and optional
keywords. Required keywords must be given by the mailer, and optional
keywords may be given. Each keyword must not be used more than one
time, unless stated otherwise in the keyword's description. Keywords
must not contain any whitespace characters.

The order of the keywords in the SRIF isn't defined. Therefore the
file request processor must be able to accept any order. It should
also ignore unknown and unsupported keywords.


2.4 Required Keywords
---------------------

The SRIF must include the following keywords:


Sysop

  Name of the calling sysop.

  Syntax: Sysop <sysop name>
  Example: Sysop Jane Doe  


AKA

  FTS address of calling system. This keyword can be repeated multiple
  times to list all AKAs given by the remote system (one per keyword).

  Syntax: AKA <zone:net/node[.point][@domain]>
  Examples: AKA 2:240/1661@fidonet
            AKA 2:240/1661
            AKA 10:100/1000.1@othernet


Baud

  Data transfer rate of connection in bps. For IP based connections
  the transfer rate is usually stated as 115200.

  Syntax: Baud <line rate>
  Example: Baud 14400


Time

  Time limit for file request. This can be also used to indicate the
  time left until some scheduled task would block file request
  processing.  If there aren't any time constraints the time limit is
  stated as -1.

  Syntax: Time <minutes>
  Example: Time -1


RequestList

  Filepath of the list containing the requested files. This is the
  .REQ file sent by the calling system. The mailer should make sure
  that the filepath is unique to prevent any problems in a multi
  line environment.

  Syntax: RequestList <filepath>
  Examples: RequestList C:\Inbound\011801d0.req
            RequestList /fido/inbound/011801d0.req

  The syntax of the list should follow FTS-0006. A brief refresher:
  Each line lists one filename or search pattern, and can include an
  optional password. Lines end with a CR (Carriage Return, ASCII
  0x0D). 

  Line syntax: <filename or pattern>[<space>!<password>]

  There is no specification of search pattern and wildcard characters,
  which must be supported. Most file request processors support simple
  wildcard characters like '*' for search pattern, e.g. <name>.*. Some
  also process more sophisticated search expressions.

  For interoperability reasons the file request processor should also
  accept lines ending with LF (Line Feed, ASCII 0x0A) or CR-LF.


ResponseList

  Filepath of the list containing the files to be sent as response to
  the file request. The mailer should make sure that the filepath is
  unique to prevent any problems in a multi line environment.

  Syntax: ResponseList <filepath>
  Examples: ResponseList C:\Outbound\011801d0.rsp
            ResponseList /fido/outbound/011801d0.rsp

  The response list states all the files to be sent using following
  syntax:

  Line syntax: <mode><filepath>

  Each line lists exactly one filepath preceded by a mode identifier.
  The line end is not specified, and could be CR Carriage Return,
  ASCII 0x0D), LF (Line Feed, ASCII 0x0A) or CR-LF. Therefore the
  file request processor should use the OS specific line termination.
  For interoperability reasons the mailer should support all line end
  variations.

  The mode identifier is a single character defining how a file has to
  be processed by the mailer:

  =   send file, and erase it after successful transmission
  +   send file
  -   send file, and erase it afterwards in any case

  Typically, files are marked with '+', since they shouldn't be 
  deleted in the system's file base. If the file request processor
  creates a netmail packet or simple text message for feedback
  additionally, those files could be marked with a "=" to have them
  deleted automatically after transmission.


RemoteStatus

  The remote status indicates if the session with the calling system
  is protected or unprotected, i.e. secured by a session password.

  Syntax: RemoteStatus <PROTECTED|UNPROTECTED>
  Example: RemoteStatus UNPROTECTED


SystemStatus

  The system status states if the calling system is listed or not
  listed in any nodelist.

  Syntax: SystemStatus <LISTED|UNLISTED>
  Example: SystemStatus LISTED


2.5 Optional Keywords
---------------------

The following keywords are optional and provide additional information:


Mailer Session
--------------

CallerID

  Caller ID of the calling system. For IP based connections the IP
  address is stated. There is no syntax specified for the ID itself.

  Syntax: CallerID <ID>
  Examples: CallerID +496033921015
            CallerID 123.45.67.89
            CallerID 2001:DB8:F1D0::2:240:9999


OurAKA

  FTS address of the called system. If the mailer performs AKA
  matching it's the AKA which was called by the remote system.

  Syntax: OurAKA <zone:net/node[.point][@domain]>
  Example: OurAKA 2:240/1661@fidonet


SessionType

  The session protocol used in the current session with the calling
  system. Protocols are EMSI, FTSC0001, WAZOO, JANUS, HYDRA or the
  special case OTHER, if none of the protocols listed before is used.

  Syntax: SessionType <protocol>
  Example: SessionType EMSI


SessionProtocoll

  The transfer protocol used in the current session with the calling
  system, e.g. ZAP, ZMO or XMA.

  This keyword includes a spelling error and is defined this way in 
  FSC-0086 unfortunately. We recommend that the file request processor
  should support the bad and the correct spelling.

  Syntax: SessionProtocoll <protocol>
  Example: SessionProtocoll ZAP


Password

  Password of the current session with the calling system in case of
  a protected session.

  Syntax: Password <password>
  Example: Password secret


Line Settings
-------------

DTE

  Current DTE rate between PC and modem in bps.

  Syntax: DTE <rate>
  Example: DTE 57600


PORT

  COM port in case FOSSIL is used. The valid port range is 1-8.

  Syntax: PORT <port number>
  Example: PORT 2


Remote System
-------------

These optional keywords state details of the remote system when that
information is provided by the session protocol. 


Site

  Site information of calling system.

  Syntax: Site <info>
  Example: Site My little BBS


Location

  Location and/or ZIP code of calling system.

  Syntax: Location <town and/or ZIP>
  Example: Location Butzbach


Phone

  Phone number of the calling system. An unpublished number is
  indicated by the character string "-Unpublished-". The format of
  the phone number is:

   <country code>-<city code>-<number>

  The country code is the country calling code without any leading
  zeros or '+'. The city code shouldn't have any leading zeros either.

  Syntax: Phone <phone number>
  Examples: Phone 49-6033-921015
            Phone -Unpublished-


Mailer

  Mailer of the calling system.

  Syntax: Mailer <id>
  Example: Mailer Foozle


MailerCode

  Product code of the calling system's mailer. The code is in
  hexadecimal format (lower or upper case) and can be an 8 bit (old
  code format) or a 16 bit (new code format) value.

  Syntax: MailerCode <id>
  Example: MailerCode 66


SerialNumber

  Serial number of calling system's mailer. The common format is:

    <name><space><version>/<serial number>

  Syntax: SerialNumber <id>
  Example: SerialNumber MyMailer 1.23/123456


Version

  Version of calling system's mailer.

  Syntax: Version <id>
  Example: Version 2


Revision

  Revision of calling system's mailer.

  Syntax: Revision <id>
  Example: Revision 34


TRANX

  Tranx, i.e. local time of calling system. The time is encoded as
  Unix time stamp (32 bit, seconds since 1970-01-01 00:00:00 UTC) and
  formatted as hexadecimal string with 8 digits. The hexadecimal
  digits can be in lower or upper case.

  Syntax: TRANX <time stamp>
  Example: TRANX 5a326682

  The 32 bit time stamp will overflow in 2038. We haven't seen any
  implemented solutions for that yet, so we recommend to support
  also a 64 bit time stamp (string with 16 hex digits) while allowing
  leading zeros to be omitted.


A. References
-------------

    [FTA-1006]
           Keywords to indicate requirement levels, Fidonet Technical
           Standards Committee administrative. FTA-1006.

    [FSC-0086]
           Standard Request Information File (SRIF)
           Gordian Schuermann & Mirko Mucko  

    [FTS-0006]
           YOOHOO and YOOHOO/2U2
           Vince Perriello


B. History
----------
    Rev. 1, 2017-12-13: First release.

ciao,
Markus

--- 
 * Origin: *** theca tabellaria *** (2:240/1661)