Lançamento da biblioteca do sistema Glibc 2.30

Após seis meses de desenvolvimento foi publicado lançamento da biblioteca do sistema GNU C Library (glibc) 2.30, que atende totalmente aos padrões ISO C11 e POSIX.1-2008. A nova versão inclui correções de 48 desenvolvedores.

Implementado no Glibc 2.30 melhorias pode-se destacar:

  • O linkador dinâmico agora suporta a opção "--preload" para pré-carregar objetos compartilhados (semelhante à variável de ambiente LD_PRELOAD);
  • Adicionada a função twalk_r, semelhante à função twalk existente, mas permitindo passar um argumento adicional para a função de callback especificada;
  • Novas funções getdents64, gettid e tgkill foram adicionadas ao Linux;
  • Garantido que as funções de gerenciamento de memória malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign e posix_memalign retornem códigos de erro quando o tamanho total do objeto exceder o valor PTRDIFF_MAX. Essa mudança evita comportamento indefinido quando o resultado das manipulações de ponteiros resulta em overflow do tipo ptrdiff_t;
  • Adicionadas funções sugeridas no POSIX pthread_cond_clockwait, pthread_mutex_clocklock,
    pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock e sem_clockwait, semelhantes aos equivalentes "timed", mas que aceitam um parâmetro clockid_t para escolher o timer;
  • Dados de codificações, informações sobre tipos de caracteres e tabelas de transliteração atualizadas para suportar a especificação Unicode 12.1.0;
  • Na biblioteca librt, funções como clock_gettime, clock_getres, clock_settime, clock_getcpuclockid e clock_nanosleep não são mais fornecidas para novas aplicações, sendo utilizados automaticamente os definições na libc;
  • O suporte à opção "inet6" foi removido em /etc/resolv.conf. Flags obsoletas RES_USE_INET6, RES_INSECURE1 e RES_INSECURE2 foram removidas de resolv.h;
  • Com a opção "--enable-bind-now" especificada, os programas instalados agora se vinculam usando a flag BIND_NOW;
  • O cabeçalho específico do Linux sys/sysctl.h e a função sysctl foram declarados obsoletos, agora os aplicativos devem usar o pseudo-sistema de arquivos /proc;
  • Agora é necessário GCC 6.2 ou uma versão mais recente para compilar o Glibc (qualquer compilador pode ser usado para compilar aplicativos);
  • Corrigida vulnerabilidade CVE-2019-7309 na implementação da função memcmp para opção obsoleta a subarquitetura x32 (não confundir com x86 IA-32), que pode fazer a função retornar incorretamente o valor 0 para strings que não coincidem;
  • Corrigida vulnerabilidade CVE-2019-9169, que pode levar à leitura de dados fora dos limites do buffer ao processar certas expressões regulares.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster