summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoberto Hueso Gómez <rhueso@soleta.eu>2020-01-21 12:06:12 +0100
committerAlvaro Neira Ayuso <aneira@soleta.eu>2020-01-21 17:32:57 +0100
commitca0a62f9c69e13e0c74b099de85f52a9daf0df54 (patch)
treef07dbf484c090305dc5759863b249a9aa1c0a3c3
parentd401c9ff468b3df106b2693611661c3870d5b89d (diff)
Fix /software command Linux operation
This patch runs the script InventarioSoftware with the right arguments. This also increases the recv buffer size for the test server.
-rw-r--r--src/linux/ogOperations.py8
-rw-r--r--src/ogRest.py6
-rw-r--r--tests/units/server.py3
3 files changed, 12 insertions, 5 deletions
diff --git a/src/linux/ogOperations.py b/src/linux/ogOperations.py
index 357dd2f..e58256f 100644
--- a/src/linux/ogOperations.py
+++ b/src/linux/ogOperations.py
@@ -75,7 +75,13 @@ def software(request, path, ogRest):
partition = request.getPartition()
try:
- ogRest.proc = subprocess.Popen([OG_PATH + 'interfaceAdm/InventarioSoftware', disk, partition, path], stdout=subprocess.PIPE, shell=True)
+ cmd = OG_PATH + 'interfaceAdm/InventarioSoftware '
+ cmd += str(disk) + ' '
+ cmd += str(partition) + ' '
+ cmd += path
+ ogRest.proc = subprocess.Popen([cmd],
+ stdout=subprocess.PIPE,
+ shell=True)
(output, error) = ogRest.proc.communicate()
except:
raise ValueError('Error: Incorrect command value')
diff --git a/src/ogRest.py b/src/ogRest.py
index f46a331..65a2731 100644
--- a/src/ogRest.py
+++ b/src/ogRest.py
@@ -114,9 +114,9 @@ class ogThread():
jsonResp.addElement('partition', request.getPartition())
f = open(path, "r")
- lines = f.readlines()
+ output = f.read()
f.close()
- jsonResp.addElement('software', lines[0])
+ jsonResp.addElement('software', output)
response = restResponse(ogResponses.OK, jsonResp)
client.send(response.get())
@@ -295,7 +295,7 @@ class ogRest():
threading.Thread(target=ogThread.session, args=(client, request, self,)).start()
def process_software(self, client, request):
- path = '/tmp/CSft-' + client.ip + '-' + request.getPartition()
+ path = '/tmp/CSft-' + client.ip + '-' + str(request.getPartition())
threading.Thread(target=ogThread.software, args=(client, request, path, self,)).start()
def process_hardware(self, client):
diff --git a/tests/units/server.py b/tests/units/server.py
index 6020112..864b75c 100644
--- a/tests/units/server.py
+++ b/tests/units/server.py
@@ -15,6 +15,7 @@ class Server():
_probe_msg = 'POST /probe HTTP/1.0\r\nContent-Length:'+ \
str(len(_probe_json)) + \
'\r\nContent-Type:application/json\r\n\r\n' + _probe_json
+ _recv_buffer_size = 16384
def __init__(self, host='127.0.0.1', port=1234):
self.host = host
@@ -40,7 +41,7 @@ class Server():
self.conn.send(msg.encode())
def recv(self):
- return self.conn.recv(1024).decode('utf-8')
+ return self.conn.recv(self._recv_buffer_size).decode('utf-8')
def stop(self):
self.conn.close()