The WB2PSI mods to JNOS have been updated to be based on JNOS 1.10g.
This file describes the mods.  Most can be enabled or disabled with
config.h.  Some, however, cannot.

Most of my work has been in convers.c.  You'll notice therefore that
my version is quite a bit different from the standard version.  Most of
the new features of convers have been exercised for over a year, using
radio links, but not internet links.  Reportedly others have tried this
code on internet.  Note that I have kept the convers features compatible
with the standard JNOS convers server.

Here's a brief summary:
MAIN.C CONFIG.C MAKEFILE and others:
        WA2ZKD's "Byte-Saver Mods".  Text was moved to files, some other text
        was deleted.  In PC.C, the hard-coded VT100 key meanings were removed.
        Note that the makefile creates a couple of new files that will need to
        be installed with the executable.
CONFIG.H
        Contains some new #defines - intended to allow you to pick and
         choose from the mods:
#define whofor "WB2PSI (switch)" /* who is the compile for */
#define N2RJT_FINGERS    /* Enable for more fingers available from the finger daemon */
#define N2RJT_PRINT_COMMAND /* Print command */
#define XCONVERS         /* LZW-compressed convers */
#define CHANNELNAMES     /* Named convers channels */
#define CALLCHECK        /* Checks for valid callsign in convers */
#define LOCAL_CHANNELS   /* Local channels don't convect to other nodes */
#define ENHANCED_VIA     /* If convers user is local, "via" gives more info */
#define CHANGE_PERSONAL  /* Allow users to change their personal data */
#define LINK_CHANGE_MSG  /* Send link change messages in convers */
#define MBOXRESET        /* Allow disconnect of mbox users by sysop */
#define SESSION_SPLIT    /* Session split on/off command */
#define LZW_TELNET_3601  /* Automatically compress telnet to 3601 */


COMMANDS.H CONFIG.C DIRUTIL.C 
	Print command.
CONVERS.C FILES.C FILES.H
        Many intermingled features added:
        Did you ever notice that "%" in text can crash JNOS?  I've fixed
            all of these, except possibly in the /personal text.
        Channel Names
            CHANNEL.DAT contains the names of convers channels.  If these
            are used, it is useful for all linked convers nodes to have
            identical channel lists.
        Local Channels
            Data originating from a local user on this channel does not
            get sent to linked convers servers.
	Callsign validation (cheap and dirty)
            Same algorithm as used by the mailbox code.  If this is enabled,
            you have to use a valid callsign as your name when signing on to
            the convers server.
        Enhanced VIA field in the WHO command:
            For local users, the mode of connection is shown in the VIA field,
            which would otherwise be blank.  The neighbor NETROM node, the
            ax25 port, or "telnet" are displayed.
        Compressed convers links:
            LZW compression on socket 3601.  Especially good for links.
            Sometimes LZW protocol errors cause the link to drop.
	Link status change messages to local users.
            Whenever a link to a remote convers server is established or
            dropped, a status message is sent.  When the link is dropped,
            the message contains a list of all remote users who were lost.
            This message therefore supresses the list of "XXXXX signed off"
            messages.
        Changes made with /p command can be recorded in the file.
            If this mode is enabled, the dbase.dat file is updated by the
            /p command.
	CONVERS UNLINK command, to drop permlinks.
	Added timestamps to /WHO and /LINK output.
	Added farcoreleft() output to /LINK, to help anticipate nosedives
            on our system, which is usually unattended.  This is obsolete
            now .. the system is very stable, but things weren't always
            that way!
	Added more strlwr() calls.
        More I've probably forgotten.

FILES.C FILES.H (and all places userlogin is called)
	Added a parameter to userlogin, to specify a default account.  Works
	 just like UNIVPERM, except it's different in each call, so you can
	 (for example) prevent incoming NETROM connects from getting to CONVERS.
FINGERD.C
        Added fingers for doaxheard and dombpast
MBOXCMD.C
	Added a MBOX RESET command, to kick off stalled users.
MISC.C NETUSER.C
	Added recognition of 3601 as XCONVERS
TELNET.C
	Automatically compress if telnetting to 3601.  This is a kludge, and
        should be generalized or negotiated.  I've considered adding a
        command: LZW ADD 3601.  But I'd rather see the compression get
        negotiated.

New/modified commands:

ATTACH ASY -    The last parameter can be 'x' for full-duplex, which ignores
                flow control.

START CONVERS - A new optional parameter specifies the TCP port number the
                server will respond to.  This allows multiple convers servers
                to be running on one computer.  To start a compressed convers
                server, use: START CONVERS 3601.  There used to be a separate
                START XCONVERS command, but Johan's last changes to convers.c
                made that more difficult.
CONVERS XLINK - Like CONVERS LINK, but establishes a compressed permlink.
                XCONVERS has to have been compiled in, but the local 3601
                convers server doesn't have to be enabled.
CONVERS DROP -  Drops the specified link, or drops all links if no parameters
                are given.
CONVERS SETINFO ON|OFF - if enabled, /personal data gets saved to the file
                permanently.  If disabled, only the data in memory is changed.
MBOX RESET -    Kicks off the specified user.  Useful for killing defunct
                connections.
TELNET <addr> 3601 - The socket will be compressed.  Useful kludge for connecting
                to a compressed convers server.

Other stuff you'll need to know:

Channel names are in CHANNEL.DAT by default.  This can be changed with
the NOS.CFG file, though.  The first token on each line is the channel number.
The second token is the channel name.  The two tokens are separated by
whitespace.

New fingers:  past - show past mbox users
              aheard - show ax25 heard list

Userlogin defaults:
        These work EXACTLY like UNIVPERM except that they are specific to a
        section of code.  Put these in your ftpusers file if you see a need.
        Some of these are probably useless (like confdef), but it was easier
        to add them than not to.

        tcpdef - telnet login to mailbox
        ax25def - ax.25 login to mailbox
        netdef - netrom login to mailbox
        confdef - convers signin
        pppdef - PPP's call to userlogin
        ftpdef - ftp login

Byte-Saver Mod Files:
credits, config.inf and longmenu.eng are new files that should go into the
directory tree of JNOS.

Share and Enjoy!
--
73 - Dave N2RJT  [44.69.128.7]
Internet Email   dcb@rfc.comm.harris.com
LLBBS Email      dcb@vectorbd.com
USMAIL           Dave Brown; 153 Thornell Road; Pittsford NY 14534
Packet Mail      N2RJT@WB2PSI.#WNY.NY.USA.NA

