home *** CD-ROM | disk | FTP | other *** search
- V7 code converted and initially working approx 4-May-92.
- Start on V7.00a
- - modify makehdr in mbmail() so that the test for sysop status is done
- after the normal tests. Otherwise a sysop will see a message that has
- been both read and held listed as Read instead of Hold. The sysop
- would also normally never see type 'O' because a message that is Old
- and due for killing will usually have been read and Read overrides
- Old.
-
- - untmsg() had missing return(1) at the end of the routine.
-
- - cprs_bid() used " " instead of ' ' in a fill() call.
-
- - add pgst() to dloadm().
-
- - fixed the abort function. If user types a carriage return during
- reception of output from 'R' or 'L' command it aborts the output.
-
- - add timezone.c module to allow proper handling of timezones.
-
- - modify chkhier so that if it finds a path with .USA or .CAN on the
- end, it adds .NA . This allows the states.mb file to be a bit smaller
- since all the USA and CAN calls don't need .NA on the end.
-
- ------------------------------------------------------------------------
- V7.00b
- - Fix minor bug in rduser() in mbuser.c. It did not blank the qth field
- if the user callsign was not found. So what was there before was
- left in next time round.
-
- - BAD bug! I ifdef'd out the code to make a remote sysop. It should have
- only been removed in the 'sysop' process.
-
- - ANOTHER BAD Bug. The remote sysop didn't work anyway because the
- initpass routine wasn't reading the password table properly (funcs).
-
- - added a semaphore for each of mail.dat user.dat and bid.mb.
-
- - semaphore code added to all accesses to the bid.mb file
-
- - allow up to 8 nesting depths in forwarding files (was 5).
-
- - semaphore code added to all user.dat and mail.dat accesses. It appears
- to work as of 17th-sep-92 (with only one 'mb' and 'sysop', but even so
- it's looking good).
- + Have now added code to allow startup of separate processes on
- different ports. Will add feature in mbinit to allow unit number
- and device name to be added to end of port line in config.mb
- (done).
- + Port # is in title bar
-
- - adding code to make the bbs handle a modem.
- + Fix inittnc so that it skips the TNC checks and only does the
- tnc.on or tnc.off file.
- + Make the baudrate a long so the modem can have a high DTE rate.
- + allon and alloff put modem on or off hook as appropriate.
- + make devtnc from inittnc(in amiga.c) global for allon,alloff
- + prevent monitor() from trying to handle modem
- + waitcmd must look for "ok\n\n" because each char rcvd is lowercased
- before checking and also every OK response is followed by CR/LF
- unlike a TNC which sends "cmd:" with no CR/LF after it.
- + make bye() send +++ and then ATH0
- + make a forced disconnect also force the modem on-hook.
- + Modem port in config.mb should have E and L set.
- + Fixed echo to screen of LF/CR when in talk mode.
- +++++++ I put a few fixes into the original mb*.c code without #ifdef
- MCH_AMIGA around it. I think I've found them all, but if things go
- wrong with the modem on the next upgrade, look for stuff in my code
- that's not in the distribution.
-
- - make the 'M' command add a bid when sending bulletins.
-
- - The ALL(N) message in Btext has been fixed. (And a bug removed that I
- added while attempting to fix it!)
-
- --------------------------------------------------------------------------
- V7.00c after 28th sep 1992
- - Added getserstat() in ser.c to get the serial port status so that
- getdat() can keep checking to see if carrier has dropped on a serial
- port login. This works - it does log user out if CD drops.
-
- - Cleared up some of the confusion over which port is active when trying
- to logout the sysop from the console when a modem is on the serial
- port. It now sends ATS0=2 if the sysop types Bye or if the command
- times out in getdat.
-
- - Fixed up minor echoing problem. BBS now echoes user commands from a
- connected modem.
-
- - Fixed bugs in the lock.c routines. They were initializing the
- semaphores when a program started and ONLY the locker program should
- do that.
-
- - move the mbuser.index file from ram: to T:
-
- - change do_idle to call str_search before it prints out a monitored
- packet. Also fix charf to remove bad chars too.
- Trying to fix up a problem where the program locks up on
- some TNCs.
-
- --------------------------------------------------------------------------
- V7.00d after 1 Nov 92
- --------------------------------------------------------------------------
- V7.20 source rcvd, ported + being tested.
- - Fix getenv bug in timezone.
- - added a system version string for the "version" program to find.
- - modified pfld in mbmail so that user is warned if they enter an unknown
- BBS in the @BBS field.
- - Now that 7.2 has the NP command there's no need for my code which has
- been removed along with option C.
- - Added AREXX port. It uses the same port name as was used before.
- It requires rexxhost.library.
- - Added code to amiga.c to receive an AREXX message. Haven't added the
- message processing yet. NOTE that SYSOP receives the AREXX messages
- but throws them away because it does not respond to AREXX commands.
- - CBBS_A will receive an A message from SYSOP. Need to change whole
- system so that sysop can find all the other ports if they are there.
- - all occurrences of waitbits must be local. Otherwise, for example,
- when a rexx command comes in to do_idle, the forwarding I/O routines
- can change waitbits so that it doesn't have rexxbit set any more.
- - changed sysop so that it reads in all the ports but still only uses
- cport. Note at the end of setinit that it has to copy cport->fl
- from port->fl before doing an ioinit(cport). The system opens the
- first port structure and then opens the init file in that structure.
- But it will be the first port in config ... not necessarily the same
- as cport.
- - previous mod has allowed sysop to use the A and AI commands as well
- as the other two variations.
- - Changed total number of rejects to 30.
- - have most of changes in fbbfwd to allow to it to send msgs to fbb
- but it will always defer any proposals from the other end.
- - added code to permit MID
- - added -f flag to permit FBB forwarding, otherwise it does normal RLI
- forwarding even if other end is FBB.
- - Sending FBB messages works and it also correctly defers all messages
- from other end (until I get the receive side working).
-
- ========================================================================
- V7.20b 15th Jan 92
- - changed ljsf in mbutil so that it treats a space as end of the field
- for code in FBB routines - it won't affect existing uses.
- - fixed bug in sending fbbfwd which was skipping every other message.
- - also fixed problem in handling response. Must copy the response to a
- separate array since port->line is reused during transmission of
- messages.
- - had to fudge the calls to fbbfwd in mbfwd so that the pgm did a
- rduser of the called BBS otherwise the BBS name is me and it doesn't
- mark the BBS as having received bulletins because the comparison
- uses my call.
- - after receiving one bulletin and turning it back to other end I get an
- error message from the program saying unknown FBB command. It seems
- that VE5BBS is sending a Carriage Return instead of FQ, although it
- does sometimes send FQ. VE5BAR always sends FQ (so far).
- - added breakport routine to ser.c so that it can send a break to the
- TNC to cancel transparent mode. This appears to make the transparent
- mode work properly. Need to test it with a binary transfer!
- - add some logging info to fbbfwd.c
- - Removed all #ifdef of MCH_MULTI and MCH_LOCK. Either removed them or
- changed them to #ifdef MCH_AMIGA as appropriate. CBBS is now just a
- multi-user version.
- ===========================================================================
- V7.20c 18-Jan-93 All MULTI and LOCK have been removed. System uses FBB
- forwarding.
- - added code into fbbfwd to turn on transparent mode if doing compression
- and user allows it (option #C). Note that after an FBB forward, the
- system calls distnc which ultimately calls breakport which forces the
- TNC back into command state.
- - started adding YAPP protocol to permit compressed files. Modified ser.c
- to add a few more routines to handle the I/O required by YAPP.
- - FBB ASCII protocol works in both directions.
- - FBB compression works on receive from FBB.
- - The encode function is more awkward because I need to know the length
- of the file before I start sending anything and I can't do this
- because I have to translate LF in the text to CR/LF for the IBM.
- So I create a temporary file t:fbb.tmp which is then used for the
- encoding. A few minor problems along the way were that I forgot to
- open the temporary file as "w+" (which prevented it rewinding in the
- encode routine) and I didn't include the file length in the checksum.
- - modified SM and MM commands so that they generate MIDs.
- - the encode works for small files but fails for large ones. However, the
- lzhuf program works correctly on the large files so there's something
- fishy here!
- - Added an "OP <opt>" command to toggle option <opt> where <opt> is an
- alphabetic character between A and J.
- - Move the change to transparent mode into fbbfwd. If FBB called me I
- was losing its first proposal. So the best thing to do is force into
- transparent mode when we know that it is waiting for us to send
- something.
- - Now checking the checksum on a F> prompt in compressed mode.
- - add null modem as a device type.
- - Add option G to turn off use of AREXX (for older Kickstarts)
- - tried to put ZOO in but the compression won't work so have used
- #ifdef MCH_ZOO to remove the code.
- - Generate checksum when sending F> after FA in compression
- - Changed all the memory allocation in fbb and lzhuf to AllocMem.
- - modify prtx so that $A prints out calling station if there's no @bbs
- in a message being sent to them.
- - modify contnc in mbtnc to handle a dialout on the phone. The user puts
- the connect string in the 'C' command in the script file. For example,
- instead of the tnc type of command such as:
- CC VE5VA
-
- you put the AT string instead:
- CATDT5551212
- The routine will ignore any string beginning with "RING" and will
- assume it is correctly connected when it receives a string beginning
- with "CONNECT". Anything causes cancellation of the connect.
- - Add a fbb_direction variable so that I can call fwd() from mbcmd. This
- will then set up all the forwarding variables whether I call out or
- someone calls in.
- - make pcall do a toupper.
- - Rewrote the forwarding routine so that it reads in the whole collection
- list and processes each entry in mail.dat once.
-
- V7.20d 1-Feb-93
- =========================================================================
-
- - Temporarily make call collection an array rather than into tmp->scr
- - Add conn_direction to title.
- - Right justifies text entry from console in messages.
- - Modified makehdr so that it cuts off the title if it is longer than
- the line length on the screen.
- - Code added to ser.c so that rcv and snd yapp will abort if SYSOP hits
- the control char which kicks a user off the system (usually ^F).
- - Modified sndfbb so that it will mark - and = messages right away but
- will not mark + messages until after they are sent and the BBS has
- received a prompt.
-
- Playing with old kam host-mode version to see if it can handle multi-users
- now that I have the file locking functions working. The kam servers that
- do the host stuff are in work:kam
-
- 18-Feb-93
- - Modified rdblock so that a negative length means read a null-terminated
- string of that maximum length. I have changed the code so that instead
- of calling the driver with a io_Length of -1, I use EOFMODE with a
- TermArray of all zeroes and a io_Length of minus the specified length.
- This makes the program compatible with the ibmser.device driver that
- comes with the GoldenGateII BridgeCard. That
- -Modify mbinit so that it does not override the device name and unit
- number if they are given as arguments to the program.
-
- 6-Apr-93
- - Modified SYSOP so that it will accept commands through the AREXX port
- and if the user sends a command of the form "GO port-name" then
- the results of commands and the prompt are sent back to the specified
- AREXX port-name.
- - Fixed a serious bug. The length of tmpstr was declared to be 200 but it
- was used to handle monitored packets which can be 256 bytes long and
- so this would cause random crashes. Other symptoms were that the
- process would not respond with the SYSOP> prompt when ^E was hit.
- - Fixed an FBB bug! The FBB protocol claims that a title will be no more
- than 80 characters long. I have just received an FBB message with a
- title having about 84 or 85 characters. I have modified CBBS so this
- won't cause it to reject the message.
- - Added right justification to sysop.
-
-
- V7.20e 14-apr-93
- =========================================================================
- Here begins version V7.20f
- 18-apr-93
- - Found the problem that limited the size of FBB compressed files. The
- lzhuf.c code as distributed contained:
- #define N 4096
- but it appears that it must have been changed to:
- #define N 2048
- when it was compiled for the FBB distribution because 2048 works.
- It is likely that F6FBB changed N to 2048 when making the compression
- routine but distributed the original code which set N to 4096.
- F6FBB himself has since confirmed that this is the case.
-
- =========================================================================
- This is version V7.20g
- 9-Jun-93
- - sndfbb() did not have a return(0) right at the end. This caused it to
- immediately disconnect after sending the first batch of ASCII
- messages to an FBB system, but for some strange reason it did not
- cause the same problem with compression. Thanks to Ray VE7GCE for
- pointing this out.
-
- =========================================================================
- This is version V7.20h
- 5-Jul-93
- - bug in sndfbb. It was not sending a message to a bbs if the message's
- bbs field was blank, even though check_ok() has already tested for
- this.
- =========================================================================
- This is version V7.20i
- 10-Aug-93
- - bug in str_search. It was removing linefeeds from files when it
- shouldn't. This messed up all the download functions and the 'I'
- command.
- - bug in LS command. Missed one of the (long) casts required for search()
- - I was zeroing hrdn and pt->heard in clsmon which loses the current
- heard and monitored lists. Also, sysop was opening and closing all the
- mon and calls files when it shouldn't touch them at all.
- - Added a line of code to check_ok() so that if all else fails, a message
- sent TO a valid callsign will be sent to a BBS if the callsign is in
- the collection list for that BBS.
- - Remove the waitcmd(0) in contnc(). It can eat part or all of the
- CONNECTED message and hang the connection script in those TNCs which
- do not send the cmd: after a connect command when they have NEWMODE ON.
- =========================================================================
- This is version V7.20j
- 26-Aug-93
-