http://www.perlmonks.org?node_id=182397


in reply to Re: Re: Re: Re: Net::FTP and
in thread Net::FTP and 'Illegal PORT command'

What confuses me is that setting Passive and using pasv() result in different commands beeing sent.
When using pasv(), the PORT command is still beeing sent:

debug using Passive=>1:
Net::FTP=GLOB(0x829328c)<<< 230 Logged in anonymously. Net::FTP=GLOB(0x829328c)>>> CWD /z2/privacy/crypto/etext^M Net::FTP=GLOB(0x829328c)<<< 250 "/z2/privacy/crypto/etext" is new cwd. Net::FTP=GLOB(0x829328c)>>> PASV^M Net::FTP=GLOB(0x829328c)<<< 227 Entering Passive Mode (192,35,244,50,2 +32,18) Net::FTP=GLOB(0x829328c)>>> RETR ug.ps.gz^M Net::FTP=GLOB(0x829328c)<<< 150 Data connection accepted from 62.116.6 +2.82:44135; transfer starting for ug.ps.gz (73235 bytes). Net::FTP=GLOB(0x829328c)<<< 226 Transfer completed.

Debug using pasv():
Net::FTP=GLOB(0x8293280)<<< 230 Logged in anonymously. Net::FTP=GLOB(0x8293280)>>> PASV^M Net::FTP=GLOB(0x8293280)<<< 227 Entering Passive Mode (192,35,244,50,2 +32,0) Net::FTP=GLOB(0x8293280)>>> CWD /z2/privacy/crypto/etext^M Net::FTP=GLOB(0x8293280)<<< 250 "/z2/privacy/crypto/etext" is new cwd.
Net::FTP=GLOB(0x8293280)>>> PORT 62,116,62,82,172,96^M Net::FTP=GLOB(0x8293280)<<< 200 PORT command successful.
Net::FTP=GLOB(0x8293280)>>> RETR ug.ps.gz^M Net::FTP=GLOB(0x8293280)<<< 150 Opening ASCII mode data connection for + ug.ps.gz (73235 bytes). Net::FTP=GLOB(0x8293280)<<< 226 Transfer completed.

---- amphiplex

Edit by tye to change PRE tags to CODE tags