mirror of
https://github.com/riptidewave93/UNVR-NAS.git
synced 2025-02-12 10:31:55 +00:00
fix: small python fixups
* Error handling in our ustorage, to prevent crashes * Small change to ubnt-fw-parse so it works better on older python versions
This commit is contained in:
parent
696f7955b0
commit
36ff26758e
2 changed files with 29 additions and 16 deletions
|
@ -60,21 +60,33 @@ def __find_and_map_disks():
|
||||||
disk_smartdata = os.popen(
|
disk_smartdata = os.popen(
|
||||||
f"{SMARTCTL_PATH} -iHA /dev/{disk_node}"
|
f"{SMARTCTL_PATH} -iHA /dev/{disk_node}"
|
||||||
).read()
|
).read()
|
||||||
disk_temp = int(
|
|
||||||
__parse_smartctl(
|
try:
|
||||||
disk_smartdata,
|
disk_temp = int(
|
||||||
r"^194 [\w-]+\s+0x\d+\s+\d+\s+\d+\s+\d+\s+[\w-]+\s+\w+\s+\S+\s+(\d+)(?:\s[\(][^)]*[\)])?$",
|
__parse_smartctl(
|
||||||
|
disk_smartdata,
|
||||||
|
r"^194 [\w-]+\s+0x\d+\s+\d+\s+\d+\s+\d+\s+[\w-]+\s+\w+\s+\S+\s+(\d+)(?:\s[\(][^)]*[\)])?$",
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
except:
|
||||||
disk_bad_sectors = int(
|
disk_temp = None
|
||||||
__parse_smartctl(
|
|
||||||
disk_smartdata,
|
try:
|
||||||
r"^ 5 [\w-]+\s+0x\d+\s+\d+\s+\d+\s+\d+\s+[\w-]+\s+\w+\s+\S+\s+(\d+)(?:\s[\(][^)]*[\)])?$",
|
disk_bad_sectors = int(
|
||||||
|
__parse_smartctl(
|
||||||
|
disk_smartdata,
|
||||||
|
r"^ 5 [\w-]+\s+0x\d+\s+\d+\s+\d+\s+\d+\s+[\w-]+\s+\w+\s+\S+\s+(\d+)(?:\s[\(][^)]*[\)])?$",
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
except:
|
||||||
disk_size = int(__read_file(f"/sys/block/{disk_node}/size")) * int(
|
disk_bad_sectors = None
|
||||||
__read_file(f"/sys/block/{disk_node}/queue/logical_block_size")
|
|
||||||
)
|
try:
|
||||||
|
disk_size = int(__read_file(f"/sys/block/{disk_node}/size")) * int(
|
||||||
|
__read_file(f"/sys/block/{disk_node}/queue/logical_block_size")
|
||||||
|
)
|
||||||
|
except:
|
||||||
|
disk_size = None
|
||||||
|
|
||||||
# Do we pass SMART testing?
|
# Do we pass SMART testing?
|
||||||
if "PASSED" in __parse_smartctl(
|
if "PASSED" in __parse_smartctl(
|
||||||
|
|
|
@ -68,9 +68,10 @@ def main(fwfile: str, savedir: str):
|
||||||
file_header[4:33].decode("utf-8").rstrip("\x00")
|
file_header[4:33].decode("utf-8").rstrip("\x00")
|
||||||
) # Name/type of FILE
|
) # Name/type of FILE
|
||||||
file_length = int(file_header[48:52].hex(), 16)
|
file_length = int(file_header[48:52].hex(), 16)
|
||||||
print(
|
# Disabled because it's debug info and older python can't handle it
|
||||||
f"{file_name} is at offset {"0x%0.2X" % file_location}, {file_length} bytes"
|
#print(
|
||||||
)
|
# f"{file_name} is at offset {"0x%0.2X" % file_location}, {file_length} bytes"
|
||||||
|
#)
|
||||||
# print(int(file_header[52:56].hex(), 16)) # Maybe reserved memory or partition size? We don't use this tho
|
# print(int(file_header[52:56].hex(), 16)) # Maybe reserved memory or partition size? We don't use this tho
|
||||||
fcount = fcount + 1 # Increment on find!
|
fcount = fcount + 1 # Increment on find!
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue