perl5144delta - perl v5.14.4 的新增内容
本文档介绍了 5.14.3 版本和 5.14.4 版本之间的差异。
如果您要从早期版本(例如 5.12.0)升级,请首先阅读 perl5140delta,其中介绍了 5.12.0 和 5.14.0 之间的差异。
自 5.14.0 以来无任何更改。
此版本包含一个重大、一个中等以及一些次要的安全修复。后者主要包含在内,以便测试套件能够通过 clang 编译器的地址清理程序工具顺利通过。
使用精心设计的哈希键集(例如 URL 上的参数),可能会导致哈希消耗大量的内存和 CPU,从而可能导致拒绝服务。
此问题已修复。
Encode.xs 中的 UTF-8 编码实现存在内存泄漏,该泄漏已修复。
复制 sockaddr
缓冲区时可能会发生读取缓冲区溢出。相当无害。
此问题已修复。
对一些字符串文字复制了额外的字节。相当无害。
此问题已修复。
正在使用一个字符串文字,其中包含超出字符串末尾的两个字节。相当无害。
此问题已修复。
在调试版本中,在将经过优化的正则表达式节点标记为类型 OPTIMIZED
时,它可能会将确切文本块视为节点,从而导致段错误。相当无害。
此问题已修复。
当eval
之前是语句local $[;
且不是赋值的一部分时,可能会崩溃。相当无害。
此问题已修复。
由于整数环绕,读取或写入大小超过 2**31 字节的字符串可能会导致段错误。
此问题已修复。
没有故意与 5.14.0 不兼容的更改。如果存在,它们是错误,欢迎报告。
自 5.14.0 以来没有弃用。
无
以下模块只有上面在 "Security" 中列出的次要代码修复(版本号未更改)
Encode 已从版本 2.42_01 升级到版本 2.42_02。
Module::CoreList 已更新到版本 2.49_06 以添加此版本的 data。
无。
无。
无。
没有新的或更改的诊断。
无
没有更改。
无。
无。
由于不完全应用允许同时使用 userelocatableinc
和 usesitecustomize
的补丁系列,5.14.3 无法在 VMS 上编译。其他平台不受影响,现在已更正此问题。
在 Perl 5.14.0 中,$tainted ~~ @array
停止正常工作。有时它会错误地失败(当 $tainted
包含一个在数组中出现在第一个元素之后的字符串时)或错误地成功(当 undef
出现在第一个元素之后时)[perl #93590]。
无。
Perl 5.14.4 大约代表自 Perl 5.14.3 以来 5 个月的开发时间,包含来自 12 位作者的 49 个文件中的大约 1,700 行更改。
由于活跃的用户和开发人员社区,Perl 在其第三个十年中继续蓬勃发展。已知以下人员为 Perl 5.14.4 的改进做出了贡献
Andy Dougherty、Chris 'BinGOs' Williams、Christian Hansen、Craig A. Berry、Dave Rolsky、David Mitchell、Dominic Hargreaves、Father Chrysostomos、Florian Ragwitz、Reini Urban、Ricardo Signes、Yves Orton。
以上列表几乎肯定不完整,因为它是由版本控制历史自动生成的。特别是,它不包括向 Perl bug 跟踪器报告问题的(非常感谢的)贡献者的姓名。
有关 Perl 所有历史贡献者的更完整列表,请参阅 Perl 源代码分发中的 AUTHORS 文件。
如果您发现您认为是一个错误,您可能需要查看最近发布到 comp.lang.perl.misc 新闻组的文章和 http://rt.perl.org/perlbug/ 上的 perl 错误数据库。https://www.perl5.cn/(Perl 主页)上也可能有一些信息。
如果您认为自己有一个未报告的错误,请运行发行版中包含的 perlbug 程序。务必将您的错误精简为一个微小但足够小的测试用例。您的错误报告连同 perl -V
的输出将被发送到 [email protected],供 Perl 移植团队分析。
如果您报告的错误具有安全隐患,不适合发送到公开存档的邮件列表,请将其发送到 [email protected]。这指向一个封闭的订阅未存档的邮件列表,其中包括所有核心提交者,他们能够帮助评估问题的影响,找出解决方案,并帮助协调发布补丁以减轻或修复所有支持 Perl 的平台上的问题。请仅将此地址用于 Perl 核心中的安全问题,而不是 CPAN 上独立分发的模块。
Changes 文件,了解如何查看已更改内容的详尽详细信息。
INSTALL 文件,了解如何构建 Perl。
有关常规内容的自述文件。
有关版权信息的Artistic 和 Copying 文件。