diff --git a/pytools/obmcutil b/pytools/obmcutil
index 18be97c..2f5518e 100644
--- a/pytools/obmcutil
+++ b/pytools/obmcutil
@@ -104,7 +104,7 @@
 
         bus_name = objinfo['bus_name']
         obj = objinfo['object_name']
-        intf_name = objinfo['interface_name']
+        iface = objinfo['interface_name']
         dbus_obj = bus.get_object(bus_name, obj)
 
         if (property_name != ""):
@@ -117,13 +117,13 @@
                 else:
                     property_value = None
             if(property_value is not None):
-                dbus_iface.Set(intf_name, property_name, property_value)
+                dbus_iface.Set(iface, property_name, property_value)
             else:
-                prop = dbus_iface.Get(intf_name,property_name)
+                prop = dbus_iface.Get(iface, property_name)
                 print '{:<20}'.format(property_name+": ") + str(prop)
         else:
             dbus_iface = dbus.Interface(dbus_obj, "org.freedesktop.DBus.Properties")
-            props = dbus_iface.GetAll(intf_name)
+            props = dbus_iface.GetAll(iface)
             for p in props:
                 print p + " = " + str(props[p])
 
