summaryrefslogtreecommitdiffstats
path: root/samloader/versionfetch.py
diff options
context:
space:
mode:
authornlscc <66028747+nlscc@users.noreply.github.com>2021-06-01 15:25:02 +0200
committernlscc <66028747+nlscc@users.noreply.github.com>2021-06-01 15:25:02 +0200
commit820375214f1b7b26109e5c3aea8d005fcc56eebf (patch)
tree0768723ff218d2548e5155f484d8e9798756e16d /samloader/versionfetch.py
parentretire code of conduct (diff)
downloadsamloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar.gz
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar.bz2
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar.lz
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar.xz
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.tar.zst
samloader-820375214f1b7b26109e5c3aea8d005fcc56eebf.zip
Diffstat (limited to '')
-rw-r--r--samloader/versionfetch.py17
1 files changed, 10 insertions, 7 deletions
diff --git a/samloader/versionfetch.py b/samloader/versionfetch.py
index b8f150c..e758867 100644
--- a/samloader/versionfetch.py
+++ b/samloader/versionfetch.py
@@ -6,6 +6,15 @@
import xml.etree.ElementTree as ET
import requests
+def normalizevercode(vercode: str) -> str:
+ """ Normalize a version code to four-part form. """
+ ver = vercode.split("/")
+ if len(ver) == 3:
+ ver.append(ver[0])
+ if ver[2] == "":
+ ver[2] = ver[0]
+ return "/".join(ver)
+
def getlatestver(model: str, region: str) -> str:
""" Get the latest firmware version code for a model and region. """
req = requests.get("https://fota-cloud-dn.ospserver.net/firmware/" \
@@ -15,10 +24,4 @@ def getlatestver(model: str, region: str) -> str:
vercode = root.find("./firmware/version/latest").text
if vercode is None:
raise Exception("No latest firmware found")
- # Normalize retrieved version
- ver = vercode.split("/")
- if len(ver) == 3:
- ver.append(ver[0])
- if ver[2] == "":
- ver[2] = ver[0]
- return "/".join(ver)
+ return normalizevercode(vercode)