Gtirb-rewriting

Latest version: v0.2.0

Safety actively analyzes 625010 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.2.0

- CFI directives are now preserved, allowing rewriting of C++ programs with
exception handling. Additionally, patches can specify CFI directives.
- gtirb-rewriting now requires Python 3.7.
- OffsetMapping.__setitem__'s behavior changed when indexing by an element. It
assigns the passed MutableMapping to the internal storage instead of creating
a copy, which makes setdefault more intuitive.
asssigns the passed dict to the internal storage instead of creating a copy,
which makes setdefault more intuitive.
- Added a dwarf submodule to make creating CFI directives easier.
- Assembler's ignore_cfi_directives parameter has been removed.

0.1.2

- Updated GTIRB symbolic expression attributes.

0.1.1

- Added support for ELF symbol type, binding, and visibility
- Added support for symbols with absolute addresses using .set
- Added support for the .zero directive
- Added support for sym-sym symbolic expressions
- Added support for the .uleb128 and .sleb128 directives
- Removed inference of the GOTPCREL symbolic attribute, which cannot be done
correctly in all cases

0.1.0

- gtirb-rewriting now requires gtirb 1.10.6.
- Refactored the code that applies modifications to support future changes and
ease maintenance
- OffsetMapping.__setitem__'s behavior changed when indexing by an element. It
now behaves as an assignment instead of an update, meaning that it may
actually shrink the map in some cases. See the docstring for more examples.
- Added support for the .align directive
- The sectionProperties aux data table is now populated when patches add new
sections.
- Added support for deletions using delete_at
- Functions are no longer needed for insert_at and replace_at. New overloads
have been added that drop the function parameter and, in the future, the
old overload will be removed.
- Data blocks can now be targetted with insert_at, replace_at, and delete_at.
- Scratch registers are now passed in the insertion context instead of as
parameters. This is a breaking change.
- Added support for more ELF symbol variants: GOT, GOTNTPOFF, GOTOFF, GOTTPOFF,
TPOFF, NTPOFF, DTPOFF, TLSGD, and TLSLD.

0.0.24

- symbolicExpressionSizes is now populated for expressions in code
- The Assembler class gained an option, allow_undef_symbols, that allows
undefined symbols to be referenced and implicitly created (referring to
proxy blocks)
- Added support for indirect branches and calls
- get_or_insert_extern_sym now puts proxies in the module's proxies set
- get_or_insert_extern_sym now populates elfSymbolInfo
- Added a command-line gtirb-rewriting driver

0.0.23

- Dramatically sped up the time spent applying patches with calls

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.