patching "windows" from 3 to 7 in uucico

Scott Bertilson ssb at quest.UUCP
Sun May 26 01:22:32 AEST 1991


  This actually originated as a reply to e-mail from one of the
HFC hackers, but I discovered that I could generalize it, so
I thought I'd post it too.

  Hacking "windows" makes a substantial difference on our SCO machine
(news machine with V.32 modems).  (It is an easy change to make on
the SCO machines because they made "windows" a variable in data
space and leave the symbols on "uucico".)  We saw our incoming
transfer rate rise from just over 700 to 850 after making the
change.  Your improvement may not be as substantial if you're
using a Telebit with UUCP spoofing.
  Regarding UUCP windowing, I'm pretty sure the default packet size
is 64 bytes and I'm sure the default window is 3 packets...meaning
that 3 packets can be outstanding and unacknowledged before it stops
sending.  Increasing the number to 7 means up to 7 packets can be
outstanding before the transmitting system stops sending to wait
for an acknowledge.  The "windows" number applies to the machine
receiving data - when the conversation begins, each machine offers
its window size for the other system to use when transmitting to
it.  (This has nothing to do with which machine is master or
slave, just with which one is sending or receiving data.)
  In stock 3.51 "uucico" you should begin by making a copy of
"uucico" which you can then "adb -w uucico.new".  You should search
for a "moveq.l &3,%d0" in the right context.  You can do this
by:
	0x87000?l 0x7003
(locate the value "0x7003" by searching memory starting at "0x87000")
Hopefully you'll come up with something like "875d2" (that's where
it's at in the copy of HDB I have - be sure to substitute the value
you find everywhere it is used below).  Now do "0x875d2?i" and hit
RETURN a few extra times to make sure the context is the same as
this:
	875d2:			moveq.l	&3,%d0
	875d4:			mov.b	%d0,27.w(%a2)
	875d8:			mov.b	%d0,26.w(%a2)
	875dc:			moveq.l	&0,%d2
now if you do a "0x875d2?x" it should say:
	875d2:		7003
You can then say:
	0x875d2?w 0x7007
followed by:
	0x875d2?i
which should return:
	moveq.l	&7,%d0
  At this point, you've got a "uucico" which will offer
windows of 7 to any other machine it calls or is called
by.
-- 

Scott S. Bertilson   ...ssb at quest.UUCP
			scott at poincare.geom.umn.edu



More information about the Comp.sys.3b1 mailing list