Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Sign extension at phar_object.c

Chiusa Adatta ai principianti
#23,718 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
78/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
c, php
Ambito
backend

Direzione di ricerca

Inizia in ext/phar/phar_object.c, in PharFileInfo::getCompressedSize(), quindi leggi la definizione di zend_long in Zend/zend_long.h. Riproduci il caso di un compressed_filesize grande in una build a 32 bit e aggiungi o aggiorna la copertura di regressione pertinente di Phar. Il lavoro è completato quando i valori superiori a INT32_MAX non vengono più riportati come negativi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Bug Status: Needs Triage
Description

The field compressed_filesize is a uint32_t, but PharFileInfo::getCompressedSize() returns it with RETURN_LONG:
https://github.com/php/php-src/blob/fca72841a5d41b11c0e60ed0906af6af302741ca/ext/phar/phar_object.c#L4497
zend_long is 32-bit on 32-bit platforms:
https://github.com/php/php-src/blob/fca72841a5d41b11c0e60ed0906af6af302741ca/Zend/zend_long.h#L41-L49
so a size above INT32_MAX is reported as a negative number.

Found by Linux Verification Center (portal.linuxtesting.ru) with SVACE.

Reporter: Pavel Nekrasov ([email protected]).

PHP Version
php version - 8.3
Operating System

No response

Lingua principale
C
Stelle
40.4k
Fork
8.2k
Merge medio
2g 11h
PR unite (30g)
116

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di php/php-src

Tutte le issue di php/php-src

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.