Date: Sat, 10 Apr 93 04:30:17 PDT
From: Advanced Amateur Radio Networking Group <tcp-group@ucsd.edu>
Errors-To: TCP-Group-Errors@UCSD.Edu
Reply-To: TCP-Group@UCSD.Edu
Precedence: Bulk
Subject: TCP-Group Digest V93 #94
To: tcp-group-digest


TCP-Group Digest            Sat, 10 Apr 93       Volume 93 : Issue   94

Today's Topics:
                         DOS 6.0 and stat cmd
        Duplicate post to the NOS-BBS-GROUP and the TCP-Group
                          Ethernet question
                            JNOS108e !!??
                     KA9Q bug - hang on tcp close
                           Thoughts on 108e

Send Replies or notes for publication to: <TCP-Group@UCSD.Edu>.
Subscription requests to <TCP-Group-REQUEST@UCSD.Edu>.
Problems you can't solve otherwise to brian@ucsd.edu.

Archives of past issues of the TCP-Group Digest are available
(by FTP only) from UCSD.Edu in directory "mailarchives".

We trust that readers are intelligent enough to realize that all text
herein consists of personal comments and does not represent the official
policies or positions of any party.  Your mileage may vary.  So there.
----------------------------------------------------------------------

Date: Fri, 09 Apr 93 10:40:50 CDT
From: ed@wa9yyf.ampr.org (Ed Curran)
Subject: DOS 6.0 and stat cmd
To: tcp-group@ucsd.edu

Hi All,

For what it's worth, I am running grinos 20.p on a 286 machine compiled
with TC 2.0.

I added in Doug's fixes (thanks Doug) to main.c ( adding a case 6:)
and to ksubr.c and now the stat command works fine.

Thanks to all,
Ed wa9yyf

------------------------------

Date: Fri, 9 Apr 93 11:39:48 EDT
From: crompton@NADC.NADC.NAVY.MIL (D. Crompton)
Subject: Duplicate post to the NOS-BBS-GROUP and the TCP-Group
To: nos-bbs@hydra.carleton.CA

I AGREE - I really don't like doing that either. I don't think?? Phil
subscribes to nos-bbs and since much of this discussion revolves around
his code I thought that tcp-group might be a better place. Sometimes it
is really hard to make a decision which group to use and who see's what.
I am open for guidance on this also???

nos-bbs as I see it was created to reduce the noise on tcp-group about
the use of NOS - not the development - or am I wrong on that?

If that is the case then I suspect that the updating of the code threads
should be on tcp-group?

tcp-group is distributed in digest form to all tcp'ers who want to 
see it in this area - nos-bbs is not. I understand that nos-bbs is
digested now?? If so What is the subscription procedure. I would like
to get it on our local AMPR distribution.

And as you guessed it I am CC'ing this to both! If you get only one copy
of this message (meaning you are only subscribing to only one or the other)
Then let us know what you expect to hear in the group you are in?

I am sure that tcp-group is a much larger audience, probably mainly because
it is older. It is also much less responsive in it's turn around time.
NOS-BBS will turn a message around - often as it is being sent. tcp-group
returns can take a day or more at times here.

Doug

------------------------------

Date: 09 Apr 1993 15:37:38 -0400 (EDT)
From: "Brian A. Lantz" <BRIANLANTZ@delphi.com>
Subject: Ethernet question
To: tcp-group@ucsd.edu

As a previous "user-only" of Ethernet, who is now installing/administrating
an Ethernet network.....

1> Could I please get some input on good (preferably inexpensive) combinations
   of Ethernet hardware cards along with the appropriate JNOS drivers that
   some of you are using. An approximate cost of hardware, size of network,
   driver being used, and any "gotchas" would be appreciated.

2) Thanks in advance ;-)
 
73 from Brian A. Lantz      KO4KS@KO4KS.#TPAFL.FL.USA.NA    3100813105
                  Internet: brianlantz@delphi.com
                   Amprnet: ko4ks@ko4ks.ampr.org         [44.98.0.167]

------------------------------

Date: Fri, 9 Apr 93 11:44:42 -0700
From: karn@qualcomm.com (Phil Karn)
Subject: JNOS108e !!??
To: crompton@NADC.NADC.NAVY.MIL, nos-bbs@hydra.carleton.CA

BTW, there's a reason I changed availmem() to return a boolean flag,
and removed the call to coreleft(): they didn't work anyway.

My storage allocator uses the DOS allocmem() call to get additional
blocks of memory when the initial allocation is exhausted. These new
blocks of memory can be noncontiguous with earlier allocations, and in
fact they can be in high memory (under DOS 5.0 or higher).

