It seems like cisco's ftp server is a tad buggy. After a number of
transfers, it decides that it will no longer play PASV nicely with
the other children. Unfortunately, wget doesn't handle this gracefully
at all - it tries to drop back to PORT mode - instead it should note
that the passive failed, and reconnect and continue from where it's
up to.

sample command:

wget --debug --passive --mirror -np ftp://ftp.cisco.com/pub/mibs/supportlists/

snippets from --debug output follow.

Thanks,
Anthony

--03:13:40--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c4700/.ls_allowed/
           => `ftp.cisco.com/pub/mibs/supportlists/c4700/.ls_allowed/.listing'
==> CWD /pub/mibs/supportlists/c4700/.ls_allowed ... 
--> CWD /pub/mibs/supportlists/c4700/.ls_allowed

250 CWD command successful.
done.
==> PASV ... 
--> PASV

227 Entering Passive Mode (198,133,219,27,202,167)
Will try connecting to 198.133.219.27:51879.
Created fd 6.
done.    ==> LIST ... 
--> LIST

150 Opening BINARY mode data connection for /bin/ls.
done.

    0K ->

Closing fd 6
226 Transfer complete.
03:13:41 (120.12 KB/s) - 
`ftp.cisco.com/pub/mibs/supportlists/c4700/.ls_allowed/.listing' saved [123]

total 8

drwxrwxr-x   2 ftpadmin 1515         4096 Mar 28  1996 .

DIRECTORY; perms 775; month: Mar; day: 28; year: 1996 (no tm); 
Ignoring `.' and `..'; 
Skipping.
drwxrwxr-x   3 ftpadmin ftpguest     4096 Apr 19  2000 ..

DIRECTORY; perms 775; month: Apr; day: 19; year: 2000 (no tm); 
Ignoring `.' and `..'; 
Skipping.
--03:13:41--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c4700/.ls_allowed/
           => `ftp.cisco.com/pub/mibs/supportlists/accessProEC/.ls_allowed/index.html'
==> CWD not required.
==> PASV ... 
--> PASV

227 Entering Passive Mode (198,133,219,27,202,168)
Will try connecting to 198.133.219.27:51880.
Created fd 6.
done.    ==> RETR  ... 
--> RETR 

500 'RETR ': command not understood.

No such file `'.

Closing fd 6
Checking for ftp.cisco.com.
ftp.cisco.com was already used, by that name.
Using `ftp.cisco.com/pub/mibs/supportlists/c6200/.listing' as listing tmp file.
--03:13:42--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c6200/
           => `ftp.cisco.com/pub/mibs/supportlists/c6200/.listing'
==> CWD /pub/mibs/supportlists/c6200 ... 
--> CWD /pub/mibs/supportlists/c6200

250 CWD command successful.
done.
==> PASV ... 
--> PASV

227 Entering Passive Mode (198,133,219,27,202,170)
Will try connecting to 198.133.219.27:51882.
Created fd 6.
done.    ==> LIST ... 
--> LIST

550 /bin/ls -la : Too many open files.

No such file or directory `.'.

Closing fd 6
--03:13:42--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c6200/
           => `ftp.cisco.com/pub/mibs/supportlists/accessProEC/.ls_allowed/index.html'
==> CWD not required.
==> PASV ... 
--> PASV

227 Entering Passive Mode (198,133,219,27,202,172)
Will try connecting to 198.133.219.27:51884.
Created fd 6.
done.    ==> RETR  ... 
--> RETR 

500 'RETR ': command not understood.

No such file `'.

Closing fd 6
Checking for ftp.cisco.com.
ftp.cisco.com was already used, by that name.
Using `ftp.cisco.com/pub/mibs/supportlists/c6400nrp/.listing' as listing tmp file.
--03:13:43--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c6400nrp/
           => `ftp.cisco.com/pub/mibs/supportlists/c6400nrp/.listing'
==> CWD /pub/mibs/supportlists/c6400nrp ... 
--> CWD /pub/mibs/supportlists/c6400nrp

250 CWD command successful.
done.
==> PASV ... 
--> PASV

425 Can't open passive connection: Too many open files.

Cannot initiate PASV transfer.
==> PORT ... Master socket fd 6 bound.

--> PORT 192,168,41,2,249,147

200 PORT command successful.
done.    ==> LIST ... 
--> LIST

550 /bin/ls -la : Too many open files.

No such file or directory `.'.

Closing fd 6
--03:13:44--  ftp://ftp.cisco.com/%2Fpub/mibs/supportlists/c6400nrp/
           => `ftp.cisco.com/pub/mibs/supportlists/accessProEC/.ls_allowed/index.html'
==> CWD not required.
==> PASV ... 
--> PASV

425 Can't open passive connection: Too many open files.

Cannot initiate PASV transfer.
==> PORT ... Master socket fd 6 bound.

--> PORT 192,168,41,2,249,148

200 PORT command successful.
done.    ==> RETR  ... 
--> RETR 

500 'RETR ': command not understood.

No such file `'.

Closing fd 6

Reply via email to