hmm...
0.) adding pty's is pretty easy. Just grab the BSD code and start hacking. Grab the original version of Steven's book - he will talk to you through it in detail. It's a two drivers, the control (ptyX) and the slave (ttypX) . Having them in your system is handy anyway for a number of things besides networking (like the expect(1) program).
1.) Larry's memory might be better than mine but I did not think streams shows up until System V.3. I have an old PWB 3.0 (System III) manual and see no evidence of streams in it. Given that Dennis did not create them until the V8 tty driver, and then later, the Summit guys use the streams interface for networking, I'm not surprised its not in System III. So I think using streams is likely to be a dead end.
2.) Perry Flinn, Bob Doolittle, and I spliced BSD sockets and the 4.2 stack into a System III -ish kernel for the Masscomp's RTU. So it's definitely doable - although work. The biggest issue is that the memory systems between BSD and System III are different. So Rob Gurwitiz's old mbuf code will need to be hacked. Definitely get a copy of Steven's, maybe the current BSD book and go for it.
3.) One other thought if all you want to a solid IP/TCP network stack and can forgo the sockets API, then you might try to find the old BBN distribution for BSD 4.1 (Vax) -- which is what Joy started with[remember - Berkeley did not have contract for IP/TCP support for the Vax, BBN did - joy took the BBN code and redid it). By definition its is a FOSS - because the US tax payer paid for it - although I'm not sure where to find the code these days (google in your friend). Anyway, the BBN stack splices into the kernel with one small hook (a hack in nami - similar to the MIT ChaosNet stack) but otherwise things just look like devices: i.e. open("/dev/tcp",...) or instead of socket(...) There was a later version/distribution from BBN that included the BSD sockets code as an update for 4.2, but was the BBN guts (we actually used that version for the Stellar machine - splicing it into a System V3 based kernel after adding the BSD APIs).
4.) It strikes me that it would be easiest of all to just take something like a $20-$30 "Wiznet" 5100 board from Sparkfun and interface it to the system either via serial or better if you have a parallel port. Then run the IP/TCP stack externally. This is what we do for Arduino's and other small micro controllers - the board is well documents and easy to talk too. They have both RJ45 style and wireless too. I have a hand full of them here and am pretty happy with them for what they provide.
The fact is that for the Masscomp system originally, we ran the IP/TCP stack in a coprocessor (in that case an 186) for realtime reasons (we did not want networking to interrupt the main processor which was 10MHz 68K). But when we finally went to the '020 the processor was so much faster, we put the stack into the kernel and just use the co-processor as a very large buffer.
Anyway - the idea is that the system hacking for a tcp stack become very small, just a driver. You don't get things like UNIX domain sockets, but if what you want it telnet/ftp and the like - a cheap coprocessor like the Wiznet should work fine.
Clem