The sbrk() call, which the standard malloc() uses to get memory from
the system, and which I used until I changed to allocmem(), can only
extend the existing heap through contiguous memory until it hits
memory that has already been allocated to another MS-DOS task (like a
TSR or an internal MS-DOS table). This became a serious problem back
when I made the necessary changes to support very large FILE tables;
MSDOS would often allocate the additional file table space required
right after net.exe, and malloc() would fail immediately after net.exe
was started. (This took a while to diagnose...)

Soapbox on...

How utterly typical of MS-DOS environments!  Overcoming a seemingly
trivial limitation like the default maximum of 20 open files required
that I first rewrite all of stdio. (The Borland implementation had a
hard-coded file table size, and I didn't want to require NOS users to
have and modify Borland library source code. And I wanted to rewrite
stdio anyway to work over network sockets.)  Then I had to rewrite the
storage allocator to get around the problem mentioned above. God, how
I hate statically-dimensioned arrays...

Soapbox off...

I removed the call to coreleft() because it was far too simpleminded
to work with this more general memory management scheme, and I didn't
feel like expending the required effort to make it work right.  To
find out how much memory is available now, you really have to ask DOS
(and possibly QEMM or whatever memory manager you're using) because
only it/they know which high memory blocks are reserved or already
allocated to other programs. It didn't seem worth the effort, since
the only real reason to care is to find out whether you're running low
enough on memory to start a reclamation effort. And that's easily done
by seeing whether you can malloc a few k.

Phil

------------------------------

Date: Fri, 9 Apr 93 7:44:38 PDT
From: Glenn Engel <glenne@lsid.hp.com>
Subject: KA9Q bug - hang on tcp close
To: tcp-group@ucsd.edu

I added the following fix to tcpsock.c to wake up any processes waiting
on a socket if the socket gets closed from the other end.  

*** /tmp/fdiff1_a04474  Fri Apr  9 10:36:32 1993
--- tcpsock.c   Tue Mar 30 17:42:58 1993
***************
*** 257,262
                        up->errcodes[0] = tcb->reason;
                        up->errcodes[1] = tcb->type;
                        up->errcodes[2] = tcb->code;
                }
                del_tcp(tcb);
                break;

--- 257,263 -----
                        up->errcodes[0] = tcb->reason;
                        up->errcodes[1] = tcb->type;
                        up->errcodes[2] = tcb->code;
+                         psignal(up,0);  /* wake up any waiting processes */
                }
                del_tcp(tcb);
                break;
--
Glenn 

 --------------------------------------------
|          ___         |                    |
|         /  /         | Glenn R. Engel     |
| HEWLETT/hp/PACKARD   | (206) 335-2066     |
|       /__/           | NN7N               |
|   Lake Stevens       |                    |
| Instrument Division  | glenne@lsid.hp.com |
 --------------------------------------------

------------------------------

Date: Fri, 9 Apr 93 09:44:54 EDT
From: crompton@NADC.NADC.NAVY.MIL (D. Crompton)
Subject: Thoughts on 108e
To: nos-bbs@hydra.carleton.CA

Ok - after I write this I will be putting  jnoska9q.zip out at ucsd's
hamradio/packet/tcpip/incoming.

These files can be copied over 108df. I am not happy with the results
though. I have a nagging crash problem here. I have not been able to 
determine the cause. I probably will not have time to do anything more
with it until after the weekend.

For better or for worse here are my thoughts on this - 

Many years ago as I remember it Kelvin, G1EMM picked up the NOS cause
because of problems experienced with KA9Q code. I was never able to make
KA9Q (back then) run for more than a few days. Also at that time I was
just a user, so I did not follow (at the code level) what was going on.
I do know though that the reliability of the code improved greatly over
the years. The current WG7J - actually all versions 1.01 on have generally
been very reliable for me. 

I know that the current KA9Q base is all new but I would caution everyone
from thinking that it is some kind of 'magic bullet' that is going to 
solve everyone's problems. Indeed it is a radical change that may in
fact prove to have many more problems when used in a much larger scale
with WG7J code. Actually as I understand it the code (KA9Q) may not be
as good under marginal condition machines - 8088/286 and non 16550 or
low-end ethernet cards. Since the consensus  (not mine) seems to be to
satisfy every fringe with the WG7J package, I think we should step back
and look at what we are doing. We may have what we think is better code
but actually have a lot of unhappy campers.

Perhaps this is a project that should go in parallel with WG7J code for
awhile?

Doug

------------------------------

End of TCP-Group Digest V93 #94
******************************
******************************