The Standard Client
Dirk Koopman G1TLH
Last modified: Fri Jan 19 14:25:13 GMT 2001
Introduction
The standard client program is written in perl and lives in /spider/perl/client.pl.
It performs the interface function
between the cluster daemon (/spider/perl/cluster.pl) and
AX25 or Telnet connections, both incoming and outgoing.
There is a related program called /spider/perl/console.pl which,
as of version 1.30, is the standard sysop or full duplex telnet user
connected interface program. This is a simple screen oriented program
that has a bash or shell like command history editing facility as well
as a scrolling cluster window with colouration of particular lines of
interest (such as DX spots, Announces etc).
client.pl
The client itself is a rather rudimentary program which really only deals with
things like line end conventions and noticing when a connection goes away. It is
envisaged that at some time in the nearish future this program will be written in
C and thus become considerably smaller. But, for the moment and whilst this area
is under some development, it will remain in perl for ease of change.
The client can take up two arguments: a "callsign" and a connection type.
The "callsign" can have the following values:-
- A real callsign (!).
For incoming connections it is important to make sure that
the callsign passed DOES NOT have an SSID (use the %u
or %U in ax25d.conf). The DXSpider system largely
ignores what it regards as 'duplicate' callsigns (and that
includes those with SSIDs) except in certain special cases.
- The name of a connect script.
- login This will cause a unix like login: and
password: phase to be run. With version 1.13 the password isn't
checked unless there is a password recorded in the user file - but you have
no means of recording a password! (unless you have created a local set/password
command - please donate a copy it you have)
Also in 1.13 only existing users can enter via this means. This will probably
change, but please discuss this in the support
mailing list.
The connection type can be:-
- ax25 This tells the client to use ax25 line conventions.
- telnet This tells the client to use normal unix line conventions.
- connect Start an outgoing connect script.
Use the line conventions in that script.
The connection type can be missing in which case the default is unix line conventions.
If both the callsign and the connection are missing then it is
assumed that the client is the sysop and uses the callsign set in
your local copy of DXVars.pm.
Considerations
As mentioned earlier, SSIDs are generally stripped from
callsigns except in two cases:
- For Cluster node callsigns. Although here in the UK we are issued with
special callsigns to run cluster nodes and BBSs, this is not universal. Therefore
by marking a callsign as a node you disable SSID checking. You will have to treat
incoming cluster callsigns specially in ax25d.conf to use this feature (i.e
you will have to set up a line specially for that callsign with a %s or %S for the
callsign substitution [better just put the callsign you want!]).
- The sysop callsign set up in your local copy of
DXVars.pm. You must call client.pl with
no parameters for this to work.
Files
The client only uses files when in the login phase. It
prints the /spider/data/issue file, if it is present, to
the user before issuing the login: prompt. After a callsign
and password is entered it uses
the standard cluster user file to check them.
Having said all of that the client appears to use the following files and
sends them to the user if they are present:-
- /spider/data/motd which is sent to the user on normal user startup.
- /spider/data/logout which is sent to user on disconnection.
- /spider/data/offline which is sent to the user if the cluster daemon
isn't running.
Copyright © 1998 by Dirk Koopman G1TLH. All Rights Reserved
$Id$