Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[BUG] cmse spec: cmse_check_address_range() example impl. doesn't check for size==0

Abierto
#408 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
c

Línea de trabajo

Comienza con cmse/cmse.md alrededor de la línea 1592 e inspecciona la implementación de ejemplo de cmse_check_address_range(), especialmente cómo s se convierte en pe antes de las llamadas a cmse_TT*. Aclara con el proyecto cuál es el comportamiento previsto para un tamaño cero, luego actualiza el ejemplo de la especificación para que su tratamiento sea explícito y verifica la lógica documentada en torno a las llamadas afectadas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

Describe the bug

https://github.com/ARM-software/acle/blob/d294acf9fe429710151a166d12082a3434dfd764/cmse/cmse.md?plain=1#L1592

If s is zero, then pe is set just below pb -- or in case pb is zero, we wrap around 0 downwards, to the maximum possible pointer value. In either of those cases, all the subsequent cmse_TT* invocations get bogus pe values.

Arguably, if the caller intends to access zero bytes, we should immediately fail, or immediately validate, the intent (I could see arguments for either outcome). What we should probably not do is call cmse_TT* at all.

Screenshots

If applicable, add screenshots to help explain your problem. This is
useful for layout problems in the PDF or HTML pages.

Our commitment

We will work to solve the bug report in time for the upcoming
release. However, we would like to encourage you to submit the fix
yourself, if possible. If you intend to do so and this is your first
contribution, we recommend reading our contribution
guidelines
.

Lenguaje dominante
Python
Estrellas
130
Forks
78
Merge medio
2 d 6 h
PR fusionados (30 d)
4

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de ARM-software/acle

Todos los issues de ARM-software/acle

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.