diff --git a/crates/git2/RUSTSEC-0000-0000.md b/crates/git2/RUSTSEC-0000-0000.md new file mode 100644 index 0000000000..9b1b89cf2e --- /dev/null +++ b/crates/git2/RUSTSEC-0000-0000.md @@ -0,0 +1,16 @@ +```toml +[advisory] +id = "RUSTSEC-0000-0000" +package = "git2" +date = "2026-05-12" +url = "https://github.com/rust-lang/git2-rs/pull/1250" +informational = "unsound" +keywords = ["git2"] + +[versions] +patched = ["> 0.20.4"] +``` + +# Potential undefined behavior when calling Remote::list() + +When calling `Remote::list()` for a remote of a git repository, when that remote does not advertise any references, git2 passes a null pointer to the unsafe function `slice::from_raw_parts()`. Based on the safety section documentation of function, data must be non-null even for slices of length zero. Thus, the use of a null pointer leads to undefined behavior.