]> granicus.if.org Git - libnl/commit
Only include local addr as peer addr if provided
authorWolfgang Steudel <Wolfgang.Steudel@Stud.TU-Ilmenau.de>
Tue, 7 Oct 2008 04:43:59 +0000 (06:43 +0200)
committerThomas Graf <tgr@plip.localdomain>
Fri, 10 Oct 2008 10:32:23 +0000 (12:32 +0200)
commit5702d4c1b97616f5212da31db01a2f3c79c15b7c
tree5a7d5256aec1908b2335ff344313c1abb9bd36c2
parentb12918df16598506efa63ccbb78657c51f0a28a2
Only include local addr as peer addr if provided

we're using libnl-1.1 for a project. When trying to delete all
addresses of an interface by only setting interface index and
address family of an rtnl_addr and executing rtnl_addr_delete()
we received some error (I don't remember what it was).

The bug(?) is in build_addr_msg() in lib/route/addr.c:
IFA_ADDRESS is set to a_local when a_peer is not set,
without checking if a_local was set. We just added
   if (tmpl->ce_mask & ADDR_ATTR_LOCAL)
after the "else" (line 496 in the current git).
lib/route/addr.c