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

Framework: Add 'Data' type to base types #1310

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

dgmcdona
Copy link
Contributor

This adds a Data base type, which will provide the information
(layer_name and offset) required to view variable amounts of data
both before and after that offset, instead of handing fixed-sized
chunks of data back.

This will allow plugin consumers to flexibly determine how much
data to render/extract without having to re-run the plugin with
different parameter values.

This PR is the first step in the outline proposed as part of
the discussion surrounding #1287 - subsequent PRs will follow
that implement rendering of this new data type in the CLI and
configuration of default parameters, and the conversion of existing
plugins to return this new data type where appropriate (yarascan,
vadyarascan, vmayarascan).

This adds a `Data` base type, which will provide the information
(layer_name and offset) required to view variable amounts of data
both before and after that offset, instead of handing fixed-sized
chunks of data back.

This will allow plugin consumers to flexibly determine how much
data to render/extract without having to re-run the plugin with
different parameter values.
@dgmcdona
Copy link
Contributor Author

@ikelos this PR is very minimal, so please let me know if I'm missing something here - hopefully it's enough to start discussion and get the ball rolling on the next steps.

@ikelos
Copy link
Member

ikelos commented Oct 11, 2024 via email

@ikelos
Copy link
Member

ikelos commented Oct 13, 2024

Looks good, probably best if we included (at least a basic) display mechanism (so the render method that will display these). It should be off in its own method (the existing ones are all kinda lambda functions except maybe the dissembly one) and (for now) it should just pull out the length bytes and display them as a hex dump, I think? Then (in a separate PR) we can figure out how to weave the output options through to the renderers (that code was never developed but there should be a pathway to feed options through to the renderers and we really should develop it properly, even if just a basic version).

So that should allow plugins to start making use of the new type and we should get roughly identical results to what we have now where the actual data is returned, only handled by the UI rather than the plugin. Then step two will be to let the UI tinker with how it's displayed...

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

Successfully merging this pull request may close these issues.

3 participants