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

Windows bitness confusion #739

Merged
merged 1 commit into from
Jan 27, 2016
Merged

Windows bitness confusion #739

merged 1 commit into from
Jan 27, 2016

Conversation

fbenkstein
Copy link
Collaborator

This is a greater refactoring of the calls to ReadProcessMemory. Currently all the catch-all error handlers mapping ERROR_PARTIAL_READ to AccessDenied are gone.

This builds on top of #738.

@giampaolo
Copy link
Owner

What happens now instead of AccessDenied? Can you describe what changed in HISTORY.rst?

@fbenkstein
Copy link
Collaborator Author

What happens now instead of AccessDenied?

I haven't seen an ERROR_PARTIAL_READ so far. My hunch is that most of them were caused by mixing bitness. Maybe if they get rarer it's worth letting them trickle up the stack. They might happen again with my environ change though because that reads another even bigger chunk. If that turns out to be an issue I'll handle them as before (either ignore as in cmdline() or convert to AccessDenied).

Can you describe what changed in HISTORY.rst?

Will do.

@fbenkstein
Copy link
Collaborator Author

I'm still not sure about throwing NotImplementedError. It breaks the 32 bit test cases and it's probably unexpected. I'll see if I can actually fix the case where python is 32 bit and the target process is 64 bit.

@fbenkstein
Copy link
Collaborator Author

Okay, all the cases are implemented and seem to be working now. Unfortunately the change is quite large now. The different paths are similar but not quite the same I do not have a good idea on how to unify them yet.

@giampaolo
Copy link
Owner

Can you fix conflicts (git merge master etc.)?

@fbenkstein
Copy link
Collaborator Author

Rebased.

@giampaolo
Copy link
Owner

Please fix lines lenght so that they are no longer than 80 chars then it's good to go.

Replace the hard-coded offsets into compiler generated
ones by providing struct definitions for the data to be
fetched from the target process.  This allows a 64 bit
process to query both other 64 bit and 32 bit processes.
A 32 bit process currently can only query other 32 bit
processes.
@fbenkstein
Copy link
Collaborator Author

Okay. I changed the long lines. What do you think about adding an auto-formatting target (clang-format or uncrustify or some such) for the C code?

@giampaolo
Copy link
Owner

I am not familiar with that. How would it work?
On Jan 27, 2016 2:21 PM, "Frank Benkstein" notifications@github.com wrote:

Okay. I changed the long lines. What do you think about adding an
auto-formatting target (clang-format or uncrustify or some such) for the C
code?


Reply to this email directly or view it on GitHub
#739 (comment).

@fbenkstein
Copy link
Collaborator Author

I am not familiar with that. How would it work?

There could be a target that automatically rewrites the C files according to some configuration file. I'll upload a proposal.

@giampaolo
Copy link
Owner

Thanks. I ll get back home and merge the pr (or you do if you have
permissions)
On Jan 27, 2016 3:43 PM, "Frank Benkstein" notifications@github.com wrote:

I am not familiar with that. How would it work?

There could be a target that automatically rewrites the C files according
to some configuration file. I'll upload a proposal.


Reply to this email directly or view it on GitHub
#739 (comment).

fbenkstein added a commit that referenced this pull request Jan 27, 2016
@fbenkstein fbenkstein merged commit 212e1c9 into giampaolo:master Jan 27, 2016
@giampaolo
Copy link
Owner

Thanks
On Jan 27, 2016 3:53 PM, "Frank Benkstein" notifications@github.com wrote:

Merged #739 #739.


Reply to this email directly or view it on GitHub
#739 (comment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants