* Wed Nov 15 2006 Dan Walsh <dwalsh@redhat.com> 1.33.1-4

- Add group sort for portsPage.py
- Add enable/disableaudit to modules page
This commit is contained in:
Daniel J Walsh 2006-11-15 21:14:38 +00:00
parent 0634958eb6
commit 73f3144d82
2 changed files with 385 additions and 99 deletions

View File

@ -669,8 +669,8 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+
diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolicycoreutils/gui/modulesPage.py policycoreutils-1.33.1/gui/modulesPage.py
--- nsapolicycoreutils/gui/modulesPage.py 1969-12-31 19:00:00.000000000 -0500
+++ policycoreutils-1.33.1/gui/modulesPage.py 2006-11-15 08:06:25.000000000 -0500
@@ -0,0 +1,133 @@
+++ policycoreutils-1.33.1/gui/modulesPage.py 2006-11-15 13:22:01.000000000 -0500
@@ -0,0 +1,157 @@
+## modulesPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
+
@ -698,6 +698,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+import gobject
+import sys
+import seobject
+import selinux
+from semanagePage import *;
+
+##
@ -715,7 +716,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+
+class modulesPage(semanagePage):
+ def __init__(self, xml):
+ semanagePage.__init__(self, xml, "modules", "SELinux Policy Module")
+ semanagePage.__init__(self, xml, "modules", _("Policy Module"))
+ self.store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
+ self.view.set_model(self.store)
+ self.store.set_sort_column_id(0, gtk.SORT_ASCENDING)
@ -725,10 +726,15 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ self.view.append_column(col)
+ self.store.set_sort_column_id(0, gtk.SORT_ASCENDING)
+ col = gtk.TreeViewColumn(_("Version"), gtk.CellRendererText(), text = 1)
+ self.enable_audit_button = xml.get_widget("enableAuditButton")
+ self.enable_audit_button.connect("clicked", self.enable_audit)
+ self.disable_audit_button = xml.get_widget("disableAuditButton")
+ self.disable_audit_button.connect("clicked", self.disable_audit)
+ col.set_sort_column_id(1)
+ col.set_resizable(True)
+ self.view.append_column(col)
+ self.store.set_sort_func(1,self.sort_int, "")
+ status, self.policy_type = selinux.selinux_getpolicytype()
+
+ self.load()
+
@ -771,6 +777,24 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ except ValueError, e:
+ self.error(e.args[0])
+
+ def enable_audit(self, button):
+ try:
+ status, output =commands.getstatusoutput("semodule -b /usr/share/selinux/%s/enableaudit.pp" % self.policy_type)
+ if status != 0:
+ self.error(output)
+
+ except ValueError, e:
+ self.error(e.args[0])
+
+ def disable_audit(self, button):
+ try:
+ status, output =commands.getstatusoutput("semodule -b /usr/share/selinux/%s/base.pp" % self.policy_type)
+ if status != 0:
+ self.error(output)
+
+ except ValueError, e:
+ self.error(e.args[0])
+
+ def addDialog(self):
+ dialog = gtk.FileChooserDialog(_("Load Policy Module"),
+ None,
@ -806,8 +830,8 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+
diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolicycoreutils/gui/portsPage.py policycoreutils-1.33.1/gui/portsPage.py
--- nsapolicycoreutils/gui/portsPage.py 1969-12-31 19:00:00.000000000 -0500
+++ policycoreutils-1.33.1/gui/portsPage.py 2006-11-14 09:54:05.000000000 -0500
@@ -0,0 +1,170 @@
+++ policycoreutils-1.33.1/gui/portsPage.py 2006-11-15 13:21:49.000000000 -0500
@@ -0,0 +1,210 @@
+## portsPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
+
@ -843,6 +867,10 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+import gettext
+gettext.bindtextdomain(PROGNAME, "/usr/share/locale")
+gettext.textdomain(PROGNAME)
+TYPE_COL=0
+PROTOCOL_COL=1
+MLS_COL=2
+PORT_COL=3
+try:
+ gettext.install(PROGNAME, localedir="/usr/share/locale", unicode=1)
+except IOError:
@ -852,43 +880,63 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+class portsPage(semanagePage):
+ def __init__(self, xml):
+ semanagePage.__init__(self, xml, "ports", "Network Port")
+ self.ports_name_entry = xml.get_widget("portsNameEntry")
+ self.ports_protocol_combo = xml.get_widget("portsProtocolCombo")
+ self.ports_number_entry = xml.get_widget("portsNumberEntry")
+ self.ports_mls_entry = xml.get_widget("portsMLSEntry")
+ self.ports_add_button = xml.get_widget("portsAddButton")
+ self.ports_properties_button = xml.get_widget("portsPropertiesButton")
+ self.ports_delete_button = xml.get_widget("portsDeleteButton")
+ self.ports_group_togglebutton = xml.get_widget("portsGroupTogglebutton")
+ self.ports_group_togglebutton.connect("toggled", self.group_toggle)
+ liststore = self.ports_protocol_combo.get_model()
+ iter = liststore.get_iter_first()
+ self.ports_protocol_combo.set_active_iter(iter)
+ self.init_store()
+ self.load()
+
+ def init_store(self):
+ self.store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING , gobject.TYPE_STRING)
+ self.view.set_model(self.store)
+ self.store.set_sort_column_id(0, gtk.SORT_ASCENDING)
+ col = gtk.TreeViewColumn(_("SELinux Port\nType"), gtk.CellRendererText(), text = 0)
+ col.set_sort_column_id(0)
+
+ col = gtk.TreeViewColumn(_("SELinux Port\nType"), gtk.CellRendererText(), text = TYPE_COL)
+ col.set_sort_column_id(TYPE_COL)
+ col.set_resizable(True)
+ self.view.append_column(col)
+ self.store.set_sort_column_id(0, gtk.SORT_ASCENDING)
+ col = gtk.TreeViewColumn(_("Port"), gtk.CellRendererText(), text = 1)
+ col.set_sort_column_id(1)
+ self.store.set_sort_column_id(TYPE_COL, gtk.SORT_ASCENDING)
+
+ col = gtk.TreeViewColumn(_("Protocol"), gtk.CellRendererText(), text = PROTOCOL_COL)
+ col.set_sort_column_id(PROTOCOL_COL)
+ col.set_resizable(True)
+ self.view.append_column(col)
+
+ self.mls_col = gtk.TreeViewColumn(_("MLS/MCS\nLevel"), gtk.CellRendererText(), text = MLS_COL)
+ self.mls_col.set_resizable(True)
+ self.mls_col.set_sort_column_id(MLS_COL)
+ self.view.append_column(self.mls_col)
+
+ col = gtk.TreeViewColumn(_("Port"), gtk.CellRendererText(), text = PORT_COL)
+ col.set_sort_column_id(PORT_COL)
+ col.set_resizable(True)
+ self.view.append_column(col)
+ self.store.set_sort_func(1,self.sort_int, "")
+
+ col = gtk.TreeViewColumn(_("Protocol"), gtk.CellRendererText(), text = 2)
+ col.set_sort_column_id(2)
+ col.set_resizable(True)
+ self.view.append_column(col)
+
+ col = gtk.TreeViewColumn(_("MLS/MCS\nLevel"), gtk.CellRendererText(), text = 3)
+ col.set_resizable(True)
+ col.set_sort_column_id(3)
+ self.view.append_column(col)
+
+ self.load()
+ self.portsNameEntry = xml.get_widget("portsNameEntry")
+ self.portsProtocolCombo = xml.get_widget("portsProtocolCombo")
+ self.portsNumberEntry = xml.get_widget("portsNumberEntry")
+ self.portsMLSEntry = xml.get_widget("portsMLSEntry")
+ liststore = self.portsProtocolCombo.get_model()
+ iter = liststore.get_iter_first()
+ self.portsProtocolCombo.set_active_iter(iter)
+
+ def group_toggle(self, button):
+ on=not button.get_active()
+ self.ports_add_button.set_sensitive(on)
+ self.ports_properties_button.set_sensitive(on)
+ self.ports_delete_button.set_sensitive(on)
+ self.mls_col.set_visible(on)
+ if on:
+ self.load()
+ else:
+ self.group_load()
+
+ def sort_int(self, treemodel, iter1, iter2, user_data):
+ try:
+ p1 = int(treemodel.get_value(iter1,1))
+ p2 = int(treemodel.get_value(iter1,1))
+ p1 = int(treemodel.get_value(iter1,2))
+ p2 = int(treemodel.get_value(iter1,2))
+ if p1 > p2:
+ return 1
+ if p1 == p2:
@ -906,41 +954,56 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ for k in keys:
+ iter = self.store.append()
+ if k[0] == k[1]:
+ self.store.set_value(iter, 1, k[0])
+ self.store.set_value(iter, PORT_COL, k[0])
+ else:
+ rec = "%s-%s" % k
+ self.store.set_value(iter, 1, rec)
+ self.store.set_value(iter, 0, dict[k][0])
+ self.store.set_value(iter, 2, dict[k][1])
+ self.store.set_value(iter, 3, dict[k][2])
+ self.store.set_value(iter, PORT_COL, rec)
+ self.store.set_value(iter, TYPE_COL, dict[k][0])
+ self.store.set_value(iter, PROTOCOL_COL, dict[k][1])
+ self.store.set_value(iter, MLS_COL, dict[k][2])
+ self.view.get_selection().select_path ((0,))
+
+ def group_load(self):
+ self.port = seobject.portRecords()
+ dict = self.port.get_all_by_type()
+ keys = dict.keys()
+ keys.sort()
+ self.store.clear()
+ print dir(self.store)
+ for k in keys:
+ iter = self.store.append()
+ self.store.set_value(iter, TYPE_COL, k[0])
+ self.store.set_value(iter, PROTOCOL_COL, k[1])
+ self.store.set_value(iter, PORT_COL, ", ".join(dict[k]))
+ self.store.set_value(iter, MLS_COL, "")
+ self.view.get_selection().select_path ((0,))
+
+ def dialogInit(self):
+ store, iter = self.view.get_selection().get_selected()
+ self.portsNumberEntry.set_text(store.get_value(iter, 1))
+ self.portsNumberEntry.set_sensitive(False)
+ self.portsProtocolCombo.set_sensitive(False)
+ self.portsNameEntry.set_text(store.get_value(iter, 0))
+ self.portsMLSEntry.set_text(store.get_value(iter, 3))
+ protocol=store.get_value(iter, 2)
+ liststore=self.portsProtocolCombo.get_model()
+ self.ports_number_entry.set_text(store.get_value(iter, PORTS_COL))
+ self.ports_number_entry.set_sensitive(False)
+ self.ports_protocol_combo.set_sensitive(False)
+ self.ports_name_entry.set_text(store.get_value(iter, TYPE_COL))
+ self.ports_mls_entry.set_text(store.get_value(iter, MLS_COL))
+ protocol=store.get_value(iter, PROTOCOL_COL)
+ liststore=self.ports_protocol_combo.get_model()
+ iter = liststore.get_iter_first()
+ while iter != None and liststore.get_value(iter,0) != protocol:
+ iter = liststore.iter_next(iter)
+ if iter != None:
+ self.portsProtocolCombo.set_active_iter(iter)
+ self.ports_protocol_combo.set_active_iter(iter)
+
+ def dialogClear(self):
+ self.portsNumberEntry.set_text("")
+ self.portsNumberEntry.set_sensitive(True)
+ self.portsProtocolCombo.set_sensitive(True)
+ self.portsNameEntry.set_text("")
+ self.portsMLSEntry.set_text("s0")
+ self.ports_number_entry.set_text("")
+ self.ports_number_entry.set_sensitive(True)
+ self.ports_protocol_combo.set_sensitive(True)
+ self.ports_name_entry.set_text("")
+ self.ports_mls_entry.set_text("s0")
+
+ def delete(self):
+ store, iter = self.view.get_selection().get_selected()
+ port = store.get_value(iter, 1)
+ protocol = store.get_value(iter, 2)
+ port = store.get_value(iter, PORT_COL)
+ protocol = store.get_value(iter, 1)
+ try:
+ self.port.delete(port, protocol)
+ store.remove(iter)
@ -949,34 +1012,35 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ self.error(e.args[0])
+
+ def add(self):
+ target = self.portsNameEntry.get_text().strip()
+ mls = self.portsMLSEntry.get_text().strip()
+ port_number = self.portsNumberEntry.get_text().strip()
+ target = self.ports_name_entry.get_text().strip()
+ mls = self.ports_mls_entry.get_text().strip()
+ port_number = self.ports_number_entry.get_text().strip()
+ if port_number == "":
+ port_number = "1"
+ list_model = self.portsProtocolCombo.get_model()
+ iter = self.portsProtocolCombo.get_active_iter()
+ list_model = self.ports_protocol_combo.get_model()
+ iter = self.ports_protocol_combo.get_active_iter()
+ protocol = list_model.get_value(iter,0)
+ self.port.add(port_number, protocol, mls, target)
+ iter = self.store.append()
+ self.store.set_value(iter, 0, target)
+ self.store.set_value(iter, 1, port_number)
+ self.store.set_value(iter, 2, protocol)
+ self.store.set_value(iter, 3, mls)
+ self.store.set_value(iter, TYPE_COL, target)
+ self.store.set_value(iter, PORT_COL, port_number)
+ self.store.set_value(iter, PROTOCOL_COL, protocol)
+ self.store.set_value(iter, MLS_COL, mls)
+
+ def modify(self):
+ target = self.portsNameEntry.get_text().strip()
+ mls = self.portsMLSEntry.get_text().strip()
+ port_number = self.portsNumberEntry.get_text().strip()
+ list_model = self.portsProtocolCombo.get_model()
+ iter = self.portsProtocolCombo.get_active_iter()
+ target = self.ports_name_entry.get_text().strip()
+ mls = self.ports_mls_entry.get_text().strip()
+ port_number = self.ports_number_entry.get_text().strip()
+ list_model = self.ports_protocol_combo.get_model()
+ iter = self.ports_protocol_combo.get_active_iter()
+ protocol = list_model.get_value(iter,0)
+ self.port.modify(port_number, protocol, mls, target)
+ store, iter = self.view.get_selection().get_selected()
+ self.store.set_value(iter, 0, target)
+ self.store.set_value(iter, 1, port_number)
+ self.store.set_value(iter, 2, protocol)
+ self.store.set_value(iter, 3, mls)
+ self.store.set_value(iter, TYPE_COL, target)
+ self.store.set_value(iter, PORT_COL, port_number)
+ self.store.set_value(iter, PROTOCOL_COL, protocol)
+ self.store.set_value(iter, MLS_COL, mls)
+
+
diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolicycoreutils/gui/semanagePage.py policycoreutils-1.33.1/gui/semanagePage.py
--- nsapolicycoreutils/gui/semanagePage.py 1969-12-31 19:00:00.000000000 -0500
@ -1322,8 +1386,8 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+
diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolicycoreutils/gui/system-config-selinux.glade policycoreutils-1.33.1/gui/system-config-selinux.glade
--- nsapolicycoreutils/gui/system-config-selinux.glade 1969-12-31 19:00:00.000000000 -0500
+++ policycoreutils-1.33.1/gui/system-config-selinux.glade 2006-11-15 08:06:56.000000000 -0500
@@ -0,0 +1,2616 @@
+++ policycoreutils-1.33.1/gui/system-config-selinux.glade 2006-11-15 13:20:19.000000000 -0500
@@ -0,0 +1,2784 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
@ -2800,6 +2864,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkTreeView" id="selectView">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Select Managment Object</property>
+ <property name="can_focus">True</property>
+ <property name="headers_visible">False</property>
+ <property name="rules_hint">False</property>
@ -2845,7 +2910,8 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkNotebook" id="notebook">
+ <property name="visible">True</property>
+ <property name="show_tabs">False</property>
+ <property name="can_focus">True</property>
+ <property name="show_tabs">True</property>
+ <property name="show_border">False</property>
+ <property name="tab_pos">GTK_POS_TOP</property>
+ <property name="scrollable">False</property>
@ -3175,7 +3241,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton5">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Add File Context</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3191,7 +3257,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton6">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Open File</property>
+ <property name="tooltip" translatable="yes">Modify File Context</property>
+ <property name="stock_id">gtk-properties</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3207,7 +3273,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton7">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Delete File Context</property>
+ <property name="stock_id">gtk-delete</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3303,7 +3369,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton8">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Add SELinux User Mapping</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3317,14 +3383,14 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton9">
+ <widget class="GtkToolButton" id="toolbutton29">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Open File</property>
+ <property name="tooltip" translatable="yes">Modify SELinux User Mapping</property>
+ <property name="stock_id">gtk-properties</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal name="clicked" handler="on_properties_clicked" last_modification_time="Mon, 16 Jan 2006 18:26:51 GMT"/>
+ <signal name="clicked" handler="on_properties_clicked" last_modification_time="Wed, 15 Nov 2006 16:38:33 GMT"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
@ -3335,7 +3401,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton10">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Delete SELinux User Mapping</property>
+ <property name="stock_id">gtk-delete</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3431,7 +3497,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton14">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Add Translation</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3447,7 +3513,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton15">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Open File</property>
+ <property name="tooltip" translatable="yes">Modify Translation</property>
+ <property name="stock_id">gtk-properties</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3463,7 +3529,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton16">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Delete Translation</property>
+ <property name="stock_id">gtk-delete</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3559,7 +3625,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton11">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Add SELinux User</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3575,7 +3641,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton12">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Open File</property>
+ <property name="tooltip" translatable="yes">Modify SELinux User</property>
+ <property name="stock_id">gtk-properties</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3591,7 +3657,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton13">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Add SELinux User</property>
+ <property name="stock_id">gtk-delete</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3681,13 +3747,13 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <property name="visible">True</property>
+ <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+ <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
+ <property name="tooltips">True</property>
+ <property name="tooltips">False</property>
+ <property name="show_arrow">True</property>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton17">
+ <widget class="GtkToolButton" id="portsAddButton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Add Network Port</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3701,9 +3767,9 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton18">
+ <widget class="GtkToolButton" id="portsPropertiesButton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Open File</property>
+ <property name="tooltip" translatable="yes">Edit Network Port</property>
+ <property name="stock_id">gtk-properties</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3717,9 +3783,9 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="toolbutton19">
+ <widget class="GtkToolButton" id="portsDeleteButton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Delete Network Port</property>
+ <property name="stock_id">gtk-delete</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3731,6 +3797,116 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolItem" id="toolitem2">
+ <property name="visible">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+
+ <child>
+ <widget class="GtkVSeparator" id="vseparator1">
+ <property name="width_request">32</property>
+ <property name="visible">True</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolItem" id="toolitem1">
+ <property name="visible">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+
+ <child>
+ <widget class="GtkToggleButton" id="portsGroupTogglebutton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Group/ungroup network ports by SELinux type.</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <signal name="toggled" handler="on_groupview_toggled" last_modification_time="Wed, 15 Nov 2006 16:55:38 GMT"/>
+
+ <child>
+ <widget class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox5">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+
+ <child>
+ <widget class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="stock">gtk-indent</property>
+ <property name="icon_size">4</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="label46">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Group View</property>
+ <property name="use_underline">True</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
@ -3815,7 +3991,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton23">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">New File</property>
+ <property name="tooltip" translatable="yes">Load policy module</property>
+ <property name="stock_id">gtk-add</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3831,7 +4007,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <child>
+ <widget class="GtkToolButton" id="toolbutton25">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Save File</property>
+ <property name="tooltip" translatable="yes">Remove loadable policy module</property>
+ <property name="stock_id">gtk-remove</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
@ -3843,6 +4019,62 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolItem" id="toolitem3">
+ <property name="visible">True</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+
+ <child>
+ <widget class="GtkVSeparator" id="vseparator2">
+ <property name="width_request">10</property>
+ <property name="visible">True</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="enableAuditButton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Enable additional audit rules, that are normally not reported in the log files.</property>
+ <property name="label" translatable="yes">Enable Audit</property>
+ <property name="use_underline">True</property>
+ <property name="stock_id">gtk-zoom-in</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal name="clicked" handler="on_disable_audit_clicked" last_modification_time="Wed, 15 Nov 2006 16:29:34 GMT"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkToolButton" id="disableAuditButton">
+ <property name="visible">True</property>
+ <property name="tooltip" translatable="yes">Disable additional audit rules, that are normally not reported in the log files.</property>
+ <property name="label" translatable="yes">Disable Audit</property>
+ <property name="use_underline">True</property>
+ <property name="stock_id">gtk-zoom-out</property>
+ <property name="visible_horizontal">True</property>
+ <property name="visible_vertical">True</property>
+ <property name="is_important">False</property>
+ <signal name="clicked" handler="on_disable_audit_clicked" last_modification_time="Wed, 15 Nov 2006 16:29:34 GMT"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
@ -4505,8 +4737,58 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
.TP
diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolicycoreutils/semanage/seobject.py policycoreutils-1.33.1/semanage/seobject.py
--- nsapolicycoreutils/semanage/seobject.py 2006-10-17 12:04:55.000000000 -0400
+++ policycoreutils-1.33.1/semanage/seobject.py 2006-11-14 09:54:05.000000000 -0500
@@ -456,7 +456,8 @@
+++ policycoreutils-1.33.1/semanage/seobject.py 2006-11-15 15:02:57.000000000 -0500
@@ -94,23 +94,25 @@
return re.search("^" + reg +"$",raw)
def translate(raw, prepend = 1):
- if prepend == 1:
- context = "a:b:c:%s" % raw
+ filler="a:b:c:"
+ if prepend == 1:
+ context = "%s%s" % (filler,raw)
else:
context = raw
- (rc, trans) = selinux.selinux_raw_to_trans_context(context)
+ (rc, trans) = selinux.selinux_raw_to_trans_context(context)
if rc != 0:
return raw
if prepend:
- trans = trans.strip("a:b:c")
+ trans = trans[len(filler):]
if trans == "":
return raw
else:
return trans
def untranslate(trans, prepend = 1):
+ filler="a:b:c:"
if prepend == 1:
- context = "a:b:c:%s" % trans
+ context = "%s%s" % (filler,trans)
else:
context = trans
@@ -118,7 +120,7 @@
if rc != 0:
return trans
if prepend:
- raw = raw.strip("a:b:c")
+ raw = raw[len(filler):]
if raw == "":
return trans
else:
@@ -204,7 +206,8 @@
os.write(fd, self.out())
os.close(fd)
os.rename(newfilename, self.filename)
-
+ os.system("/sbin/service mcstrans reload > /dev/null")
+
class semanageRecords:
def __init__(self):
self.sh = semanage_handle_create()
@@ -456,7 +459,8 @@
rc = semanage_user_set_mlslevel(self.sh, u, selevel)
if rc < 0:
raise ValueError(_("Could not set MLS level for %s") % name)
@ -4516,7 +4798,7 @@ diff --exclude-from=exclude --exclude='*.po' --exclude='*.pot' -N -u -r nsapolic
rc = semanage_user_set_prefix(self.sh, u, prefix)
if rc < 0:
raise ValueError(_("Could not add prefix %s for %s") % (r, prefix))
@@ -522,7 +523,9 @@
@@ -522,7 +526,9 @@
semanage_user_set_mlslevel(self.sh, u, untranslate(selevel))
if prefix != "":

View File

@ -5,7 +5,7 @@
Summary: SELinux policy core utilities.
Name: policycoreutils
Version: 1.33.1
Release: 3
Release: 4
License: GPL
Group: System Environment/Base
Source: http://www.nsa.gov/selinux/archives/policycoreutils-%{version}.tgz
@ -168,6 +168,10 @@ fi
[ -x /sbin/service ] && /sbin/service restorecond condrestart
%changelog
* Wed Nov 15 2006 Dan Walsh <dwalsh@redhat.com> 1.33.1-4
- Add group sort for portsPage.py
- Add enable/disableaudit to modules page
* Wed Nov 15 2006 Dan Walsh <dwalsh@redhat.com> 1.33.1-3
- Add glade file