Snapshot of development system up to April 9, 2008 -------------------------------------------------- This *patch* adds INCOMING only support for B2F. In other words, if you want to use B2F to forwarding FROM your system to JNOS then try it out. Be warned, if there is mail waiting for your system on JNOS, then you will get protocol errors since I have yet to implement OUTGOING B2F support. Unless of course you tell JNOS to default to FBBCMP mode. AIRMAIL telnet (internet access) module can now be used to B2F forward to JNOS, including multiple attachments (which are currently saved to the /tmp directory until I get this stuff completed). Only one To: recipient is allowed at this point, but you can CC: to your hearts content. I have tested this over and over, Airmail client can now telnet to JNOS and do this. The INCOMING only B2F will also work via the KAM hfdd interface, and I have confirmed that to work as well. The only thing from a sysop point of view is this : This patch will default JNOS to give a B2F sid when people connect. Be warned, that incoming FBB may not like this, the B2F sid seems to muck something up on that side. If you regularily forward with FBB, then make sure you set 'mbox fbb 2', or else problems will occur. If you want to play with Airmail and other incoming B2F then use the default (when jnos starts) or switch it on the fly 'mbox fbb 3'. The value 3 is a new option for B2F, 2 is FBB compressed, etc. 73 de Maiko Langelaar / VE4KLM http://www.langelaar.net/jnos2 How to install Patch -------------------- WARNING - patch can ONLY be installed on top of official 2.0f release ! * place the 'J20f1.tar' file into the JNOS2 source directory, then : tar xvf J20f1.tar make clean make Files contained in the tar file ------------------------------- 2008-04-08 10:10:17 fbbfwd.c 2008-04-06 09:23:12 forward.c 2008-03-24 16:06:24 lzhuf.c 2008-03-24 14:33:09 lzhuf.h 2008-04-09 18:10:03 mailbox.c 2008-03-26 08:57:40 mailbox.h 2008-03-26 08:59:26 mboxcmd.c 2008-03-27 06:38:36 mboxmail.c 2008-04-10 11:59:47 version.c 2008-04-10 12:14:49 makefile More detailed log ----------------- RCS/fbbfwd.c,v NEW - now support INCOMING only FC proposal and B2F compression. NEW - using message type (m->stype) of 'E' to indicate the FC/B2F combo. sprintf (f.m->line, "FA E X Y Z %s 0", arg2); NEW - forward 'state' (MBX_REVB2F) to indicate we're in B2F receive mode. Very little information is given in the FC proposal, all headers for the transport are contained in the compressed data block we receive. We still fake this as an FA for processing purposes, but put dummy values in to get things going. Originally I was going to modify dofbbacceptnote() to handle any new headers brought in with the B2F/FC encapsulated mode (EM) used by the WinLink and Airmail software, but decided to write a new function to deal with it instead. The message id (arg2) in the FC proposal is still important, since the FBB mechanism counts on it for duplicate checks. NEW - doB2Facceptnote () function decided upon to handle receiving of any incoming B2F compressed forwarding, instead of hacking up the existing dofbbacceptnote () function. Cleaner approach. Added a 'b2f' parameter to the recv_yapp() function, so that it knows about the 2 byte CRC in front of the regular FBB compressed payload. BUG - Thanks to AA6HF (Jack) and his forwarding partners, I discovered a bug that was messing up the 'tofrom' field of bulletins. This was apparently also messing up the proper handling of R: line entries. Fixed a bad typo in the AIRMAILGW (email gateway) code I added some time ago. The typo was preventing the 'tofrom' field from being properly setup, messing up headers in the message. RCS/forward.c,v Send B2F in our SID only if the remote system supports it. Uses the new B2F mailbox SID string (version.c). RCS/lzhuf.c,v Removed the very old (never used) LZHTEST development code. The function calls did not even match the latest function prototypes, so compile would always fail. Added 'b2f' parameter to the Decode() function. B2F puts a CRC in front of the regular FBB compressed data, so skip the 2 bytes for now. Of course I will need to actually make sure the CRC is matched - TODO LIST ! Added a 'b2f' parameter to the recv_yapp() function, so that it knows about the 2 byte CRC in front of the regular FBB compressed payload. RCS/lzhuf.h,v Updated Decode() & recv_yapp() prototypes to include the new b2f parameter. RCS/mailbox.c,v Removed a bunch of long unused '#ifdef notdef' code. Figured out incoming AirMail telnet client. The '.' character that preceeds the login user name will help me set CRONLY so that the mbx_parse works properly. CRONLY is needed or else the first byte of each command gets lost. As a result and in conjunction with other mods ... April, 2008 - successfully used Airmail Telnet Module to B2F forward email (and multiple attachments) to JNOS ! Added NEW j2sysevent() notification for bbs CONN, and DISC events. Added '3' value to 'Mfbb' so that JNOS will now show B2F in the SID for incoming connects. Use the 'mbox fbb 3' command. This uses the new B2F mailbox SID string (version.c). RCS/mailbox.h,v Added '#define MBX_REVB2F 18' to indicate B2F reverse forward mode. Added 3rd option, FBB batched (B2F compressed) to Mfbb global var. Added 'sid2' member to mbx structure definition, since 'sid' does not have enough room. Need 'sid2' for B2F and future considerations. Added extern reference to the new B2F mailbox SID string (version.c). RCS/makefile,v Added -DB2F -DMB_XFBB_KLUDGE to the PATCHES line ... RCS/mboxcmd.c,v If B2F is defined at compile time, the FBB forward level (mbox fbb) will now default to 3 (B2F), instead of the previous value of 2 (FBBCMP) ... Modified dombfbb() - maxvalue is now 3, not 2 (if B2F is compiled in). RCS/mboxmail.c,v Removed a bunch of long unused '#ifdef notdef' code. Modified dosid() to set m->sid and new m->sid2 with new MBX_B2F flag if the incoming SID contains a '2' identifier. RCS/version.c,v Bumped up the version to 2.0f1 (primarily B2F and airmail development). Added a new SID string, char MBoxIdB2F[], for B2F forwarding.