Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Jul 2001 12:31:43 -0700 (PDT)
From:      Hajimu UMEMOTO <ume@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/net route.c
Message-ID:  <200107251931.f6PJVhO61346@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
ume         2001/07/25 12:31:43 PDT

  Modified files:
    sys/net              route.c 
  Log:
  As commented in defined in sys/net/route.c, rt_fixchange() has a bad
  effect, which would cause unnecessary route deletion:
  
   * Unfortunately, this has the obnoxious
   * property of also triggering for insertion /above/ a pre-existing network
   * route and clones.  Sigh.  This may be fixed some day.
  
  The effect has been even worse, because recent versions of route.c set
  the parent rtentry for cloned routes from an interface-direct route.
  For example, suppose that we have an interface "ne0" that has an IPv4
  subnet "10.0.0.0/24".  Then we may have a cloned route like 10.0.0.1
  on the interface, whose parent route is 10.0.0.0/24 (to the interface
  ne0).  Now, when we add the default route (i.e. 0.0.0.0/0),
  rt_fixchange() will remove the cloned route 10.0.0.1.  The (bad) effect
  also prevents rt_setgate from configuring rt_gwroute, which would not
  be an intended behavior.
  
  As suggested in the comments to rt_fixchange(), we need stricter check
  in the function, to prevent unintentional route deletion.
  
  This fix also solve the "IPV6 panic?" problem in nd6_timer().
  
  Submitted by:	JINMEI Tatuya <jinmei@isl.rdc.toshiba.co.jp>
  MFC after:	4 days
  
  Revision  Changes    Path
  1.63      +26 -6     src/sys/net/route.c


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200107251931.f6PJVhO61346>