diff options
author | Alvaro Neira Ayuso <aneira@soleta.eu> | 2019-12-12 18:27:39 +0100 |
---|---|---|
committer | Alvaro Neira Ayuso <alvaroneay@gmail.com> | 2020-01-19 19:50:44 +0100 |
commit | 2d72f00d95339d15764580bc0ebcfcfc04b4854d (patch) | |
tree | 068b27ddc4578c42b3d2e311922b5fe0317045ef | |
parent | fdf7701a039b36beebb05296dbf28a10bd5588d2 (diff) |
Send bad request when the APIRest operation is not supported
Our program sends always the HTTP message:
HTTP/1.0 200 OK
but if the operation sent is not supported, we are sending the same correct
message. This patch add the support to check if the message is supported.
If the message is not supported, we are going to send:
HTTP/1.0 400 Bad request\r\n\r\n
Otherwise, in operations supported:
HTTP/1.0 200 OK
-rw-r--r-- | src/ogClient.py | 7 | ||||
-rw-r--r-- | src/ogProcess.py | 4 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/ogClient.py b/src/ogClient.py index 05c243d..3f7a752 100644 --- a/src/ogClient.py +++ b/src/ogClient.py @@ -85,9 +85,10 @@ class ogClient: httpparser.parser(self.data)
print httpparser.getRequestOP()
print httpparser.getURI()
- ogprocess.processOperation(httpparser.getRequestOP(), httpparser.getURI())
-
- self.sock.send("HTTP/1.0 200 OK\r\n\r\n")
+ if not ogprocess.processOperation(httpparser.getRequestOP(), httpparser.getURI()):
+ self.sock.send("HTTP/1.0 400 Bad request\r\n\r\n")
+ else:
+ self.sock.send("HTTP/1.0 200 OK\r\n\r\n")
# Cleanup state information from request
self.data = ""
diff --git a/src/ogProcess.py b/src/ogProcess.py index ff78f34..a2fca8b 100644 --- a/src/ogProcess.py +++ b/src/ogProcess.py @@ -11,8 +11,12 @@ class ogProcess(): def processOperation(self, op, URI): if ("poweroff" in URI): self.process_poweroff() + return 1 elif ("reboot" in URI): self.process_reboot() + return 1 + + return 0 def process_reboot(self): # Rebooting thread |