cvs commit: src/sys/net route.c

Gleb Smirnoff glebius at FreeBSD.org
Wed Sep 21 04:58:12 PDT 2005


glebius     2005-09-21 11:58:11 UTC

  FreeBSD src repository

  Modified files:
    sys/net              route.c 
  Log:
  Several fixes to rt_setgate(), that fix problems with route changing:
  
  - Rearrange code so that in a case of failure the affected
    route is not changed. Otherwise, a bogus rtentry will be
    left and later rt_check() can recurse on its lock. [1]
  - Remove comment about protocol cloning.
  - Fix two places where rtentry mutex was recursed on, because
    accessed via two different pointers, that were actually pointing
    to the same rtentry in some cases. [1]
  - Return EADDRINUSE instead of bogus EDQUOT, in case when gateway
    uses the same route. [2]
  
  Reported & tested by:   ps, Andrej Zverev <az inec.ru> [1]
  PR:                     kern/64090 [2]
  
  Revision  Changes    Path
  1.113     +30 -35    src/sys/net/route.c


More information about the cvs-src mailing list