Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: NtQueryObject / NtQueryInformationFile #68

Open
wants to merge 31 commits into
base: dev/vcpkg
Choose a base branch
from

Conversation

Holt59
Copy link
Member

@Holt59 Holt59 commented Jun 15, 2024

Hook NtQueryObject / NtQueryInformationFile, should fix ModOrganizer2/modorganizer#2039

  • The usage / difference of the two functions is not clear, for instance, a call to GetFinalPathNameByHandleW generates 3 calls: NtQueryObject with information class 1 (name), NtQueryInformationFile with information class 9 (name) and NtQueryInformationFile with information class 48 (normalized name).
  • NtQueryObject returns path with \Device\XXX prefix - I am not sure if this is required.

I added new tests because I did not feel like working with the old ones -

  • there are two new tests project usvfs_global_test and usvfs_global_test_runner
  • usvfs_global_test is not USVFS-aware and is simply made of a bunch of GTest that should be run while hooked
  • usvfs_global_test_runner actually runs usvfs_global_test with proper VFS setup

The idea is to be able to easily add new tests to test functionality - This allows testing high-level function in the hooked process.

@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from 3136bfe to a9ce2c4 Compare June 15, 2024 20:28
@Holt59 Holt59 changed the base branch from master to dev/fmt-spdlog-upgrade June 16, 2024 08:41
@Holt59 Holt59 changed the base branch from dev/fmt-spdlog-upgrade to master June 16, 2024 08:42
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from 35ba1c8 to 963f594 Compare June 16, 2024 11:45
@Holt59 Holt59 changed the base branch from master to dev/fmt-spdlog-upgrade June 16, 2024 11:45
Base automatically changed from dev/fmt-spdlog-upgrade to master June 22, 2024 06:34
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from e5f8cc1 to e3c1679 Compare June 22, 2024 06:43
@Holt59 Holt59 changed the title WIP: NtQueryInformationFile WIP: NtQueryObject / NtQueryInformationFile Jun 23, 2024
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from 1e43874 to 013f485 Compare July 14, 2024 14:55
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from 013f485 to 1f90041 Compare July 14, 2024 15:14
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from 37b3fa6 to 1fe60e8 Compare July 16, 2024 16:32
@Holt59 Holt59 changed the base branch from master to dev/vcpkg July 16, 2024 17:20
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch 2 times, most recently from 56aed1f to b7d57fc Compare December 22, 2024 17:15
@Holt59 Holt59 force-pushed the dev/nt-query-information-file branch from b7d57fc to 9e7c142 Compare December 22, 2024 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Cyberpunk 2077] Conflicts with VFS when using RedFileSystem plugin
1 participant