Closed msalle closed 3 years ago
Hi @fscheiner just to check: did you manage to runtime test my patches? That would still be good...
No, not before merging it, I relied on your "testing" in gdb. But I will test the resulting uberftp
with my IPv6 enabled GridFTP service.
@msalle
Some results from testing uberftp
with the patch from this PR:
Using "delayed passive" for an ls
:
## w/IPv6 (same for IPv4 but with different FQDN)
UberFTP (2.9 Beta)> open gridftp-5-ipv6.domain.tld
220 gridftp-5-ipv6.domain.tld GridFTP Server 13.20 (gcc64, 1566483868-0) [Grid Community Toolkit 6.2] ready.
230 User johndoe logged in.
UberFTP (2.9 Beta)> debug
Debug level set at 2 (ON)
UberFTP (2.9 Beta)> quote "OPTS PASV AllowDelayed=1"
---> Sending to gridftp-5-ipv6.domain.tld:
OPTS PASV AllowDelayed=1
200 OPTS Command Successful.
200 OPTS Command Successful.
UberFTP (2.9 Beta)> ls
---> Sending to gridftp-5-ipv6.domain.tld:
MODE S
200 Mode set to S.
---> Sending to gridftp-5-ipv6.domain.tld:
DCAU A
200 DCAU A.
---> Sending to gridftp-5-ipv6.domain.tld:
PBSZ 1135616
200 PBSZ=1135616
---> Sending to gridftp-5-ipv6.domain.tld:
PROT C
200 Protection level set to C.
---> Sending to gridftp-5-ipv6.domain.tld:
TYPE I
200 Type set to I.
---> Sending to gridftp-5-ipv6.domain.tld:
EPSV
200 Passive delayed.
No addresses found in EPSV response:
200 Passive delayed.
UberFTP (2.9 Beta)>
...so uberftp
aborts the command after "processing" the 200 Passive delayed.
response to EPSV
w/o trying to send a LIST
command.
Striped transfer: I actually don't know, how to initiate a striped transfer from within uberftp
w/o using [l]quote
commands - if at all possible - and these would actually bypass uberftp
's internal operation.
Several improvements and fixes in the RFC2428 format parsing code. Among others prevent parsing the input string beyond the end (which caused several potential SEGV). Also add comments and cleanup the code structure for readability.
Fixes https://github.com/gridcf/UberFTP/issues/11