ldsped, an agw-like packet interface from linux
Copyright (C) 2006, Lieven De Samblanx, ON7LDS.
All rights reserved
-----------------------------------------------

ldsped will only process R,G,k,K,m,P,M and H frames.

G frames : ldsped will report all linux ax25 ports, port call between ()
and description as reported by the OS.
H frames, will only be processed if mheardd(8) is running on your system.
if not, an error will be given
M frames are processed, but without returning a T frame.

All this is sufficient for a number of agwpe-compatible programs.

Since X, C, D, d etc. frames are not processed, terminal programs will not work
as expected. But programs that are just monitoring or programs who construct their
AX25 frames themselves (as does UI-View) funtion well.

I tried some client programs on my windows machine, and despite the
not-always-well-written programs it all now seems to function well.
Some programs rely to heavy on the expected layout of the frames: with the early
beta ldsped versions, slightly inexpected framelayout (a space on de wrong place
could do the trick) crashed some of these programs.

If you experience problems, please tell me about it. Include enough information
so I can try to reproduce the problem.

If you have improvements, please me know. I'm not that good as a C programmer.


Extra functions
---------------

Extra functions include a PGHR probe, traffic monitor and interface for mrtg
(http://people.ee.ethz.ch/~oetiker/webtools/mrtg/)

TRAFFIC object
-------------

Specify the number of traffic beacons to be send each hour

traffic 6

will generate a traffic object 6 times an hour = every 10 minutes.


trafficname LDSPED

This option specifies the object's name. When you do not give this
option, the default object name TRAFFIC is used.

Specify the position of the object :

trafficpos 5059.39N\00453.90E?

The traffic object will be owned by the call of the sending port,
unless you specify an optional call who will be the owner :

trafficcall ON7LDS

The object wil be sent on only one, or on all ports :
-1 = send traffic object on all ports
0,1, ... = send traffic object on specified port

trafficsendport -1

When specifying the 'trafficport' option, one is able to question ldsped
with mrtg to generate stats about the local traffic.
i.e. :

MRTG port & MRTG configuration
------------------------------

NB : the traffic object does not need to be defined for this to work.

trafficport *:8005

will install port 8005 as traffic-stats port.
Warning : Upon reading, the counters are zeroed !
mrtg config example :

Target[ldsped]: `nc localhost 8005`
Options[ldsped]: gauge, nopercent, growright
MaxBytes[ldsped]: 3000
#WithPeak[ldsped]: dwm
Title[ldsped]: AX25 ldsped Probe stats
YLegend[ldsped]: packets
Legend1[ldsped]: Number of packets
Legend2[ldsped]: Number of packets
Shortlegend[ldsped]: pkts
WithPeak[ldsped]: wmy


PHG probe
---------

specify probestring & path
(see http://eng.usna.navy.mil/~bruninga/aprs/probes.txt and
http://www.aprs.net/vm/DOS/PROTOCOL.HTM or others
or use an internet calculator to constuct the right probe definition) :

probestring PHG70302/lsdped probe
probeunproto RELAY WIDE

probesendport -1
probecall ON7LDS


Logging
-------

ldsped can log some operational information.
When started in console mode, all info will be printed to screen.
In daemon mode, the info is logged to syslog.

The logging is switched on by specifying the -l option on the
commandline. More l's instruct ldsped to be more verbose.
Alternatively, the 'loglevel' keyword in the config file specifies
the loglevel. The commandline option will be overruled, the moment
this keyword is processed. If you set a high loglevel and you want
to see info concerning the config file, set the logging keyword
first in the configuration file.
If you just want a high logging level starting up, and a low loglevel
once the program is running, start the program with the -lllll option
and set 'loglevel 1' at the end of the config file.

I hope this progam is useful to you.

ON7LDS, Lieven De Samblanx