rpms/sectool/devel sectool-0.9.4-dbus-fix.patch, NONE, 1.1 sectool-0.9.4-policykit-fix.patch, NONE, 1.1 sectool.spec, 1.34, 1.35
Maros Barabas
mbarabas at fedoraproject.org
Wed Mar 10 15:43:52 UTC 2010
- Previous message: rpms/kde-plasma-networkmanagement/F-12 networkmanagement-0.9-build_options.patch, NONE, 1.1 .cvsignore, 1.4, 1.5 kde-plasma-networkmanagement.spec, 1.27, 1.28 sources, 1.16, 1.17
- Next message: rpms/evince/devel evince-deprecated-functions.patch, NONE, 1.1 evince.spec, 1.181, 1.182 poppler072.patch, 1.1, NONE property-backends.patch, 1.1, NONE property-deps.patch, 1.2, NONE thumbnailer-type-init.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: mbarabas
Update of /cvs/pkgs/rpms/sectool/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv3449
Modified Files:
sectool.spec
Added Files:
sectool-0.9.4-dbus-fix.patch sectool-0.9.4-policykit-fix.patch
Log Message:
Added patches for PolicyKit and dBus
sectool-0.9.4-dbus-fix.patch:
org.fedoraproject.sectool.mechanism.conf | 2 -
org.fedoraproject.sectool.policy | 11 +++++----
src/sectool-gui.py | 37 ++++++++++++++++++++-----------
3 files changed, 32 insertions(+), 18 deletions(-)
--- NEW FILE sectool-0.9.4-dbus-fix.patch ---
diff -up sectool-0.9.4/org.fedoraproject.sectool.mechanism.conf.old sectool-0.9.4/org.fedoraproject.sectool.mechanism.conf
--- sectool-0.9.4/org.fedoraproject.sectool.mechanism.conf.old 2009-09-01 10:20:23.000000000 +0200
+++ sectool-0.9.4/org.fedoraproject.sectool.mechanism.conf 2010-03-10 14:51:48.564326918 +0100
@@ -9,7 +9,7 @@
<allow own="org.fedoraproject.sectool.mechanism"/>
</policy>
<policy context="default">
- <allow send_destination="org.fedoraproject.sectool"/>
+ <allow send_destination="org.fedoraproject.sectool.mechanism"/>
<allow send_type="method_call"/>
</policy>
</busconfig>
diff -up sectool-0.9.4/org.fedoraproject.sectool.policy.old sectool-0.9.4/org.fedoraproject.sectool.policy
--- sectool-0.9.4/org.fedoraproject.sectool.policy.old 2009-08-24 16:43:10.000000000 +0200
+++ sectool-0.9.4/org.fedoraproject.sectool.policy 2010-03-10 14:51:51.858326825 +0100
@@ -20,8 +20,9 @@
<description>Run level</description>
<message>System policy prevents run level</message>
<defaults>
- <allow_inactive>no</allow_inactive>
- <allow_active>auth_admin</allow_active>
+ <allow_any>no</allow_any>
+ <allow_inactive>auth_admin_keep</allow_inactive>
+ <allow_active>auth_admin_keep</allow_active>
</defaults>
</action>
@@ -29,9 +30,9 @@
<description>Run tests</description>
<message>System policy prevents run tests</message>
<defaults>
- <allow_any>no</allow_any>
- <allow_inactive>no</allow_inactive>
- <allow_active>auth_admin</allow_active>
+ <allow_any>auth_admin_keep</allow_any>
+ <allow_inactive>auth_admin_keep</allow_inactive>
+ <allow_active>auth_admin_keep</allow_active>
</defaults>
</action>
diff -up sectool-0.9.4/src/sectool-gui.py.old sectool-0.9.4/src/sectool-gui.py
--- sectool-0.9.4/src/sectool-gui.py.old 2010-03-10 14:50:07.111201828 +0100
+++ sectool-0.9.4/src/sectool-gui.py 2010-03-10 14:52:01.219201762 +0100
@@ -712,10 +712,14 @@ class DBusCaller(object):
def __init__(self):
+ #print "DBusCaller::init::start"
self.timeout = -1
+ self.auth = 0
+ #print "DBusCaller::init::SystemBus()"
self.bus = dbus.SystemBus ()
#self.bus_name = dbus.service.BusName('org.fedoraproject.sectool.mechanism', self.bus)
- self.dbus_action_object = self.bus.get_object ("org.fedoraproject.sectool.mechanism", "/org/fedoraproject/sectool/object")
+ #self.dbus_action_object = self.bus.get_object ("org.fedoraproject.sectool.mechanism", "/org/fedoraproject/sectool/object")
+ #print "DBusCaller::init::end"
def get_action(self, action):
""" Get action from dbus sectool mechanism """
@@ -723,7 +727,7 @@ class DBusCaller(object):
@staticmethod
def error_handler(error):
- #print "ERROR: ", error
+ print "[ASYNC ERROR]: ", error
pass # We will recieve an error that timeout has expired
@staticmethod
@@ -736,12 +740,16 @@ class DBusCaller(object):
def close(self):
self.bus.flush()
- self.bus.close()
+ #self.bus.close() # can't close this, cause it will close main loop
def run( self, args, file ):
- auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
+ #print "DBusCaller::run::start"
+ #if (self.auth != 1):
+ self.auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
+ #print "DBusCaller::run::auth: \"",self.auth,"\" end"
self.runtests(args, file)
+ #print "DBusCaller::run::end"
@slip.dbus.polkit.enable_proxy
def runtests( self, args, file ):
@@ -754,7 +762,7 @@ class DBusCaller(object):
[args, file],
reply_handler=self.reply_handler,
error_handler=self.error_handler,
- timeout=0.00)
+ timeout=10)
class ThreadHandler(threading.Thread, Handler):
@@ -845,6 +853,9 @@ class ThreadHandler(threading.Thread, Ha
"""
self.readers = []
+ # get action from dbus
+ #print "start dbus"
+ self.bus = DBusCaller()
for test in self.__suite:
self.test = test
@@ -869,12 +880,10 @@ class ThreadHandler(threading.Thread, Ha
# Block for dbus exceptions handling, here should be all code that manipulate with dBus
try:
- # get action from dbus
- bus = DBusCaller()
-
# Start new thread - reader to listen on socket and update GUI if something from dBus comes up
# We need to call reader here, because of passing bus to close connection and save processes
- reader = Reader( file, test.dsc['HEADER']['NAME'], self.fill_form, self.test_done, iter, bus )
+ #print "start reader"
+ reader = Reader( file, test.dsc['HEADER']['NAME'], self.fill_form, self.test_done, iter, self.bus )
reader.start()
# Add reader to readers pool
self.readers.append( reader )
@@ -886,12 +895,15 @@ class ThreadHandler(threading.Thread, Ha
TODO: Look for async call, this is workaround using 0-timeout
If you use timeout=-1, it will be sequencial, all positives numbers are seconds in float
"""
-
- bus.run( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
+ #print "run start"
+ self.bus.run( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
+ #print "run end"
#bus.call( test.dsc["HEADER"]["NAME"], file )
except dbus.DBusException, e:
# This should always happend. We need to be stopped by dBus to start new test in separate thread
+ raise e
if 'org.freedesktop.DBus.Error.NoReply' in e.get_dbus_name():
+ print >>sys.stderr, "Not reply from DBus"
pass # maybe continue ?
# catch Authorization exception
elif 'NotAuthorizedException' in e.get_dbus_name():
@@ -939,6 +951,7 @@ class ThreadHandler(threading.Thread, Ha
The testing process is going to die .. we have a little time to stop all tests correctly
"""
self.__stopthread.set( )
+ self.bus.close()
for reader in self.readers:
reader.stop_thread()
@@ -1056,7 +1069,7 @@ class Reader(threading.Thread):
def stop_thread(self):
self.stop = True
- self.bus.close()
+ #self.bus.close()
sectool-0.9.4-policykit-fix.patch:
sectool-gui.py | 36 ++++++++++++++++++++++++++++--------
1 file changed, 28 insertions(+), 8 deletions(-)
--- NEW FILE sectool-0.9.4-policykit-fix.patch ---
diff -up sectool-0.9.4/src/sectool-gui.py.old sectool-0.9.4/src/sectool-gui.py
--- sectool-0.9.4/src/sectool-gui.py.old 2009-12-08 17:11:31.417357216 +0100
+++ sectool-0.9.4/src/sectool-gui.py 2010-01-13 14:37:49.817461379 +0100
@@ -645,7 +645,7 @@ class TestHandler( Handler ):
""" Stop button has been pressed """
self.threadHandler.stop() #: give a short amount of time to stop the test by itself
- self.__signalHandler.kill_thread() #: kill the test by unix-style kill through os library
+ #self.__signalHandler.kill_thread() #: kill the test by unix-style kill through os library
def show_message_hint( self, test, msg_id ):
""" Show info message in hintWindow """
@@ -721,6 +721,16 @@ class DBusCaller(object):
""" Get action from dbus sectool mechanism """
return self.dbus_action_object.get_dbus_method( action, "org.fedoraproject.sectool.mechanism" )
+ @staticmethod
+ def error_handler(error):
+ #print "ERROR: ", error
+ pass # We will recieve an error that timeout has expired
+
+ @staticmethod
+ def reply_handler():
+ #print "REPLY done."
+ pass
+
def call(self, *p, **k):
self.bus.call_async(*p, **k)
@@ -728,13 +738,23 @@ class DBusCaller(object):
self.bus.flush()
self.bus.close()
+ def run( self, args, file ):
+
+ auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
+ self.runtests(args, file)
+
@slip.dbus.polkit.enable_proxy
def runtests( self, args, file ):
- auth = slip.dbus.polkit.IsSystemBusNameAuthorized( self.bus.get_unique_name(), "org.fedoraproject.sectool.runtests" )
- if auth == "yes": self.timeout = 0.00
- self.dbus_action_object.runtests( args, file, timeout=self.timeout, dbus_interface = "org.fedoraproject.sectool.mechanism" )
- #dbus_action( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file, timeout=0.00 )
+ self.bus.call_async("org.fedoraproject.sectool.mechanism",
+ "/org/fedoraproject/sectool/object",
+ "org.fedoraproject.sectool.mechanism",
+ "runtests",
+ "ass",
+ [args, file],
+ reply_handler=self.reply_handler,
+ error_handler=self.error_handler,
+ timeout=0.00)
class ThreadHandler(threading.Thread, Handler):
@@ -867,7 +887,7 @@ class ThreadHandler(threading.Thread, Ha
If you use timeout=-1, it will be sequencial, all positives numbers are seconds in float
"""
- bus.runtests( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
+ bus.run( self.__make_dbus_call( test.dsc["HEADER"]["NAME"] ), file )
#bus.call( test.dsc["HEADER"]["NAME"], file )
except dbus.DBusException, e:
# This should always happend. We need to be stopped by dBus to start new test in separate thread
@@ -889,8 +909,6 @@ class ThreadHandler(threading.Thread, Ha
while self.done < count:
if self.__stopthread.isSet():
- for reader in self.readers:
- reader.stop_thread()
#self.__formatter.stopProgressBar()
break
time.sleep(2)
@@ -921,6 +939,8 @@ class ThreadHandler(threading.Thread, Ha
The testing process is going to die .. we have a little time to stop all tests correctly
"""
self.__stopthread.set( )
+ for reader in self.readers:
+ reader.stop_thread()
def __make_tmp_file( self ):
"""
Index: sectool.spec
===================================================================
RCS file: /cvs/pkgs/rpms/sectool/devel/sectool.spec,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -p -r1.34 -r1.35
--- sectool.spec 2 Jan 2010 20:46:55 -0000 1.34
+++ sectool.spec 10 Mar 2010 15:43:52 -0000 1.35
@@ -1,12 +1,14 @@
Summary: A security audit system and intrusion detection system
Name: sectool
Version: 0.9.4
-Release: 4%{?dist}
+Release: 5%{?dist}
URL: https://hosted.fedoraproject.org/sectool/wiki/WikiStart
Source0: %{name}-%{version}.tar.bz2
Source1: sectool.log
Patch1: sectool-0.9.2-optflags.patch
Patch2: sectool-0.9.4-pk1.patch
+Patch3: sectool-0.9.4-policykit-fix.patch
+Patch4: sectool-0.9.4-dbus-fix.patch
License: GPLv2+
Group: Applications/System
Requires: gettext coreutils libselinux python-slip-dbus PolicyKit dbus
@@ -43,6 +45,8 @@ sectool-gui provides a GTK-based graphic
%setup -q
%patch1 -p1 -b .optflags
%patch2 -p1 -b .pk1
+%patch3 -p1 -b .policykit
+%patch4 -p1 -b .dbus
%build
make %{?_smp_mflags}
@@ -112,6 +116,9 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Wed Mar 10 2010 Maros Barabas <mbarabas at redhat.com> - 0.9.4-5
+- added patches for PolicyKit and dBus bugs
+
* Sat Jan 2 2010 Tomas Mraz <tmraz at redhat.com> - 0.9.4-4
- rebuilt with new librpm
- Previous message: rpms/kde-plasma-networkmanagement/F-12 networkmanagement-0.9-build_options.patch, NONE, 1.1 .cvsignore, 1.4, 1.5 kde-plasma-networkmanagement.spec, 1.27, 1.28 sources, 1.16, 1.17
- Next message: rpms/evince/devel evince-deprecated-functions.patch, NONE, 1.1 evince.spec, 1.181, 1.182 poppler072.patch, 1.1, NONE property-backends.patch, 1.1, NONE property-deps.patch, 1.2, NONE thumbnailer-type-init.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list