git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/1] midx.c: fix an integer overflow

From
DRDamien Robert <damien.olivier.robert@gmail.com>
Date
Feb 28, 2020, 16:24 UTC
Message-ID
<20200228162450.1720795-1-damien.olivier.robert+git@gmail.com>
When verifying a midx index with 0 objects, the
    m->num_objects - 1
overflows to 4294967295.
Fix this.
Signed-off-by: Damien Robert <damien.olivier.robert+git@gmail.com>
---
 midx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/midx.c b/midx.c
index 37ec28623a..6ffe013089 100644
--- a/midx.c
+++ b/midx.c
@@ -1127,7 +1127,7 @@ int verify_midx_file(struct repository *r, const char *object_dir, unsigned flag
 	if (flags & MIDX_PROGRESS)
 		progress = start_sparse_progress(_("Verifying OID order in multi-pack-index"),
 						 m->num_objects - 1);
-	for (i = 0; i < m->num_objects - 1; i++) {
+	for (i = 0; i + 1 < m->num_objects; i++) {
 		struct object_id oid1, oid2;
 
 		nth_midxed_object_oid(&oid1, m, i);
-- 
Patched on top of v2.25.1-379-gd22418c625 (git version 2.25.1)
Next: Jeff King
Message 1 of 17 in “midx.c: fix an integer overflow”
  1. 1/1 midx.c: fix an integer overflowDamien Robert, Feb 28, 2020
  2. Jeff KingFeb 28, 2020
  3. Junio C HamanoFeb 28, 2020
  4. Damien RobertFeb 29, 2020
  5. Damien RobertFeb 29, 2020
  6. 1/1 midx.c: fix an integer overflowDamien Robert, Mar 12, 2020
  7. Damien RobertMar 12, 2020
  8. Derrick StoleeMar 12, 2020
  9. Damien RobertMar 12, 2020
  10. 1/1 midx.c: fix an integer overflowDamien Robert, Mar 23, 2020
  11. Jeff KingMar 24, 2020
  12. Junio C HamanoMar 24, 2020
  13. 1/1 midx.c: fix an integer overflowDamien Robert, Mar 26, 2020
  14. Junio C HamanoMar 26, 2020
  15. Damien RobertMar 28, 2020
  16. Junio C HamanoMar 28, 2020
  17. 1/1 midx.c: fix an integer underflowDamien Robert, Mar 28, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.