setUnicodeLocale is dangerous and might lead to segmentation faults
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- haskell
- Área
- backend, internationalization
Línea de trabajo
Start by locating the setUnicodeLocale implementation and all of its call sites in the Snap server code. Review how it interacts with setenv, getenv, and threaded startup, then determine the intended locale behavior and define regression coverage for the reported segmentation-fault risk.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The underlying problem is that setenv is not thread safe as simultaneous call to getenv in multithreaded enviroment might lead to segmentation fault by attempting to dereference a null pointer (relevant glibc ticket).
Considering that snap is usually started in a separate thread, this creates a serious issue, because a wide variety of functions call getenv internally (see above ticket for more info).
I personally encountered this problem when using ekg (which uses snap internally).
To be fair, I'm not sure why locale is set there to begin with.
- Lenguaje dominante
- Haskell
- Estrellas
- 197
- Forks
- 87
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 snapframework/snap-server
-
Timeout for pure valuesAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
snapframework/snap-server#118 · 5 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
snapframework/snap-server#94 · 1 reacción ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
snapframework/snap-server#92 · 2 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
snapframework/snap-server#85 · 8 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
snapframework/snap-server#77 · 2 comentarios ·
Todos los issues de snapframework/snap-server
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
puffnfresh/haskell-jwt#12 ·
-
cabal update underdocumentedPosiblemente ocupada @KeuqS la tomó hace 1 día. Abiertoattention: pr-welcome documentation good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
haskell/cabal#12447 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
LaTeX writer: definition term containing `=` breaks the build when `pdfstandard` is setPosiblemente ocupada @enieuwy la tomó hoy. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
status: needs triage type: enhancement
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
haskell/haskell-language-server#5128 ·
Los mantenedores suelen responder en 1 día