From 39a02558dbd906b0c4f1d86d239538dfc5b7ad3a Mon Sep 17 00:00:00 2001 From: Guido Trotter Date: Tue, 16 Jun 2009 15:47:25 +0100 Subject: [PATCH] LUQueryInstances: fix querying for nic data Currently we support querying for "mac" "ip" or "bridge", meaning "the one of the first nic. We are not checking that there is a first nic, though, and thus could incur in errors. This patch fixes it by returning "None" should there be no such nic, as it's done when explicitely asking for a nic via nic./ Signed-off-by: Guido Trotter Reviewed-by: Iustin Pop --- lib/cmdlib.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/cmdlib.py b/lib/cmdlib.py index 46c7810..096ee71 100644 --- a/lib/cmdlib.py +++ b/lib/cmdlib.py @@ -3413,11 +3413,20 @@ class LUQueryInstances(NoHooksLU): elif field == "disk_template": val = instance.disk_template elif field == "ip": - val = instance.nics[0].ip + if instance.nics: + val = instance.nics[0].ip + else: + val = None elif field == "bridge": - val = instance.nics[0].bridge + if instance.nics: + val = instance.nics[0].bridge + else: + val = None elif field == "mac": - val = instance.nics[0].mac + if instance.nics: + val = instance.nics[0].mac + else: + val = None elif field == "sda_size" or field == "sdb_size": idx = ord(field[2]) - ord('a') try: -- 1.7.10.4