summaryrefslogtreecommitdiffstats
path: root/sbin/route
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2005-09-21 11:58:10 +0000
committerglebius <glebius@FreeBSD.org>2005-09-21 11:58:10 +0000
commit1fc277e12320230562f51d9b4af50700ed133e82 (patch)
tree1e3f60525305979b406eac00f97d8b61788d6ec2 /sbin/route
parent24f904188013c2a799498038f6404176105e142a (diff)
downloadFreeBSD-src-1fc277e12320230562f51d9b4af50700ed133e82.zip
FreeBSD-src-1fc277e12320230562f51d9b4af50700ed133e82.tar.gz
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]
Diffstat (limited to 'sbin/route')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud