dpvs icon indicating copy to clipboard operation
dpvs copied to clipboard

1.9.6大家都能正常编译过去吗?

Open liujian-930212 opened this issue 1 year ago • 1 comments

proxy_proto_insert函数中,有char ppv1buf[108], tbuf1[64], tbuf2[64];三个变量。然后下面有语句sprintf(ppv1buf, "PROXY TCP6 %s %s %d %d\r\n", tbuf1, tbuf2, ntohs(ppinfo->addr.ip6.src_port), ntohs(ppinfo->addr.ip6.dst_port));编译器会直接报出有溢出风险。由于默认有-Werror选项,会直接导致编译失败。

暂时我把ppv1buf扩大到256个字节,可以编译通过。问下这个变量为啥要定在108个字节?是不是该用snprintf或者扩大他的容量?

liujian-930212 avatar Apr 12 '24 03:04 liujian-930212

这个地方缺失有漏洞,我们后面修复下。 ppv1buf 的长度设置为108,是因为 proxy protocol v1 的数据长度最大是107字节。

ywc689 avatar Apr 12 '24 05:04 ywc689