Open lusinking opened 7 years ago
ngx_tcp_core_module.c文件ngx_tcp_core_listen函数中488行会判断listen端口号是否重复
if (port != u.port)
但是比较符右边的port是由配置端口号字符串强制转换而来,和机器字节序相同,而左边的端口号是从sockaddr_in结构体中读出,是网络字节序,对于机器字节序和网络字节序不同的服务器,会出现判断错误的情况,例如:4660和13345两个端口会被认为重复,就是因为这两个端口的字节序正好相反
看一下是不是有特殊背景还是一个bug?
ngx_tcp_core_module.c文件ngx_tcp_core_listen函数中488行会判断listen端口号是否重复
if (port != u.port)
但是比较符右边的port是由配置端口号字符串强制转换而来,和机器字节序相同,而左边的端口号是从sockaddr_in结构体中读出,是网络字节序,对于机器字节序和网络字节序不同的服务器,会出现判断错误的情况,例如:4660和13345两个端口会被认为重复,就是因为这两个端口的字节序正好相反
看一下是不是有特殊背景还是一个bug?