[net.unix-wizards] Callout table insertion bug

peachey (10/31/82)

Regarding the callout table insertion bug reported by Steve Messina
(deimos!steve), the fix to the insertion routine "timeout" seems easy,
at least in our V7 system.  Simply take the overflow test and panic:

	if(p1 >= &callout[NCALL-1])
		panic("Timeout table overflow");

from its current position and move it down four lines, right
after the loop:

	while(p2->c_func != 0)
		p2++;

Then change the test so that it checks that p2 (instead of p1) is
not at or beyond the end of the callout table.  Note that it is ok to
delay this test, because no harm is done by having the c_time
field of the end-of-table entry changed (especially if you are
going to panic soon anyway).

				Darwyn Peachey
			(...!harpo!utah-cs!sask!hssg40!peachey)