Hace unos días, Alan Coopersmith de Oracle ha lanzado la versión 1.8.10 de libX11, la biblioteca cliente para el protocolo central X11. Coopersmith, conocido por su trabajo en Solaris y el mantenimiento del soporte de X11, sigue siendo uno de los pocos desarrolladores que gestionan las nuevas versiones de los componentes de software de X.Org.
Mejoras en la Seguridad de la Memoria
La versión 1.8.10 de libX11 incluye varias correcciones y mejoras acumuladas durante los últimos meses, con un enfoque especial en la limpieza del manejo de la memoria para mejorar la seguridad. Entre las mejoras se encuentran cambios para evitar desbordamientos de búfer, el uso de variables no inicializadas, fugas de memoria y otros trabajos relacionados con la seguridad de la memoria en este código C.
Restauración del Soporte para VAX
Además, esta actualización restaura el soporte para VAX, que todavía es utilizado por el proyecto NetBSD. Esta versión también incluye varios cambios adicionales:
Detalles de la Actualización
La versión 1.8.10 de libX11 incluye:
- Corrección del Problema con la Entrada de XIM: A veces desordenada (#205, #206, #207, #208, !246).
- Corrección de Varios Errores de Análisis Estático: (!250).
- Adición de Secuencias de Composición: Para el árabe hamza (!218), Ezh (!221), y la moneda hryvnia (!259).
- Seguridad en Hilos para Interfaces de Colormap Privadas: (#215, !254).
- Corrección de Bloqueo en XRebindKeysym: (!256).
- Limpieza Variada del Manejo de la Memoria: (!251, !258).
- Restauración del Soporte para VAX: Todavía en uso por NetBSD (!257).
Contribuciones Destacadas
Entre los desarrolladores que han contribuido a esta versión se encuentran:
- Alan Coopersmith: Evitó el desbordamiento de búfer en _XimLookupMBText y _XimLookupUTF8Text, revirtió «unifdef vax«, evitó el uso de un puntero posiblemente NULL con strcpy, y realizó varias otras mejoras en la memoria y la seguridad.
- José Expósito: Corrigió el uso de variables no inicializadas en varias funciones, verificó que los valores necesarios sean >= 0 en XkbResizeKeyActions, y solucionó una fuga de memoria en _XimProtoSetIMValues.
- Kelly Roadkill: Añadió secuencias de composición para símbolos ausentes en disposiciones cirílicas a ru_RU, eliminó secuencias de composición con cedilla postfijada anómala, y añadió secuencias de composición para la moneda hryvnia.
- Mohamed Akram: Añadió secuencias de composición para el árabe hamza.
- Olivier Fourdan: Hizo que las interfaces de colormap privadas sean seguras para hilos y corrigió un bloqueo en XRebindKeysym.
- Takao Fujiwara: Realizó varias mejoras en ximcp, incluida la desmarcación de eventos clave fabricados con el serial de XKeyEvent, y añadió la variable de entorno LIBX11_ENABLE_FABRICATED_ORDER.
Descarga y Más Información
Para más detalles y descargas de la nueva versión de libX11 1.8.10, los usuarios pueden visitar el repositorio oficial en X.Org: X.Org Releases.
Esta actualización refleja el continuo esfuerzo de la comunidad de X.Org por mantener y mejorar la seguridad y funcionalidad de sus componentes, asegurando que libX11 siga siendo una herramienta confiable y robusta para el desarrollo y uso de aplicaciones basadas en X11.