| 9 | from qiling.os.windows.const import STD_ERROR_HANDLE, STD_INPUT_HANDLE, STD_OUTPUT_HANDLE |
| 10 | |
| 11 | class Handle: |
| 12 | ID = 0xa0000000 |
| 13 | |
| 14 | def __init__(self, id: Optional[int] = None, obj: Any = None, name: Optional[str] = None, permissions: Optional[int] = None): |
| 15 | if id is None: |
| 16 | id = Handle.ID |
| 17 | Handle.ID += 1 |
| 18 | |
| 19 | self.id = id |
| 20 | self.obj = obj |
| 21 | self.name = name |
| 22 | self.permissions = permissions |
| 23 | |
| 24 | # overload "==" |
| 25 | def __eq__(self, other: 'Handle'): |
| 26 | return self.id == other.id |
| 27 | |
| 28 | |
| 29 | class HandleManager: |
no outgoing calls
no test coverage detected