From: Laine Stump Date: Mon, 15 Sep 2014 17:30:08 +0000 (-0400) Subject: network: detect conflicting route even if it is the final entry X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f6f9edf13c95f2635cabb57f258a14d6e9af24f8;p=thirdparty%2Flibvirt.git network: detect conflicting route even if it is the final entry This is a folloup to commit 5f719596, which checks for a route conflicting with the standard libvirt default network subnet (192.168.122.0/24). It turns out that $() strips the trailing newline from the output of "ip route show", so there would be no match if the route we were looking for was the final line of output. This can be solved by adding ${nl} to the end of the output (just as we were already adding it at the beginning of the output). (cherry picked from commit 22048ae61dbb7876d17bcf7dbedf9e8d1cf98d4e) --- diff --git a/libvirt.spec.in b/libvirt.spec.in index a886bb171c..f408c64309 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1737,7 +1737,7 @@ if test $1 -eq 1 && test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml ; sub=${orig_sub} nl=' ' - routes="${nl}$(ip route show | cut -d' ' -f1)" + routes="${nl}$(ip route show | cut -d' ' -f1)${nl}" case ${routes} in *"${nl}192.168.${orig_sub}.0/24${nl}"*) # there was a match, so we need to look for an unused subnet