mirror of
https://github.com/clearml/dropbear
synced 2025-03-06 12:02:51 +00:00
Use MAX_HOST_LEN for TCP forwarding requests (#121)
tcpip-forward request can include hostname, which is later resolved by getaddrinfo() call. Dropbear incorrectly assumes tcpip-forward includes only IP(v4) address. Fix this.
This commit is contained in:
parent
9262ffe861
commit
8d0013bbe0
@ -146,7 +146,7 @@ static int svr_cancelremotetcp() {
|
|||||||
TRACE(("enter cancelremotetcp"))
|
TRACE(("enter cancelremotetcp"))
|
||||||
|
|
||||||
bindaddr = buf_getstring(ses.payload, &addrlen);
|
bindaddr = buf_getstring(ses.payload, &addrlen);
|
||||||
if (addrlen > MAX_IP_LEN) {
|
if (addrlen > MAX_HOST_LEN) {
|
||||||
TRACE(("addr len too long: %d", addrlen))
|
TRACE(("addr len too long: %d", addrlen))
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
@ -181,7 +181,7 @@ static int svr_remotetcpreq(int *allocated_listen_port) {
|
|||||||
TRACE(("enter remotetcpreq"))
|
TRACE(("enter remotetcpreq"))
|
||||||
|
|
||||||
request_addr = buf_getstring(ses.payload, &addrlen);
|
request_addr = buf_getstring(ses.payload, &addrlen);
|
||||||
if (addrlen > MAX_IP_LEN) {
|
if (addrlen > MAX_HOST_LEN) {
|
||||||
TRACE(("addr len too long: %d", addrlen))
|
TRACE(("addr len too long: %d", addrlen))
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user