diff options
author | Roberto Hueso Gómez <rhueso@soleta.eu> | 2020-01-21 12:06:12 +0100 |
---|---|---|
committer | Alvaro Neira Ayuso <aneira@soleta.eu> | 2020-01-21 17:32:57 +0100 |
commit | ca0a62f9c69e13e0c74b099de85f52a9daf0df54 (patch) | |
tree | f07dbf484c090305dc5759863b249a9aa1c0a3c3 | |
parent | d401c9ff468b3df106b2693611661c3870d5b89d (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.py | 8 | ||||
-rw-r--r-- | src/ogRest.py | 6 | ||||
-rw-r--r-- | tests/units/server.py | 3 |
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() |