| 1234567891011121314151617181920212223242526272829303132 |
- from . import oleaut32, ws2_32, wsock32
- """
- A small module containing a database of ordinal to symbol mappings for DLLs
- which frequently get linked without symbolic information.
- """
- ords = {
- b"oleaut32.dll": oleaut32.ord_names,
- b"ws2_32.dll": ws2_32.ord_names,
- b"wsock32.dll": wsock32.ord_names,
- }
- def formatOrdString(ord_val):
- return "ord{}".format(ord_val).encode()
- def ordLookup(libname, ord_val, make_name=False):
- """
- Lookup a name for the given ordinal if it's in our
- database.
- """
- names = ords.get(libname.lower())
- if names is None:
- if make_name is True:
- return formatOrdString(ord_val)
- return None
- name = names.get(ord_val)
- if name is None:
- return formatOrdString(ord_val)
- return name
|