]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
network: detect conflicting route even if it is the final entry
authorLaine Stump <laine@laine.org>
Mon, 15 Sep 2014 17:30:08 +0000 (13:30 -0400)
committerEric Blake <eblake@redhat.com>
Wed, 17 Sep 2014 17:40:44 +0000 (11:40 -0600)
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)

libvirt.spec.in

index a886bb171ccd5f92df7d4b401045bc3e5e8b3014..f408c64309a96366faae92f130ecdef13f5bbc28 100644 (file)
@@ -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