7.9. 编译器和开发工具
GCC Toolset 11:GCC 11 现在默认为 DWARF 4
虽然上游 GCC 11 默认使用 DWARF 5 调试格式,但 GCC Toolset 11 的 GCC 默认使用 DWARF 4 来保持与 RHEL 8 组件的兼容性,如 rpmbuild
。
(BZ#1974402)
可调项框架现在可以正确地解析 GLIBC_TUNABLES
在以前的版本中,对于 setuid 程序的非 setuid 子项,可调项框架无法正确解析 GLIBC_TUNABLES
环境变量。因此,在某些情况下,所有可调项仍保留在 setuid 程序的非 setuid 子项中。在这个版本中,GLIBC_TUNABLES
环境变量中的可调项会被正确解析。因此,现在 setuid 程序的非 setuid 子项仅继承受限的标识可调项。
(BZ#1934155)
glibc
中的 semctl
系统调用打包程序现在像 SEM_STAT_ANY
一样对待 SEM_STAT
在以前的版本中,glibc
中的 semctl
系统调用打包程序没有像 SEM_STAT_ANY
一样对待内核参数 SEM_STAT
。因此,glibc
没有将结果对象 结构 parad_ds
的地址传递给内核,因此内核无法更新它。在这个版本中,glibc
处理 SEM_STAT_ANY
(如 SEM_STAT
),因此应用可以使用 SEM_STAT_ANY
来获取 struct semid_ds
数据。
Glibc
现在包括了对 IPPROTO_ETHERNET
, IPPROTO_MPTCP
, 和 INADDR_ALLSNOOPERS_GROUP
的定义
在以前的版本中,Glibc
系统库标头(/usr/include/netinet/in.h
)不包括 IPPROTO_ETHERNET
, IPPROTO_MPTCP
, 和 INADDR_ALLSNOOPERS_GROUP
的定义。因此,需要这些定义的应用程序无法编译。有了这个更新,系统库头包含 IPPROTO_ETHERNET
、IPPROTO_MPTCP
和 INADDR_ALLSNOOPERS_GROUP
的新网络常量定义,从而正确编译应用程序。
GCC
更新到版本 8.5
GNU Compiler Collection(GCC)更新至上游版本 8.5,它提供很多程序漏洞修复。
使用 OpenSSL aes-cbc
模式的文件解密不正确
OpenSSL EVP aes-cbc
模式无法正确解密文件,因为它需要在 Go CryptoBlocks 接口要求完整的块时处理 padding。这个问题已通过在 OpenSSL 中执行 EVP 操作前禁用 padding 来解决。