Workaround for an error: conflicting erase polarities, was 0x00, requested 0xFF
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 373
- Forks
- 59
- PR merge metrics
- No merged PRs in 30d
Description
Hello!
I'm parsing firmwares to analyze corruptions. But there is a non-corrupted firmware (provided by our ODM), which is non-parsible by fiano, it returns an error:
```
conflicting erase polarities, was 0x00, requested 0xFF
```
Also I read multiple firmwares in a concurrent way (within concurrent routines), so switching the `Attributes.ErasePolarity` value is not a very good option. So I'm wondering: is it possible to workaround this problem?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the handling of Attributes.ErasePolarity and the code path that returns “conflicting erase polarities, was 0x00, requested 0xFF.” Determine how concurrent firmware parsing can avoid switching shared polarity state, and define completion as a documented or implemented workaround that parses the reported firmware safely.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100