[net.bugs.4bsd] Internet bug fix

ron@celerity.UUCP (Ron McDaniels) (01/17/85)

Subject: ip_init stores a random char in memory.
Index:	sys/netinet/ip_input.c 4.2BSD

Description:
	Under a set of circumstances that only Murphy could understand,
	a coding bug in ip_init causes a single byte of memory to be
	clobbered.

Repeat-By:
	Probably not deliberately repeatable.

Fix:
	A diff of sys/netinet/ip_input.c follows.
	The line numbers are undoubtedly not what you expect.


***************
*** 43,49
  	for (i = 0; i < IPPROTO_MAX; i++)
  		ip_protox[i] = pr - inetsw;
  	for (pr = inetdomain.dom_protosw;
! 	    pr < inetdomain.dom_protoswNPROTOSW; pr++)
  		if (pr->pr_family == PF_INET &&
  		    pr->pr_protocol && pr->pr_protocol != IPPROTO_RAW)
  			ip_protox[pr->pr_protocol] = pr - inetsw;

--- 43,49 -----
  	for (i = 0; i < IPPROTO_MAX; i++)
  		ip_protox[i] = pr - inetsw;
  	for (pr = inetdomain.dom_protosw;
! 	    pr <= inetdomain.dom_protoswNPROTOSW; pr++)
  		if (pr->pr_family == PF_INET &&
  		    pr->pr_protocol && pr->pr_protocol != IPPROTO_RAW)
  			ip_protox[pr->pr_protocol] = pr - inetsw;




R. L. (Ron) McDaniels
CELERITY COMPUTING
9692 Via Excellencia Way
San Diego, California 92126
(619) 271-9940
{decvax || ucbvax || ihnp4 || akgua || philabs}!sdcsvax!celerity!ron

chris@umcp-cs.UUCP (Chris Torek) (01/21/85)

Note that the correct version is the one with ``<'' rather than ``<=''
(the diff was backwards)
-- 
(This line accidently left nonblank.)

In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690)
UUCP:	{seismo,allegra,brl-bmd}!umcp-cs!chris
CSNet:	chris@umcp-cs		ARPA:	chris@maryland