# HG changeset patch # User jfp <jf.pieronne@laposte.net> # Date 1675351569 -3600 # Thu Feb 02 16:26:09 2023 +0100 # Node ID 844e1bd3c32874e46c5c2e21b7957334eea3e2ba # Parent a859d12265019f7826b512420cb53b92d3391019 rule02: make code simple to read rule04: starlet.device_scan always returns 4 values diff --git a/secrules/rules02.py b/secrules/rules02.py --- a/secrules/rules02.py +++ b/secrules/rules02.py @@ -46,7 +46,10 @@ )[2][ ossdef.OSS__PROTECTION ] # type:ignore - if not ((sec & 0x8000) and (sec & 0x2000)): + wprot = (sec & 0xF000) >> 12 + wbit = 0x2 + dbit = 0x8 + if wprot & wbit == 0 or wprot & dbit == 0: if fmt: print('0201"2"', fn, file=fo) else: @@ -90,7 +93,10 @@ )[2][ ossdef.OSS__PROTECTION ] # type:ignore - if not ((sec & 0x800) and (sec & 0x200)): + gprot = (sec & 0x0F00) >> 8 + wbit = 0x2 + dbit = 0x8 + if gprot & wbit == 0 or gprot & dbit == 0: if fmt: print('0202"3"', fn.decode(), file=fo) # type:ignore else: diff --git a/secrules/rules04.py b/secrules/rules04.py --- a/secrules/rules04.py +++ b/secrules/rules04.py @@ -103,7 +103,7 @@ while True: try: - sts, device, devCtx = starlet.device_scan(b'*', devItm, devCtx) + sts, device, devCtx, d = starlet.device_scan(b'*', devItm, devCtx) except: break if not lib.getdvi(dvidef.DVI__MNT, device_name=device)[1]: @@ -138,13 +138,13 @@ print(fn.decode(), prot.decode(), file=fo) devCtx = 0 - devItm = [ + devItm = ( itemList.itemList(code=dvsdef.DVS__DEVCLASS, value=dcdef.DC__DISK), - ] + ) while True: try: - sts, device, devCtx = starlet.device_scan(b'*', devItm, devCtx) + sts, device, devCtx, d = starlet.device_scan(b'*', devItm, devCtx) except: break if not lib.getdvi(dvidef.DVI__MNT, device_name=device)[1]: @@ -307,7 +307,7 @@ while True: try: - sts, device, devCtx = starlet.device_scan(b'*', devItm, devCtx) + sts, device, devCtx, d = starlet.device_scan(b'*', devItm, devCtx) except: break if not lib.getdvi(dvidef.DVI__MNT, device_name=device)[1]: