Fix for Microport SysV/386 3.0e uucico core dump

T. William Wells bill at twwells.com
Sun Feb 11 17:39:44 AEST 1990


I was recently apprised of a bug where uucico would dump core
when sending very small files. Having found a binary patch, I
decided to post it.

The bug is that, if the transfer time is less than a millisecond,
it is recorded as zero, and a divide instruction traps when
computing bytes/second. What I did was to add 1 millisecond to the
transfer time before doing the divide. The side effect is that the
bytes/second number is not (bytes / seconds) but (bytes / (seconds
+ .001), an indetectable difference in most cases.

Here's the procedure:

cd /usr/lib/uucp

verify that these:

sum uucico
sum -r uucico.save

give:

43509 211 uucico
63022   211 uucico

Then do this:

cp uucico uucico.fix
adb -w uucico.fix <<\+
0a6e2 ?W 041104d8b
0a6e6 ?W 08b50f1f7
0a6ea ?W 0e8b91045
0a6ee ?W 099000003
0a6f2 ?W 08b52f9f7
0a6f6 ?W 0f7991045
0a6fa ?W 075ff50f9
0a6fe ?W 00875ff0c
0a702 ?W 0403d9868
0a706 ?W 09c458d00
0a70a ?W 0640ce850
0a70e ?W 0c4830000
0a712 ?W 00004b81c
0a716 ?W 005390000
0a71a ?W 0004002a8
0a71e ?W 08d167c90
+

Then verify that these:

sum uucico.fix
sum -r uucico.fix

give:

44024 211 uucico.fix
39518   211 uucico.fix

Next, squirrel away your old uucico and rename uucico.fix to uucico.

You should be in business.

---
Bill                    { uunet | novavax | ankh } !twwells!bill
bill at twwells.com



More information about the Comp.unix.i386 mailing list