Updated some code in object manager

This commit is contained in:
hakril
2020-05-18 22:45:08 +02:00
parent 2e7bfba3b9
commit 5b210b50cb
2 changed files with 9 additions and 2 deletions
+1 -1
View File
@@ -15,7 +15,7 @@ def find_name(root, findname):
while TODO:
try:
for name, obj in TODO.pop().items():
if findname in name:
if findname in name or findname in obj.type:
print("* {0}".format(obj_with_link(obj)))
if obj.type == "Directory":
TODO.append(obj)
+8 -1
View File
@@ -20,7 +20,14 @@ def query_link(linkpath):
x = winproxy.NtOpenSymbolicLinkObject(res, gdef.DIRECTORY_QUERY | gdef.READ_CONTROL , obj_attr)
v = gdef.LSA_UNICODE_STRING.from_size(1000)
s = gdef.ULONG()
winproxy.NtQuerySymbolicLinkObject(res, v, s) # Handle Buffer-too-small ?
try:
winproxy.NtQuerySymbolicLinkObject(res, v, s)
except WindowsError as e:
if not (e.winerror & 0xffffffff) == gdef.STATUS_BUFFER_TOO_SMALL:
raise
# If our initial 1000 buffer is not enought (improbable) retry with correct size
v = gdef.LSA_UNICODE_STRING.from_size(s.value)
winproxy.NtQuerySymbolicLinkObject(res, v, s)
return v.str