Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
第 31 章 网络
libcurl
成功与需要 HTTP 主机名的服务器通信,以匹配 TLS 会话主机名
在以前的版本中,在某些情况下,网络安全服务(NSS)为具有不同主机名的服务器错误地重复使用 TLS 会话。因此,HTTPS 服务器可能会以 HTTP 错误 400 (Bad Request)响应。上游补丁应用于
libcurl
库的源代码,以防止 NSS 在 HTTP 主机名与 TLS 会话主机名不匹配时重复使用 TLS 会话。因此,libcurl 可以成功与需要 HTTP 主机名的服务器通信,以匹配 TLS 会话主机名。
(BZ#1269855)
curl
不再需要用户指定的公钥
在此次更新之前,
curl
工具需要私有和公共 SSH 密钥(相互包含)用于用户身份验证。因此,如果用户只提供私有 SSH 密钥(使用 scp
实用程序是常见做法),curl
无法验证用户。现在,应用了上游补丁来提高 SSH 用户身份验证,如果只提供了 SSH 私钥,curl
现在也成功验证用户。(BZ#1275769)
libcurl
不再截断长用户名和密码
以前,lib
curl
库中的 URL 解析程序不支持任意密码。因此,用户名和密码超过 255 个字符会被截断。现在,在 libcurl
源代码中应用了一系列上游补丁,现在 libcurl
可以正确处理 URL 中的长用户名和密码。(BZ#1260178)
PycURL
的 pycurl.POSTFIELDS
选项现在可以正常工作
在以前的版本中,
PycURL
接口违反了 libcurl
API,这需要由 CURLOPT_POSTFIELDS
选项传递的字符串保持有效,直到传输完成为止。因此,如果使用 pycurl.POSTFIELDS
选项,libcurl 会在其生命周期之外访问字符串,这会导致未定义的行为。
在 PycURL
源代码中应用了上游补丁,以确保传递给 libcurl
的 CURLOPT_POSTFIELDS
选项的字符串保持足够长,并且上面描述的问题不再发生。(BZ#1153321)
sctp_accept () 在超时事件期间调用时不再会导致死锁
在以前的版本中,当在 4 通道握手后,用户在心跳超时事件期间用户调用 sctp_accept () 时,可能会出现死锁。在这个版本中,这个程序错误已通过提供
assoc->base.sk
指针来解决,以确保 SCTP
正确锁定并解锁侦听套接字。(BZ#1270586)
如果堆栈大小被设置为无限,则不再出现内存不足消息
在此次更新之前,当堆栈大小被设置为无限时,使用
ftp
命令会 放置,从而导致 sysconf (_SC_ARG_MAX)功能返回 -1,
这会导致 malloc ()函数被调用为 0,
并导致出现内存不足信息。
在这个版本中,底层源代码已被改进,以分配合理的最小内存。因此,如果堆栈大小之前设置为无限,则 内存不足
消息不再会出现。(BZ#1304064)
NetworkManager 不再为 dhclient 提供完整的 FQDN (DHCP_HOSTNAME)。
在以前的版本中,NetworkManager 始终仅在 DHCP 请求中发送机器主机名的主机部分。因此,无法强制发送完全限定域名(FQDN)。在这个版本中,用户可以使用 nmcli 配置在 DHCP 请求中发送的 FQDN,并将 ipv4.dhcp-fqdn 设置为所需的 FQDN,并确保启用了 ipv4.dhcp-send-hostname。在配置文件中,可以使用 DHCP_FQDN 变量指定 FQDN。(BZ#1255507)