1.1 --- a/OpenSecurity/bin/opensecurityd.pyw Wed Feb 19 11:39:34 2014 +0100
1.2 +++ b/OpenSecurity/bin/opensecurityd.pyw Wed Feb 19 12:18:03 2014 +0100
1.3 @@ -43,6 +43,7 @@
1.4
1.5 # local
1.6 from environment import Environment
1.7 +from opensecurity_util import logger
1.8
1.9
1.10 # ------------------------------------------------------------
1.11 @@ -82,6 +83,7 @@
1.12 """OpenSecurity '/device_change' handler"""
1.13
1.14 def GET(self):
1.15 + log_call(web.ctx.environ)
1.16 try:
1.17 new_ip = gvm_mgr.handleDeviceChange()
1.18 return new_ip
1.19 @@ -96,6 +98,7 @@
1.20 """
1.21
1.22 def GET(self):
1.23 + log_call(web.ctx.environ)
1.24 try:
1.25 browsingVM = gvm_mgr.handleBrowsingRequest()
1.26 return browsingVM
1.27 @@ -106,6 +109,7 @@
1.28 """OpenSecurity '/sdvm_started' handler"""
1.29
1.30 def GET(self):
1.31 + log_call(web.ctx.environ)
1.32 remote_ip = web.ctx.environ['REMOTE_ADDR']
1.33 gvm_mgr.putStartNotification(remote_ip)
1.34 return "os_sdvm_started"
1.35 @@ -118,9 +122,11 @@
1.36 """
1.37
1.38 def GET(self, name):
1.39 + log_call(web.ctx.environ)
1.40 return gvm_mgr.getVMInfo(name)
1.41
1.42 def DELETE(self, name):
1.43 + log_call(web.ctx.environ)
1.44 return gvm_mgr.removeVM(name)
1.45
1.46
1.47 @@ -131,8 +137,8 @@
1.48 """
1.49
1.50 def GET(self, name, command):
1.51 + log_call(web.ctx.environ)
1.52 command = '/' + command
1.53 - print('---> request to launch application in VM -- ' + name + ':' + command + ' <---')
1.54 result = Cygwin.sshExecuteX11(command, gvm_mgr.getHostOnlyIP(name), 'osecuser', Cygwin.cygPath(gvm_mgr.getMachineFolder()) + '/' + name + '/dvm_key' )
1.55 self.poweroffVM(name)
1.56 return gvm_mgr.removeVM(name)
1.57 @@ -145,6 +151,7 @@
1.58 """
1.59
1.60 def GET(self, name):
1.61 + log_call(web.ctx.environ)
1.62 return gvm_mgr.getHostOnlyIP(name)
1.63
1.64
1.65 @@ -155,6 +162,7 @@
1.66 """
1.67
1.68 def GET(self, name):
1.69 + log_call(web.ctx.environ)
1.70 return gvm_mgr.startVM(name)
1.71
1.72
1.73 @@ -165,6 +173,7 @@
1.74 """
1.75
1.76 def GET(self, name):
1.77 + log_call(web.ctx.environ)
1.78 return gvm_mgr.stopVM(name)
1.79
1.80
1.81 @@ -177,11 +186,13 @@
1.82
1.83 def GET(self):
1.84 """get the list of SDVMs"""
1.85 + log_call(web.ctx.environ)
1.86 return gvm_mgr.listSDVM()
1.87
1.88 def POST(self):
1.89 """create a new SDVM"""
1.90 -
1.91 + log_call(web.ctx.environ)
1.92 +
1.93 # get a new vm-name
1.94 name = gvm_mgr.generateSDVMName()
1.95 try:
1.96 @@ -198,6 +209,7 @@
1.97 """
1.98
1.99 def GET(self, name):
1.100 + log_call(web.ctx.environ)
1.101 return gvm_mgr.getVMInfo(name)
1.102
1.103
1.104 @@ -208,6 +220,7 @@
1.105 """
1.106
1.107 def GET(self):
1.108 + log_call(web.ctx.environ)
1.109 return gvm_mgr.listVM()
1.110
1.111
1.112 @@ -218,6 +231,7 @@
1.113 """
1.114
1.115 def GET(self):
1.116 + log_call(web.ctx.environ)
1.117 res = "'os_server': { "
1.118 res += "'version': '" + __version__ + "', "
1.119 res += "'machine_folder': '" + gvm_mgr.getDefaultMachineFolder() + "' "
1.120 @@ -232,8 +246,18 @@
1.121
1.122 def GET(self):
1.123 #return gvm_mgr.guestExecute('SecurityDVM', 'sudo apt-get -y update')
1.124 + log_call(web.ctx.environ)
1.125 return gvm_mgr.updateTemplate()
1.126
1.127 +
1.128 +def log_call(web_environ):
1.129 + """log the incoming call to the REST api"""
1.130 + try:
1.131 + call = 'REST ' + web_environ['REQUEST_METHOD'] + ' ' + web_environ['REQUEST_URI'] + ' from ' + web_environ['REMOTE_ADDR'] + ':' + web_environ['REMOTE_PORT']
1.132 + logger.debug(call)
1.133 + except:
1.134 + pass
1.135 +
1.136 # start
1.137 if __name__ == "__main__":
1.138 server = web.application(opensecurity_urls, globals())