From daa643205f76da5cb3e899aba2a047fc2c6f1994 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 4 Feb 2018 18:49:31 +0100 Subject: [PATCH] ftpgetput: preparations for ESPV support, no code changes Signed-off-by: Denys Vlasenko --- networking/ftpgetput.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/networking/ftpgetput.c b/networking/ftpgetput.c index e866a7754..3f98e07f3 100644 --- a/networking/ftpgetput.c +++ b/networking/ftpgetput.c @@ -174,24 +174,25 @@ For example, vsftp happily answers TODO2: need to stop ignoring IP address in PASV response. */ + //if (ftpcmd("EPSV", NULL) != 229) { + if (ftpcmd("PASV", NULL) != 227) { + ftp_die("PASV"); + } - if (ftpcmd("PASV", NULL) != 227) { - ftp_die("PASV"); - } - - /* Response is "NNN garbageN1,N2,N3,N4,P1,P2[)garbage] - * Server's IP is N1.N2.N3.N4 (we ignore it) - * Server's port for data connection is P1*256+P2 */ - buf_ptr = strrchr(buf, ')'); - if (buf_ptr) *buf_ptr = '\0'; + /* Response is "NNN garbageN1,N2,N3,N4,P1,P2[)garbage] + * Server's IP is N1.N2.N3.N4 (we ignore it) + * Server's port for data connection is P1*256+P2 */ + buf_ptr = strrchr(buf, ')'); + if (buf_ptr) *buf_ptr = '\0'; - buf_ptr = strrchr(buf, ','); - *buf_ptr = '\0'; - port_num = xatoul_range(buf_ptr + 1, 0, 255); + buf_ptr = strrchr(buf, ','); + *buf_ptr = '\0'; + port_num = xatoul_range(buf_ptr + 1, 0, 255); - buf_ptr = strrchr(buf, ','); - *buf_ptr = '\0'; - port_num += xatoul_range(buf_ptr + 1, 0, 255) * 256; + buf_ptr = strrchr(buf, ','); + *buf_ptr = '\0'; + port_num += xatoul_range(buf_ptr + 1, 0, 255) * 256; + //} set_nport(&lsa->u.sa, htons(port_num)); return xconnect_stream(lsa); -- 2.25.1