↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Coverity 报出大小写转换的整数溢出隐患 RSS

Coverity 在 unicode_case.c 的 convert_case() 里报出潜在整数溢出:大小写转换让输出显著膨胀时 result_len 可能回绕。Tom Lane 指出即使输入长度在 size_t 范围内,输出长度也可能溢出,32 位平台尤其明显。Jeff Davis 引 Unicode 17.0 说明映射最多带来 3 倍码点扩展,叠加 UTF-8 单码点 4 字节,上限是 12 倍;但文本上限 1GB。

发布于 2026-09-10T10:59:45.965477Z · Tom Lane · PostgreSQL hackers
Unicode 溢出

Coverity 在 unicode_case.c 的 convert_case() 里报出潜在整数溢出:大小写转换让输出显著膨胀时 result_len 可能回绕。Tom Lane 指出即使输入长度在 size_t 范围内,输出长度也可能溢出,32 位平台尤其明显。Jeff Davis 引 Unicode 17.0 说明映射最多带来 3 倍码点扩展,叠加 UTF-8 单码点 4 字节,上限是 12 倍;但文本上限 1GB。

Coverity 在 unicode_case.c 的 convert_case() 里报出潜在整数溢出:大小写转换让输出显著膨胀时 result_len 可能回绕。Tom Lane 指出即使输入长度在 size_t 范围内,输出长度也可能溢出,32 位平台尤其明显。Jeff Davis 引 Unicode 17.0 说明映射最多带来 3 倍码点扩展,叠加 UTF-8 单码点 4 字节,上限是 12 倍;但文本上限 1GB。

原始来源 ↗

来源记录
  • center.info_item · 36bdd84a29a46d8a · 2026-10-03T04:08:35.169032Z
  • pgweb.info_item · 36bdd84a29a46d8a · 2026-10-03T04:08:55.967155Z