mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-25 18:55:27 -06:00
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"?>
|
<?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>
|
||||||
<!-- interface-requires gtk+ 3.0 -->
|
<!-- interface-requires gtk+ 3.0 -->
|
||||||
<object class="GtkAccelGroup" id="accelgroup1"/>
|
<object class="GtkAccelGroup" id="accelgroup1"/>
|
||||||
@ -1163,37 +1163,6 @@
|
|||||||
<property name="height">1</property>
|
<property name="height">1</property>
|
||||||
</packing>
|
</packing>
|
||||||
</child>
|
</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>
|
<child>
|
||||||
<object class="GtkSpinButton" id="uid-target">
|
<object class="GtkSpinButton" id="uid-target">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
@ -1252,6 +1221,33 @@
|
|||||||
<property name="height">1</property>
|
<property name="height">1</property>
|
||||||
</packing>
|
</packing>
|
||||||
</child>
|
</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>
|
</object>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">0</property>
|
<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_name_changed": lambda *x: self.enable_apply(x, EDIT_NAME),
|
||||||
"on_overview_title_changed": lambda *x: self.enable_apply(x, EDIT_TITLE),
|
"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_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_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_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_target_changed": lambda *x: self.enable_apply(x, EDIT_IDMAP),
|
||||||
"on_idmap_gid_count_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,
|
"on_config_idmap_check_toggled": self.config_idmap_enable,
|
||||||
@ -1976,15 +1974,12 @@ class vmmDetails(vmmGObjectUI):
|
|||||||
if self.edited(EDIT_IDMAP):
|
if self.edited(EDIT_IDMAP):
|
||||||
enable_idmap = self.widget("config-idmap-checkbutton").get_active()
|
enable_idmap = self.widget("config-idmap-checkbutton").get_active()
|
||||||
if enable_idmap:
|
if enable_idmap:
|
||||||
uid_start = self.widget("uid-start").get_text().strip()
|
|
||||||
uid_target = self.widget("uid-target").get_text().strip()
|
uid_target = self.widget("uid-target").get_text().strip()
|
||||||
uid_count = self.widget("uid-count").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_target = self.widget("gid-target").get_text().strip()
|
||||||
gid_count = self.widget("gid-count").get_text().strip()
|
gid_count = self.widget("gid-count").get_text().strip()
|
||||||
|
|
||||||
idmap_list = [uid_start, uid_target, uid_count, gid_start,
|
idmap_list = [uid_target, uid_count, gid_target, gid_count]
|
||||||
gid_target, gid_count]
|
|
||||||
else:
|
else:
|
||||||
idmap_list = None
|
idmap_list = None
|
||||||
|
|
||||||
@ -2478,10 +2473,8 @@ class vmmDetails(vmmGObjectUI):
|
|||||||
is_container = self.vm.is_container()
|
is_container = self.vm.is_container()
|
||||||
self.widget("config-idmap-expander").set_visible(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-target").set_text('1000')
|
||||||
self.widget("uid-count").set_text('10')
|
self.widget("uid-count").set_text('10')
|
||||||
self.widget("gid-start").set_text('0')
|
|
||||||
self.widget("gid-target").set_text('1000')
|
self.widget("gid-target").set_text('1000')
|
||||||
self.widget("gid-count").set_text('10')
|
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("config-idmap-checkbutton").set_active(show_config)
|
||||||
self.widget("idmap-spin-grid").set_sensitive(show_config)
|
self.widget("idmap-spin-grid").set_sensitive(show_config)
|
||||||
if show_config:
|
if show_config:
|
||||||
Name = ["uid-start", "uid-target", "uid-count",
|
Name = ["uid-target", "uid-count", "gid-target", "gid-count"]
|
||||||
"gid-start", "gid-target", "gid-count"]
|
|
||||||
for name in Name:
|
for name in Name:
|
||||||
IdMap_proper = getattr(IdMap, name.replace("-", "_"))
|
IdMap_proper = getattr(IdMap, name.replace("-", "_"))
|
||||||
self.widget(name).set_value(int(IdMap_proper))
|
self.widget(name).set_value(int(IdMap_proper))
|
||||||
|
@ -577,17 +577,17 @@ class vmmDomain(vmmLibvirtObject):
|
|||||||
# Idmap config define methods
|
# Idmap config define methods
|
||||||
def define_idmap(self, idmap_list):
|
def define_idmap(self, idmap_list):
|
||||||
def change(guest):
|
def change(guest):
|
||||||
guest.idmap.uid_start = uid_start
|
guest.idmap.uid_start = 0
|
||||||
guest.idmap.uid_target = uid_target
|
guest.idmap.uid_target = uid_target
|
||||||
guest.idmap.uid_count = uid_count
|
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_target = gid_target
|
||||||
guest.idmap.gid_count = gid_count
|
guest.idmap.gid_count = gid_count
|
||||||
def clear(guest):
|
def clear(guest):
|
||||||
guest.idmap.clear()
|
guest.idmap.clear()
|
||||||
if idmap_list is not None:
|
if idmap_list is not None:
|
||||||
(uid_start, uid_target, uid_count, gid_start,
|
(uid_target, uid_count, gid_target,
|
||||||
gid_target, gid_count) = idmap_list
|
gid_count) = idmap_list
|
||||||
return self._redefine(change)
|
return self._redefine(change)
|
||||||
else:
|
else:
|
||||||
return self._redefine(clear)
|
return self._redefine(clear)
|
||||||
|
Loading…
Reference in New Issue
Block a user