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

Update Rust crate eyre to v0.6.12 [SECURITY] - autoclosed #243

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jun 23, 2024

Mend Renovate

This PR contains the following updates:

Package Type Update Change
eyre dependencies patch 0.6.9 -> 0.6.12

GitHub Vulnerability Alerts

GHSA-4v52-7q2x-v4xj

In affected versions, after a Report is constructed using wrap_err or wrap_err_with to attach a message of type D onto an error of type E, then using downcast to recover ownership of either the value of type D or the value of type E, one of two things can go wrong:

  • If downcasting to E, there remains a value of type D to be dropped. It is incorrectly "dropped" by running E's drop behavior, rather than D's. For example if D is &str and E is std::io::Error, there would be a call of std::io::Error::drop in which the reference received by the Drop impl does not refer to a valid value of type std::io::Error, but instead to &str.

  • If downcasting to D, there remains a value of type E to be dropped. When D and E do not happen to be the same size, E's drop behavior is incorrectly executed in the wrong location. The reference received by the Drop impl may point left or right of the real E value that is meant to be getting dropped.

In both cases, when the Report contains an error E that has nontrivial drop behavior, the most likely outcome is memory corruption.

When the Report contains an error E that has trivial drop behavior (for example a Utf8Error) but where D has nontrivial drop behavior (such as String), the most likely outcome is that downcasting to E would leak D.


Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Jun 23, 2024
@renovate renovate bot force-pushed the renovate/crate-eyre-vulnerability branch 2 times, most recently from 5b84b10 to 1fa6e53 Compare June 23, 2024 13:15
@renovate renovate bot force-pushed the renovate/crate-eyre-vulnerability branch from 1fa6e53 to d0ed942 Compare June 23, 2024 13:17
@renovate renovate bot changed the title Update Rust crate eyre to v0.6.12 [SECURITY] Update Rust crate eyre to v0.6.12 [SECURITY] - autoclosed Jun 23, 2024
@renovate renovate bot closed this Jun 23, 2024
@renovate renovate bot deleted the renovate/crate-eyre-vulnerability branch June 23, 2024 13:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants