Переглянути джерело

cast offset and length to int. allows clients to get around the xmlrpc i4 size limit and validates the args for free.

Chris McDonough 18 роки тому
батько
коміт
8554972baa
1 змінених файлів з 3 додано та 3 видалено
  1. 3 3
      src/supervisor/xmlrpc.py

+ 3 - 3
src/supervisor/xmlrpc.py

@@ -237,7 +237,7 @@ class SupervisorNamespaceRPCInterface:
             raise RPCError(Faults.NO_FILE, logfile)
 
         try:
-            return readFile(logfile, offset, length)
+            return readFile(logfile, int(offset), int(length))
         except ValueError, inst:
             why = inst.args[0]
             raise RPCError(getattr(Faults, why))
@@ -640,7 +640,7 @@ class SupervisorNamespaceRPCInterface:
             raise RPCError(Faults.NO_FILE, logfile)
 
         try:
-            return readFile(logfile, offset, length)
+            return readFile(logfile, int(offset), int(length))
         except ValueError, inst:
             why = inst.args[0]
             raise RPCError(getattr(Faults, why))
@@ -673,7 +673,7 @@ class SupervisorNamespaceRPCInterface:
         if logfile is None or not os.path.exists(logfile):
             return ['', 0, False]
 
-        return tailFile(logfile, offset, length)
+        return tailFile(logfile, int(offset), int(length))
 
     def clearProcessLog(self, name):
         """ Clear the log for name and reopen it