On Mon, Aug 10, 2015 at 02:02:50PM +0200, Ján Tomko wrote:
On Sat, Aug 08, 2015 at 06:04:00PM -0400, Laine Stump wrote:
> This patch modifies virSocketAddrGetRange() to function properly when
> the containing network/prefix of the address range isn't known, for
> example in the case of the NAT range of a virtual network (since it is
> a range of addresses on the *host*, not within the network itself). We
> then take advantage of this new functionality to validate the NAT
> range of a virtual network.
>
> Extra test cases are also added to verify that virSocketAddrGetRange()
> works properly in both positive and negative cases when the network
> pointer is NULL.
>
> This is the *real* fix for:
>
>
https://bugzilla.redhat.com/show_bug.cgi?id=985653
>
> Commits 1e334a and 48e8b9 had earlier been pushed as fixes for that
> bug, but I had neglected to read the report carefully, so instead of
> fixing validation for the NAT range, I had fixed validation for the
> DHCP range. sigh.
> ---
>
> The changes to virSocketAddrGetRange() *look* like they are extensive,
> but really they almost completely consist of:
>
> 1) reordering and reindenting some of the checks so that they are only
> executed when we have a valid network address
>
> 2) modifying the error messages that could occur when there isn't a
> valid network so that they don't attempt to use the network address
> or prefix.
>
> src/conf/network_conf.c | 4 ++
> src/util/virsocketaddr.c | 168 +++++++++++++++++++++++++----------------------
> tests/sockettest.c | 46 ++++++++++++-
> 3 files changed, 136 insertions(+), 82 deletions(-)
>
Me and Michal are looking at it, but after this patch I miss the
default network after the daemon is restarted. Reverting fixes it, I
know nothing more right now. Will update you later on.
Martin