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

Make Data / Make String (D / A) on IDA does not record type information #131

Open
themaks opened this issue Oct 23, 2024 · 1 comment
Open

Comments

@themaks
Copy link
Contributor

themaks commented Oct 23, 2024

Hi!
I recently learned (thanks @skochinsky ) that on IDA, typing D or A on a global variable to create a BYTE/WORD/DWORD/QWORD or a string, does not actually store type information. So changing a global variable's "type" this way is not actually recorded by libbs, since it does not trigger the IDB_Hooks.ti_changed hook.
This make #126 incomplete in that regard.

However (thanks again @skochinsky), there is the IDB_Hooks.make_data hook that should be able to monitor these events; maybe libbs could monitor these events, and actually apply the according type information to the target global variable in a way that the ti_changed hook would be triggered afterwards and actually record the information in binsync's database.

Not sure I'll have time to test this soon, but I wanted to share the info so that it's logged somewhere :)

Have a great day

@mahaloz
Copy link
Member

mahaloz commented Oct 24, 2024

Oh neat, I did not know that. I remember having trouble getting it to trigger a hook in the past, so this is good to know.

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

No branches or pull requests

2 participants