XRPi Home

Documentation Index
Alphabetic Index

XRPi Documentation - Configuration

Application Support

In this context, the word applications refers to programs which use XRPi to provide their connectivity with the outside world.

Unlike its 16 bit forerunner, XRPi does not provide the BPQ Host API, but it does provide the following means to support applications:

Defining Applications

Some applications, such as those using the TNC2 emulator, do not accept incoming connections, and this section doesn't apply to them. Nor does it apply to applications accessed via KISS / SLIP / PPP or proxies. For the remainder, read on...

In order for applications to be able to accept incoming connections, they must be specified in XROUTER.CFG, using APPL configuration blocks.

Each definition block must begin with APPL= and must end with ENDAPPL. There must be a separate block for each application. Applications which use more than one stream need only a single definition. The APPL block should contain one or more of the following keywords:

APPLNAME
The nickname or shortcut by which the application is accessed from XRPi's command line. e.g. "BBS". If a user types this name at the command prompt, they will be connected to the application.

APPLCALL
The AX25 layer 2 callsign which the application will use. If specified, the application will accept AX25 L2 connects to this callsign, subject to the setting of APPLMASK (see below).

APPLALIAS
The AX25 layer 2 "alias" for use by the application. If specified, the application will accept AX25 L2 connects to this callsign, subject to the setting of APPLMASK (see below).

APPLQUAL
Netrom quality to broadcast (0-255). If a non-zero value is specified here, and BOTH the APPLCALL and APPLALIAS are defined, they will be included in Net/Rom nodes broadcasts and the application will be connectible at AX25 layer 4. The higher the quality, the further the node entry will propogate. If this parameter is not specified, the global APPLQUAL will apply.

APPLFLAGS
defaults to 0 if omitted. The flags are as follows:
	Bit Value  Action
	------------------
	 0    1    Application has SYSOP privileges.

	 1    2    Allow "guest" users to access the appl.

	 2    4    XRPi sends "Connected to (applcall)" to the
	           user upon connection to an application.
	           This is not required if the application
	           sends its own "Connected to" message.

	 3    8    XRPi sends "Connected to (usercall) to the
	           application, when a user connects.

All fields within an application definition block are optional - you may have for instance choose to have an APPLNAME but no APPLCALL, meaning the application could only be reached by typing the applname at the command prompt. Or you could have an APPLCALL but no APPLNAME, in which case the application would be directly connectible, but wouldn't be reachable from a command line shortcut.

The application number must be between 1 and 8. Some BPQHOST applications have fixed application numbers, e.g. BBS's and PMS's must usually be the first application and Host programs such as PAC4 are usually the second. However, since BPQHOST API isn't currently implemented, the choice of application number is arbitrary at present.

Example:

	APPL=1
		APPLNAME=BBS
		APPLCALL=G8PZT-5
		APPLALIAS=PZTBBS
		APPLQUAL=50
	ENDAPPL

AX25 Visibility

If you want an application to be directly connectible on a particular port, the application must have an APPLCALL, an APPLALIAS or both, and the corresponding bit in that port's APPLMASK must be set.

APPLMASK specifies which applications will be directly connectible on a given port. The default is 255, which allows all applications. The value is made up by adding together the desired selection from the following numbers:

	1       - Enable Application 1
	2       - Enable Application 2
	4       - Enable Application 3
	8       - Enable Application 4
	16      - Enable Application 5
	32      - Enable Application 6
	64      - Enable Application 7
	128     - Enable Application 8

For example, if a port's definition contains "APPLMASK=9", it will only allow direct connections to applications 1 and 4 on that port, providing those applications have either an APPLCALL or an APPLALIAS.

Downlinking From Applications

Certain settings of a port's CFLAGS may prevent all downlinking on that port. For example, in a mixed CB/HAM node you may need to use CFLAGS=1 to prevent CB users from making L2 downlinks on the HAM port. But that would also prevent HAM applications from downlinking on that port.

This can be solved by setting bit 2 (decimal value 4) of CFLAGS, which allows applications to downlink unconditionally.

Setting this flag allows applications to make L2 downlinks on ports which are closed to users, e.g. CFLAGS=1 prevents everyone excepts sysops from downlinking, whereas CFLAGS=5 prevents everyone except sysops and applications from downlinking. See CFLAGS for more details.

See Also: