• Please review our updated Terms and Rules here

The next mTCP update is coming soon ... last call for bug fixes and ideas!

mbbrutman

Associate Cat Herder
Staff member
Joined
May 3, 2003
Messages
6,420
I last updated mTCP in May 2013 and I have two years of changes that are probably overdue to be unleashed on an unsuspecting populace. Here is some of what you can expect to see:

  • All: Automatic IP address conflict detection
  • All: Slightly moar speed
  • All: Slightly improved TCP retransmit logic
  • FTPSRV bug fix related to Ctrl-Break handling
  • IRCjr on the PCjr: disable blinking text so that all of the mIRC color codes will work. (Other machines were not affected.)
  • DHCP: add an option to deal with short lease times
  • Telnet: 132 column support if you have a VESA video card that can do that.
  • Telnet: be more patient when closing down so that remaining incoming data gets processed correctly.
  • FTP client: new mdelete command and remove filename length limitations
  • New program: PktTool can scan for packet drivers, show statistics from a packet driver, and do some light analysis on packets sniffed on your network
  • New program: a high performance web server! (HTTPServ)

If you have bug reports or requests now would be a good time to send them to me ... otherwise, you get what you get ...


Mike
 
I last updated mTCP in May 2013 and I have two years of changes that are probably overdue to be unleashed on an unsuspecting populace. Here is some of what you can expect to see:

  • All: Automatic IP address conflict detection
  • All: Slightly moar speed
  • All: Slightly improved TCP retransmit logic
  • FTPSRV bug fix related to Ctrl-Break handling
  • IRCjr on the PCjr: disable blinking text so that all of the mIRC color codes will work. (Other machines were not affected.)
  • DHCP: add an option to deal with short lease times
  • Telnet: 132 column support if you have a VESA video card that can do that.
  • Telnet: be more patient when closing down so that remaining incoming data gets processed correctly.
  • FTP client: new mdelete command and remove filename length limitations
  • New program: PktTool can scan for packet drivers, show statistics from a packet driver, and do some light analysis on packets sniffed on your network
  • New program: a high performance web server! (HTTPServ)

If you have bug reports or requests now would be a good time to send them to me ... otherwise, you get what you get ...


Mike

Any changes to the API (side effects especially- I assume function signatures and friends stayed the same) that I should be aware about- i.e. would possibly break NWBACKUP if I compiled against the new version? As far as MTCP code goes, NWBACKUP is essentially a mix between the sample program and the FTP client (heavily modified).
 
Any changes to the API (side effects especially- I assume function signatures and friends stayed the same) that I should be aware about- i.e. would possibly break NWBACKUP if I compiled against the new version? As far as MTCP code goes, NWBACKUP is essentially a mix between the sample program and the FTP client (heavily modified).

This would be a good time to get this out in the open:

The next release of mTCP is going to be a binary-only release. I will not be releasing the new source code (yet). The existing source code and binaries will also remain available.

Anybody who is affected by the lack of source code - please contact me privately using email. I don't intend to leave people in a bind.
 
Hi Mike!

Is there a way to see the currently assigned IP address, subnet mask, etc.? Kind of like what you'd see with an IPCONFIG /ALL Windows command?
 
All of that is available in the configuration file that the MTCPCFG variable points at. If you are using DHCP all of those will be written at the end of the file. Look for this block of lines:

IPADDR 192.168.2.146
NETMASK 255.255.255.0
GATEWAY 192.168.2.1
NAMESERVER 8.8.8.8
LEASE_TIME 86400

If you are not using DHCP all of those values are in the file somewhere; they are just not necessarily at the end of the file. (They will be where you put them in the file.)
 
Hi Mike,

Yeah, I wrote a batch file to display that file but I didn't like looking at all the non-essential information when displaying it. Still, it's a workable solution. :)

Great job on everything!

Heather
 
Hi Mike,

I'd quite like a command line option to support serial terminals or CTTY. ITA2 support would be a big plus too, since those IBM async cards have a current-loop option.


Good too see you're still active, mTCP Telnet is by far my most used program on my DOS machines
-Tom
 
The big problem with supporting any sort of serial terminal is knowing what to feed it. There are dozens of relatively popular terminals out there each with their own slightly different escape codes for controlling cursor movements, clearing the screen, etc. If you've ever looked inside of Unix termcap file you know the horror of which I speak.

Programs like FTP, SNTP, and Netcat can be made to work with dumb terminals fairly easily. But I suspect you want to use Telnet ...

The other problem with terminals is that they tend to be slow; 9600 bps is a good speed. The mTCP programs that need speed manipulate the video buffer directly; having to repaint a screen through a serial port is agonizingly slow in comparison.
 
Yeah, I wrote a batch file to display that file but I didn't like looking at all the non-essential information when displaying it.

What non-essential information?

Code:
@echo off
rem -- IPCONFIG.BAT by ahm --
type %MTCPCFG% | find "IPADDR"
type %MTCPCFG% | find "NETMASK"
type %MTCPCFG% | find "GATEWAY"
type %MTCPCFG% | find "NAMESERVER"
type %MTCPCFG% | find "LEASE_TIME"

Cheers,
Andy
 
  • All: Slightly moar speed

I approve of this! :D

If you have bug reports or requests now would be a good time to send them to me ... otherwise, you get what you get ...

I just have one small request; I want the "Good news everyone!"-line removed from DHCP.EXE.

How about EMS support? (I now have an Intel Above Board Plus 8 with 6 MB RAM in my Wang... ;))
 
The "Good news everyone!" is a reference to Professor Farnsworth from Futurama - it is an integral part of the program and it can not be removed without causing a rip in the fabric of space and time. What is behind your request?

EMS support - I've been thinking of using it for IRCjr scrollback and for caching on the HTTP server. With more memory I'd have very little problem making IRCjr capable of supporting multiple servers at the same time too. Those scrollback buffers take up a lot of room though.
 
The "Good news everyone!" is a reference to Professor Farnsworth from Futurama - it is an integral part of the program and it can not be removed without causing a rip in the fabric of space and time. What is behind your request?

It just seemed to be noise and redundant since DHCP outputting the address info conveys "Success" anyway. I suppose I can live with it now that I know the reference. :)
 
In IRCjr, how about some way to clear the screen?

It's apparently NOT Alt-C :)
 
but... the "good news everyone" expression from Farnsworth was always followed by something disastrous, so that message isn't really necessarily creating trust in that it was successful.
 
It was always something bad for the crew, but it also signaled the start of 25 minutes of high quality entertainment, so it shall remain as a glorious tribute.

I'd like to quote Bender more but that becomes too offensive very quickly.
 
It was always something bad for the crew, but it also signaled the start of 25 minutes of high quality entertainment, so it shall remain as a glorious tribute.

I'd like to quote Bender more but that becomes too offensive very quickly.

"Well I'm going to build my own TCP stack, with blackjack, and hookers"
 
Back
Top