Next Previous Contents

24. Extended White Pages Protocol (WPROT) Version 1.0/Rev.1

Protocol specification

This paper defines an advanced protocol for the exchange of white pages information between amateur radio bulletin board systems. It is based on earlier standards defined by W0RLI and F6FBB (commonly known as WP).

24.1 Features

24.2 Compatibility

WPROT is backwards compatible to the WP-system of W0RLI and to the E/M-system used in the DieBox. /G and /I (guess and info) messages of WP are not supported.

24.3 Why another protocol

The original WP protocol only supports exchange of home bbs data. The exchange of this data is unsecure (every user may send out any WP message), the timestamp does not include time of the day, and it is not compatible to the E/M-System by DieBox which is still in use. Its Y2K compatiblity is unknown (date in ``990407'' format).

The system of DieBox is very inefficient - only one info per mail can be sent. It supports ``remote erase'' of bulletins - a feature which was massivly missused in the past due to the lack of any internal security.

WPROT is compatible with both - E/M and WP, takes advantage of both protocols, and adds some extra functionality.

24.4 What has to be done by the sysop

When forwarding data to neighbour BBS the sysop has to activate WPROT forwarding to the direct neighbours. The actual configuration depends on the implementation. (eg. BCM: $WP in fwd.bcm).

24.5 System Identifier (SID)

Systems supporting W-prot have a ``W'' in their SID. This letter indicates that WPROT messages shall be sent instead of old style WP messages. Note: If E/M messages are accepted or not is defined by having a ``D'' in the SID.

Example:


[BayCom-1.40P-AB1D1FHMRW$] 

24.6 Format of messages

WPROT updates are sent out using mails addressed to W@<neighbour>. The board W is used because it is a ``hidden'' board on some systems (BayBox,DPBOX,DieBox).

On receive only mails directly received from a forwarding partner with ``W'' in its SID should be processed. This is for security reasons only, as we only may expect a secure communication channel to our direct neighbours.

The message may be arbitrary long. It consists of individual records, each one line long. Line are seperated by CR (as usual on Packet Radio). Characters are 8 bits wide, standard ASCII characters are used.

(Note: Only 7bit characters are defined in ASCII, the representation of any characters > 0x7f is undefined).

The length of some fields/lines (eg. name, qth) may be limited on some systems. If a record exeeds the local limitations it should be trashed.

Sample mail:


------
W < OE3DZW @OE1XAB  $F29OE3DZW005
------
WP Update
R:990407/0944z @:OE3DZW.#OE3.AUT.EU [BayCom-Mailbox] Bcm1.40P

D7 V 10
68 B OE3DZW.#OE3.AUT.EU 10 0 DL8MBT AX25 OE3DZW-8 923478289 1
5C M OE3DZW OE3DZW.#OE3.AUT.EU 749OE3DZW004 923471053 OE3DZW 1 "Dietmar" ? "?"
00 E WW OE3DZW F29OE3DZW007 F29OE3DZW006 OE3DZW 1 "#E"

24.7 Format of records

For each record exactly one line is used. Any record has the following general format:


<checksum> <flag> <data>

The <checksum> is a simple byte-checksum initialized with 00, running from <flag> to <data>. It does not include the space before <flag> and not the linebreak after <data>. The checksum is printed as a two digit hex-value using upper case characters (eg. ``4F'').

The flag may be several characters long (max. 10 char), but usualy is just 1 character.

Sample line:


48 M OE3DZW OE3DZW.#OE3.AUT.EU F29OE3DZW004 919094319 OE3DZW 1 "Dietmar" ? "?"

^checksum
   ^flag
      ^data (depends on flag)

General rules:

24.8 Flags

Up to now the following flags are defined:

The flags V and M are mandatory for every system using this protocol. Other flags may be ignored on receive.

24.9 Flag V

This flag is used to indicate the version of WPROT.

Format:


<version>

<version> is a unsigned 32bit number, 10 stands for Version 1.0

A version line should always be at the beginning of a WPROT message.

If the version is higher than the highest version supported by the local system the messages should not be processed. This proposal defines Version 1.0

24.10 Flag B

This flag is used to send bbs-records.

Format:


 
<h-Adr> <sysop call> <com prot> <hw-adr> <timestamp> <hop>

24.11 Flag M

This flag is used to send home bbs infos. (Mandatory)

Format:


<call> <home bbs> <bid> <timestamp> <origin bbs> <hops> <name> <zip> <qth>

(On the receive there is no need to add this BID into the local BID-pool).

24.12 Flag E

This flag is used to send remote erase infos.

Format:


<flood> <bbs> <bid> <erase_bid> <call> <hops> <comment>

Example:

Original Mail:


------------
TEST < OE3DZW @WW                       $F29OE3DZW00
------------
R:990215/1734z @:OE3DZW.#OE3.AUT.EU [BayCom-Mailbox] Bcm1.40mg
From: OE3DZW @ OE3DZW.#OE3.AUT.EU
To:   TEST @ WW
TEST < OE3DZW @WW $F29OE3DZW006

(..)

will be erased with:
2F E WW OE3DZW F29OE3DZW007 F29OE3DZW006 OE3DZW 1 "#E"

24.13 Routing of WPROT messages

Some records (messages with hop counter) shall be forwarded to other BBSes when

(*) if a previous record has been received with identical data an update may be suppressed within a certain time-window (eg. B updates only when altered or every month)

If the local BBS does not support a certain flag, messages may not be forwarded. E and B flags may not be supported, M must be supported.

24.14 Mixed WP/E&M/WPROT-Systems

The following conversions are possible:

WP   <-> WPROT (flag M only)
E/M  <-> WPROT (flags M,E)
WP   <-> E/M   (flag M only)
When converting from WP to WPROT or E/M the timestamp has to be converted from YYMMDD (eg. 990215) to ANSI: Sec: 00 Min: 00 Hours: 00 (GMT), -1 day (= -86400s) (!!)

When converting from WPROT or E/M to WP the timestamp has to be converted by cutting off hours/minutes and seconds.

24.15 Security

Only messages received directly from the forward-partner (also WP style messages) should be processed.

Vienna, 1999-04-07


Next Previous Contents