Publication de la bibliothèque standard C Musl 1.2.5

Après 10 mois de développement, la version de la bibliothèque standard C Musl 1.2.5 a été publiée, offrant une implémentation de libc adaptée à une utilisation sur des PC de bureau et des serveurs, ainsi que sur des systèmes mobiles, alliant un support complet des normes (comme dans Glibc) avec une petite taille, une faible consommation de ressources et des performances élevées (comme dans uClibc, dietlibc et Android Bionic). La bibliothèque prend en charge toutes les interfaces obligatoires C99 et POSIX 2008, ainsi que partiellement C11 et un ensemble d'extensions pour la programmation multithread (threads POSIX), la gestion de la mémoire et le traitement des locales. Le code de Musl est distribué sous la licence MIT.

Principales modifications :

  • Une nouvelle fonction statx() a été ajoutée, qui se distingue de fstatat64 par la présence d'un argument de drapeau supplémentaire. Si le noyau ne prend pas en charge l'appel système statx, qui retourne des informations étendues sur le fichier, y compris la date de création du fichier et des drapeaux spécifiques aux systèmes de fichiers, il rétrograde à l'utilisation de l'appel système fstatat.
  • Les fonctions preadv2() et pwritev2() ont été ajoutées, fournissant des interfaces aux appels systèmes éponymes du noyau Linux. Les nouvelles fonctions se distinguent de preadv() et pwritev() par la présence d'un argument supplémentaire pour passer des drapeaux additionnels au noyau, tels que RWF_SYNC (vidage des données et des métadonnées du cache vers le support après l'achèvement de l'opération) et RWF_DSYNC (vidage forcé vers le support des seules données).
  • Ajout du support pour les architectures Loongarch64 et Riscv32.
  • L'implémentation de la fonction clone() a été portée à un état utilisable.
  • La fonction statvfs() garantit le retour du résultat avec le type f_type.
  • Pour les systèmes Riscv64, le support du mécanisme TLSDESC (Thread-Local Storage Descriptor) a été ajouté.
  • Dans le résolveur DNS, la gestion des réponses avec de longues séquences CNAME a été mise en œuvre. Un problème a été résolu, entraînant le rejet de certaines grandes réponses transmises via TCP.
  • Dans les interfaces mntent, le support de l'échappement des espaces dans les chemins de fichiers et les options a été ajouté.
  • Dans snprintf et swprintf, la gestion correcte des nombres supérieurs à INT_MAX a été assurée. La conformité aux normes des fonctions de la famille printf a été améliorée.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster