{"id":41014,"date":"2020-02-05T10:07:45","date_gmt":"2020-02-05T07:07:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/vypusk-sistemnoj-biblioteki-glibc-2-31"},"modified":"2020-02-05T10:07:45","modified_gmt":"2020-02-05T07:07:45","slug":"vypusk-sistemnoj-biblioteki-glibc-2-31","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/vypusk-sistemnoj-biblioteki-glibc-2-31","title":{"rendered":"Lanzamiento de la biblioteca del sistema Glibc 2.31","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Despu\u00e9s de seis meses de desarrollo <noindex><a rel=\"nofollow\" href=\"https:\/\/sourceware.org\/ml\/libc-alpha\/2020-02\/msg00010.html\">publicado<\/a><\/noindex> lanzamiento de la biblioteca del sistema <noindex><a rel=\"nofollow\" href=\"http:\/\/ftp.gnu.org\/gnu\/glibc\/\">GNU C Library<\/a><\/noindex> (glibc) <noindex><a rel=\"nofollow\" href=\"http:\/\/sourceware.org\/glibc\/wiki\/Release\/2.31\">2.31<\/a><\/noindex>, que cumple completamente con los est\u00e1ndares ISO C11 y POSIX.1-2008. La nueva versi\u00f3n incluye correcciones de 58 desarrolladores. <\/p>\n<p>Implementado en Glibc 2.31 <noindex><a rel=\"nofollow\" href=\"http:\/\/sourceware.org\/git\/?p=glibc.git;a=blob_plain;f=NEWS;hb=HEAD\">son<\/a><\/noindex> se pueden destacar:\n<\/p>\n<ul>\n<li class=\"l\"> Se ha agregado el macro _ISOC2X_SOURCE para habilitar las caracter\u00edsticas definidas en el borrador del futuro est\u00e1ndar ISO <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/C2x\">C2X<\/a><\/noindex>. Estas funciones tambi\u00e9n se habilitan al usar el macro _GNU_SOURCE o al compilar en gcc con la bandera &#171;-std=gnu2x&#187;;\n<li class=\"l\"> Para ciertas funciones en el archivo de encabezado &#171;math.h&#187; que redondean sus resultados a un tipo de tama\u00f1o menor, en el archivo &#171;tgmath.h&#187; se proponen macros de tipo gen\u00e9rico, como lo requieren las especificaciones TS 18661-1:2014 y TS 18661-3:2015;\n<li class=\"l\"> Se ha agregado la funci\u00f3n pthread_clockjoin_np(), que espera la finalizaci\u00f3n de un hilo con un tiempo de espera (si el tiempo de espera expira antes de que termine, la funci\u00f3n devolver\u00e1 un error). A diferencia de <noindex><a rel=\"nofollow\" href=\"https:\/\/linux.die.net\/man\/3\/pthread_timedjoin_np\">pthread_timedjoin_np()<\/a><\/noindex>, en pthread_clockjoin_np() se permite definir el tipo de temporizador para calcular el tiempo de espera \u2014 CLOCK_MONOTONIC (toma en cuenta el tiempo que el sistema ha estado en modo de suspensi\u00f3n) o CLOCK_REALTIME;\n<li class=\"l\"> Se ha agregado soporte en el resolutor DNS para la opci\u00f3n trust-ad en \/etc\/resolv.conf y el flag RES_TRUSTAD en _res.options, que al ser establecidos permiten la transmisi\u00f3n del flag DNSSEC en las consultas DNS <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc3655\">AD<\/a><\/noindex> (data autenticada). En este modo, el flag AD establecido por el servidor se vuelve accesible para las aplicaciones que llaman funciones como res_search(). Por defecto, si no se establecen las opciones propuestas, glibc no indica el flag AD en las consultas y lo limpia autom\u00e1ticamente en las respuestas, lo que indica la ausencia de verificaci\u00f3n DNSSEC;\n<li class=\"l\"> Ya no se requiere la instalaci\u00f3n de los archivos de encabezado del n\u00facleo de Linux para construir las capas de envoltura de las llamadas del sistema para Glibc. La excepci\u00f3n es la arquitectura de 64 bits RISC-V;\n<li class=\"l\"> Corregido <noindex><a rel=\"nofollow\" href=\"https:\/\/bugzilla.redhat.com\/show_bug.cgi?id=CVE-2019-19126\">vulnerabilidad<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/security-tracker.debian.org\/tracker\/CVE-2019-19126\">CVE-2019-19126<\/a><\/noindex>, que permite eludir la protecci\u00f3n<br \/>\nASLR en programas con el flag setuid y determinar la disposici\u00f3n de direcciones en las bibliotecas cargadas manipulando la variable de entorno LD_PREFER_MAP_32BIT_EXEC.<\/p>\n<\/ul>\n<p> Cambios que rompen la compatibilidad:<\/p>\n<ul>\n<li class=\"l\"> En totalorder(), totalordermag() y funciones similares para otros tipos de punto flotante, ahora aceptan como argumento punteros para evitar advertencias de conversi\u00f3n de valores en estado <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/NaN\">NaN<\/a><\/noindex>, de acuerdo con las recomendaciones TS 18661-1, propuestas para el futuro est\u00e1ndar C2X.<br \/>\nLos archivos ejecutables existentes, en los que los argumentos de punto flotante se pasan directamente, continuar\u00e1n funcionando sin cambios;<\/p>\n<li class=\"l\"> La funci\u00f3n obsoleta stime, anunciada hace tiempo, ya no est\u00e1 disponible para los archivos binarios vinculados con glibc, y su definici\u00f3n ha sido eliminada de time.h. Para establecer la hora del sistema, se debe utilizar la funci\u00f3n clock_settime. Se planea eliminar tambi\u00e9n la funci\u00f3n ftime, marcada como obsoleta, as\u00ed como el archivo de encabezado sys\/timeb.h (en lugar de ftime, se debe utilizar gettimeofday o clock_gettime);\n<li class=\"l\"> La funci\u00f3n gettimeofday ya no pasa informaci\u00f3n sobre la zona horaria del sistema (esta capacidad era aplicable en la \u00e9poca de 4.2-BSD y ha sido considerada obsoleta durante muchos a\u00f1os). En el argumento &#8216;tzp&#8217; ahora se debe pasar un puntero nulo, y para obtener informaci\u00f3n sobre la zona horaria en relaci\u00f3n con la hora actual se debe utilizar la funci\u00f3n localtime(). Al llamar a gettimeofday con un argumento &#8216;tzp&#8217; no nulo, se devolver\u00e1n campos vac\u00edos tz_minuteswest y tz_dsttime en la estructura timezone. La propia funci\u00f3n gettimeofday se considera obsoleta en POSIX (se recomienda usar clock_gettime en lugar de gettimeofday), pero no se planea eliminarla de glibc;\n<li class=\"l\"> En settimeofday se ha dejado de admitir el paso simult\u00e1neo de par\u00e1metros para establecer la hora y el ajuste de la desviaci\u00f3n de tiempo. Al llamar a settimeofday, uno de los argumentos (tiempo o desplazamiento) ahora debe ser necesariamente establecido en null, de lo contrario, la llamada a la funci\u00f3n finalizar\u00e1 con el error EINVAL. Al igual que gettimeofday, la funci\u00f3n settimeofday se considera obsoleta en POSIX y se recomienda usar la funci\u00f3n clock_settime o la familia de funciones adjtime;\n<li class=\"l\"> Se ha dejado de dar soporte para la arquitectura SPARC ISA v7 (el soporte para v8 se mantiene, pero solo para procesadores que admiten instrucciones CAS, como los procesadores LEON, pero no para los procesadores SuperSPARC).\n<li class=\"l\"> En caso de fallo de enlace en modo &#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.oracle.com\/cd\/E23824_01\/html\/819-0690\/chapter3-7.html\">lazy<\/a><\/noindex>&#171;, en el que el enlazador no busca los s\u00edmbolos de la funci\u00f3n hasta que se llama a la funci\u00f3n por primera vez, la funci\u00f3n dlopen ahora finaliza el proceso forzosamente (anteriormente, en caso de falla, devolv\u00eda NULL);\n<li class=\"l\"> Para la ABI MIPS hard-float, ahora se utiliza la pila ejecutable, a menos que se haya especificado expl\u00edcitamente un l\u00edmite en el uso del n\u00facleo de Linux 4.8+ a trav\u00e9s del par\u00e1metro &#171;&#8212;enable-kernel=4.8.0&#187; (con n\u00facleos anteriores a 4.8 pueden ocurrir fallos en algunas configuraciones MIPS);\n<li class=\"l\"> Las funciones relacionadas con las llamadas del sistema que manipulan el tiempo se han trasladado a la llamada del sistema time64, si est\u00e1 disponible (en sistemas de 32 bits, glibc primero intenta usar las nuevas llamadas del sistema que manipulan el tipo de 64 bits para el tiempo, y si no est\u00e1n disponibles, vuelve a las viejas llamadas de 32 bits).\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fuente: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52293\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 GNU C Library (glibc) 2.31, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 ISO C11 \u0438 POSIX.1-2008. \u0412 \u0441\u043e\u0441\u0442\u0430\u0432 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0442 58 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. \u0418\u0437 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432 Glibc 2.31 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c: \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0430\u043a\u0440\u043e\u0441 _ISOC2X_SOURCE \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0445 \u0432 \u0447\u0435\u0440\u043d\u043e\u0432\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 ISO C2X. \u0414\u0430\u043d\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-41014","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/vypusk-sistemnoj-biblioteki-glibc-2-31\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Glibc 2.31 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/vypusk-sistemnoj-biblioteki-glibc-2-31\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-02-05T07:07:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-05T07:07:45+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lanzamiento de la biblioteca del sistema Glibc 2.31 | ProHoster","description":"Despu\u00e9s de seis meses de desarrollo, se ha publicado la versi\u00f3n de la biblioteca del sistema","canonical_url":"https:\/\/prohoster.info\/es\/blog\/vypusk-sistemnoj-biblioteki-glibc-2-31","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Glibc 2.31 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438","og:url":"https:\/\/prohoster.info\/es\/blog\/vypusk-sistemnoj-biblioteki-glibc-2-31","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-02-05T07:07:45+00:00","article:modified_time":"2020-02-05T07:07:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"41014","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:25:41","updated":"2022-09-30 11:31:57","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/41014","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=41014"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/41014\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=41014"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=41014"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=41014"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}