ui: disable setting uid/gid_start for user namespace
Libvirt not allowed uid/gid_start configured as none 0 or not specified. This patch will disable config uid/gid_start in UI. Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
This commit is contained in:
parent
c1e7da72b7
commit
77553c7e49
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.16.0 on Thu Feb 20 08:33:46 2014 -->
|
||||
<!-- Generated with glade 3.16.0 on Mon Feb 24 22:09:46 2014 -->
|
||||
<interface>
|
||||
<!-- interface-requires gtk+ 3.0 -->
|
||||
<object class="GtkAccelGroup" id="accelgroup1"/>
|
||||
|
@ -1163,37 +1163,6 @@
|
|||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="uid-start">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="width_chars">6</property>
|
||||
<property name="adjustment">adjustment14</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<signal name="changed" handler="on_idmap_uid_start_changed" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="gid-start">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="adjustment">adjustment15</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<signal name="changed" handler="on_idmap_uid_target_changed" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="uid-target">
|
||||
<property name="visible">True</property>
|
||||
|
@ -1252,6 +1221,33 @@
|
|||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="gid-start">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="uid-start">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">0</property>
|
||||
<property name="width_chars">10</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
|
|
@ -580,10 +580,8 @@ class vmmDetails(vmmGObjectUI):
|
|||
"on_overview_name_changed": lambda *x: self.enable_apply(x, EDIT_NAME),
|
||||
"on_overview_title_changed": lambda *x: self.enable_apply(x, EDIT_TITLE),
|
||||
"on_machine_type_changed": lambda *x: self.enable_apply(x, EDIT_MACHTYPE),
|
||||
"on_idmap_uid_start_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_idmap_uid_target_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_idmap_uid_count_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_idmap_gid_start_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_idmap_gid_target_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_idmap_gid_count_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||
"on_config_idmap_check_toggled": self.config_idmap_enable,
|
||||
|
@ -1976,15 +1974,12 @@ class vmmDetails(vmmGObjectUI):
|
|||
if self.edited(EDIT_IDMAP):
|
||||
enable_idmap = self.widget("config-idmap-checkbutton").get_active()
|
||||
if enable_idmap:
|
||||
uid_start = self.widget("uid-start").get_text().strip()
|
||||
uid_target = self.widget("uid-target").get_text().strip()
|
||||
uid_count = self.widget("uid-count").get_text().strip()
|
||||
gid_start = self.widget("gid-start").get_text().strip()
|
||||
gid_target = self.widget("gid-target").get_text().strip()
|
||||
gid_count = self.widget("gid-count").get_text().strip()
|
||||
|
||||
idmap_list = [uid_start, uid_target, uid_count, gid_start,
|
||||
gid_target, gid_count]
|
||||
idmap_list = [uid_target, uid_count, gid_target, gid_count]
|
||||
else:
|
||||
idmap_list = None
|
||||
|
||||
|
@ -2478,10 +2473,8 @@ class vmmDetails(vmmGObjectUI):
|
|||
is_container = self.vm.is_container()
|
||||
self.widget("config-idmap-expander").set_visible(is_container)
|
||||
|
||||
self.widget("uid-start").set_text('0')
|
||||
self.widget("uid-target").set_text('1000')
|
||||
self.widget("uid-count").set_text('10')
|
||||
self.widget("gid-start").set_text('0')
|
||||
self.widget("gid-target").set_text('1000')
|
||||
self.widget("gid-count").set_text('10')
|
||||
|
||||
|
@ -2491,8 +2484,7 @@ class vmmDetails(vmmGObjectUI):
|
|||
self.widget("config-idmap-checkbutton").set_active(show_config)
|
||||
self.widget("idmap-spin-grid").set_sensitive(show_config)
|
||||
if show_config:
|
||||
Name = ["uid-start", "uid-target", "uid-count",
|
||||
"gid-start", "gid-target", "gid-count"]
|
||||
Name = ["uid-target", "uid-count", "gid-target", "gid-count"]
|
||||
for name in Name:
|
||||
IdMap_proper = getattr(IdMap, name.replace("-", "_"))
|
||||
self.widget(name).set_value(int(IdMap_proper))
|
||||
|
|
|
@ -577,17 +577,17 @@ class vmmDomain(vmmLibvirtObject):
|
|||
# Idmap config define methods
|
||||
def define_idmap(self, idmap_list):
|
||||
def change(guest):
|
||||
guest.idmap.uid_start = uid_start
|
||||
guest.idmap.uid_start = 0
|
||||
guest.idmap.uid_target = uid_target
|
||||
guest.idmap.uid_count = uid_count
|
||||
guest.idmap.gid_start = gid_start
|
||||
guest.idmap.gid_start = 0
|
||||
guest.idmap.gid_target = gid_target
|
||||
guest.idmap.gid_count = gid_count
|
||||
def clear(guest):
|
||||
guest.idmap.clear()
|
||||
if idmap_list is not None:
|
||||
(uid_start, uid_target, uid_count, gid_start,
|
||||
gid_target, gid_count) = idmap_list
|
||||
(uid_target, uid_count, gid_target,
|
||||
gid_count) = idmap_list
|
||||
return self._redefine(change)
|
||||
else:
|
||||
return self._redefine(clear)
|
||||
|
|
Loading…
Reference in New Issue