No error thrown when there is garbage data past end-of-frame
Los mantenedores suelen responder en 4 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
Línea de trabajo
Reproduce el ejemplo usando zstandard.decompress y zstandard.compress con datos basura al final y, a continuación, sigue el punto de entrada de la descompresión para entender cómo se gestionan los bytes posteriores al frame válido. Se considera terminado cuando los datos finales provocan un error, mientras que el frame comprimido válido se descomprime correctamente; añade una prueba de regresión que cubra este comportamiento.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
On 0.17.0, the following example doesn't throw an error:
>>> zstandard.decompress(zstandard.compress(b"foo") + b"garbage")
b'foo'
Perhaps debatable, but I think an error should always be thrown if there is data past the last valid frame in a stream. Especially after fixing https://github.com/indygreg/python-zstandard/issues/59, I don't think it makes sense to silently ignore the garbage past end-of-frame. Users should be notified if they are constructing invalid streams.
Thanks @thatch for identifying this issue.
- Lenguaje dominante
- C
- Estrellas
- 642
- Forks
- 118
- Merge medio
- 8 d 2 h
- PR fusionados (30 d)
- 7
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de indygreg/python-zstandard
-
`multi_decompress_to_buffer([])` terminates the process with SIGFPEPosiblemente ocupada @mikamikasuki la tomó hace 13 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
indygreg/python-zstandard#335 ·
Los mantenedores suelen responder en 4 días
-
Silent data-correctness bug: `readinto()` / `readinto1()` on `stream_reader` return `tell() == 0` after successful readsPosiblemente ocupada @CAOShurong la tomó hace 6 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
indygreg/python-zstandard#295 ·
Los mantenedores suelen responder en 4 días
-
Python 3.15 wheelsPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
indygreg/python-zstandard#354 · 1 reacción ·
Los mantenedores suelen responder en 4 días
-
`estimated_compression_context_size()` raises SIGFPE with `enable_ldm=TruePosiblemente ocupada @yousefissa la tomó hace 1 día. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 64/100
indygreg/python-zstandard#345 ·
Los mantenedores suelen responder en 4 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
indygreg/python-zstandard#334 ·
Los mantenedores suelen responder en 4 días
Todos los issues de indygreg/python-zstandard
Issues similares
-
Symlink in release archive attempts traversalPosiblemente ocupada @Tiancheng-Xu la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
redis/hiredis#1388 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[BUG] Small issues on iMXRT found by ClaudePosiblemente ocupada @Sarthak-Pandey la tomó hoy. AbiertoArch: arm Area: Networking OS: Linux Type: Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
eclipse-cyclonedds/cyclonedds#2474 ·
-
Device in adb "no permissions" state is reported as "Could not find any ADB device" since 4.0Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Genymobile/scrcpy#7104 ·
Los mantenedores suelen responder en 1 día
-
kind/new-feature
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
yugabyte/yugabyte-db#35142 ·
Los mantenedores suelen responder en 1 día