[nanny] Activate Win32 web contenting filtering
- From: Roberto Majadas <telemaco src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nanny] Activate Win32 web contenting filtering
- Date: Sun, 23 Jan 2011 18:03:41 +0000 (UTC)
commit e1d8c701b4ca36a350cf9f96da746509742ba67b
Author: Roberto Majadas <roberto majadas openshine com>
Date: Sun Sep 26 22:19:55 2010 +0200
Activate Win32 web contenting filtering
daemon/src/Win32WebContentFiltering.py | 56 ++++++++++++--------------------
1 files changed, 21 insertions(+), 35 deletions(-)
---
diff --git a/daemon/src/Win32WebContentFiltering.py b/daemon/src/Win32WebContentFiltering.py
index 5812e21..90755c5 100644
--- a/daemon/src/Win32WebContentFiltering.py
+++ b/daemon/src/Win32WebContentFiltering.py
@@ -37,9 +37,6 @@ from nanny.daemon.proxy.Controllers import WebDatabase
PORT_START_NUMBER=53000
WEBDATABASE='C:\\WINDOWS\\nanny_data\\webs.db'
-def ipt(cmd) :
- return os.system("/sbin/iptables %s > /dev/null 2>&1" % cmd)
-
class Win32WebContentFiltering(gobject.GObject) :
def __init__(self, quarterback, app) :
gobject.GObject.__init__(self)
@@ -75,43 +72,32 @@ class Win32WebContentFiltering(gobject.GObject) :
self.__stop_proxy(self.quarterback, uid)
def __start_proxy(self, quarterback, uid):
- pass
-# if not self.services.has_key(uid) :
-# root = ProxyService(uid, quarterback.filter_manager)
-# sc = service.IServiceCollection(self.app)
-# site = server.Site(root)
+ if not self.services.has_key(uid) :
+ root = ProxyService(uid, quarterback.filter_manager)
+ sc = service.IServiceCollection(self.app)
+ site = server.Site(root)
-# for port in range(PORT_START_NUMBER, PORT_START_NUMBER+5000) :
-# try:
-# i = internet.TCPServer(port, site)
-# i.setServiceParent(sc)
-# except:
-# continue
+ for port in range(PORT_START_NUMBER, PORT_START_NUMBER+5000) :
+ try:
+ i = internet.TCPServer(port, site)
+ i.setServiceParent(sc)
+ print "[Win32WebContentFiltering] Starting proxy (uid: %s, port: %s)" % (uid, port)
+ except:
+ continue
-# self.services[uid]=(i, port)
-# self.__add_rule(uid, port)
-# return
+ self.services[uid]=(i, port)
+ #self.__add_rule(uid, port)
+ return
def __stop_proxy(self, quarterback, uid):
- pass
-# if not self.services.has_key(uid) :
-# return True
-# else:
-# i,port = self.services.pop(uid)
-# i.stopService()
-# self.__remove_rule(uid, port)
-
- def __add_rule(self, uid, port):
- ret = ipt("-t nat -A OUTPUT -p tcp -m owner --uid-owner %s -m tcp --dport 80 --syn -j REDIRECT --to-ports %s" % (uid, port))
- if ret == 0:
- print "Redirecting of user (%s) from 80 to %s" % (uid, port)
+ if not self.services.has_key(uid) :
+ return True
+ else:
+ i,port = self.services.pop(uid)
+ i.stopService()
+ print "[Win32WebContentFiltering] Stoping proxy (uid: %s, port: %s)" % (uid, port)
+ #self.__remove_rule(uid, port)
- def __remove_rule(self, uid, port):
- ret = ipt("-t nat -D OUTPUT -p tcp -m owner --uid-owner %s -m tcp --dport 80 --syn -j REDIRECT --to-ports %s" % (uid, port))
- if ret == 0:
- print "Remove Redirecting of user (%s) from 80 to %s" % (uid, port)
-
-
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]