-
Notifications
You must be signed in to change notification settings - Fork 0
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
Sourcery refactored master branch #1
base: master
Are you sure you want to change the base?
Conversation
|
||
# Compute the change to make | ||
delta = crc ^ newcrc | ||
delta = multiply_mod(reciprocal_mod(pow_mod(2, (length - offset) * 8)), delta) | ||
|
||
# Patch 4 bytes in the buffer | ||
bytes4 = bytearray(buffer[offset:offset+4]) | ||
if len(bytes4) != 4: | ||
raise IOError("Cannot read 4 bytes at offset") | ||
|
||
if printstatus: | ||
print("Target bytes @ offset: {:s}".format(str(bytes4).encode('hex'))) | ||
|
||
for i in range(4): | ||
bytes4[i] ^= (reverse32(delta) >> (i * 8)) & 0xFF | ||
|
||
if printstatus: | ||
print("Patched value: {:s}".format(str(bytes4).encode('hex'))) | ||
|
||
result = str(buffer[0:offset] + bytes4 + buffer[offset+4:]) | ||
result = str(buffer[:offset] + bytes4 + buffer[offset+4:]) | ||
|
||
if printstatus: | ||
print("Computed and wrote patch") | ||
|
||
# Recheck entire file | ||
if get_buffer_crc32(result) != newcrc: | ||
raise AssertionError("Failed to update CRC-32 to desired value") | ||
elif printstatus: | ||
print("New CRC-32 successfully verified") | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function modify_buffer_crc32
refactored with the following changes:
- Replace a[0:x] with a[:x] and a[x:len(a)] with a[x:] (
remove-redundant-slice-index
)
for i in range(32): | ||
for _ in range(32): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function reverse32
refactored with the following changes:
- Replace unused for index with underscore (
for-index-underscore
)
buffer = buffer[0:8] + pack('<Q', bad_ptr) | ||
buffer = buffer[:8] + pack('<Q', bad_ptr) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lines 60-60
refactored with the following changes:
- Replace a[0:x] with a[:x] and a[x:len(a)] with a[x:] (
remove-redundant-slice-index
)
Branch
master
refactored by Sourcery.If you're happy with these changes, merge this Pull Request using the Squash and merge strategy.
See our documentation here.
Run Sourcery locally
Reduce the feedback loop during development by using the Sourcery editor plugin:
Review changes via command line
To manually merge these changes, make sure you're on the
master
branch, then run:Help us improve this pull request!