diff options
author | brian <brian@FreeBSD.org> | 1998-02-27 23:07:07 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 1998-02-27 23:07:07 +0000 |
commit | e33f0286b1a60286ca6a2e5253b4cf18ae529b12 (patch) | |
tree | ae1927ac87caa92caf405ce1a96f7162da56bd0a /sys | |
parent | 41b578bc9bad5b00d00621058a76d96fef85d747 (diff) | |
download | FreeBSD-src-e33f0286b1a60286ca6a2e5253b4cf18ae529b12.zip FreeBSD-src-e33f0286b1a60286ca6a2e5253b4cf18ae529b12.tar.gz |
1) in CleanupAliasData, don't nullify entry in linkTableOut
since there might be permanent entries still left after
calls to DeleteLink (it will be nullified by DeleteLink
if all entries are deleted, won't it ?)
2) in PacketAliasSetAddress, set the aliasing address
even when PKT_ALIAS_RESET_ON_ADDR_CHANGE is in effect.
Just don't clean up links in this case.
Submitted by: Ari Suutari <ari@suutari.iki.fi>
via: Charles Mott <cmott@srv.net>
PR: 5041
Diffstat (limited to 'sys')
-rw-r--r-- | sys/netinet/libalias/alias_db.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index fac7ece..18983d2 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -677,7 +677,6 @@ CleanupAliasData(void) for (i=0; i<LINK_TABLE_OUT_SIZE; i++) { link = linkTableOut[i]; - linkTableOut[i] = NULL; while (link != NULL) { struct alias_link *link_next; @@ -1940,10 +1939,9 @@ PacketAliasSetAddress(struct in_addr addr) { if (packetAliasMode & PKT_ALIAS_RESET_ON_ADDR_CHANGE && aliasAddress.s_addr != addr.s_addr) - { CleanupAliasData(); - aliasAddress = addr; - } + + aliasAddress = addr; } |