Commit Graph

169 Commits

Author SHA1 Message Date
Neal Norwitz 7ce734cd72 Use string methods where possible, and remove import string 2002-05-31 14:13:04 +00:00
Raymond Hettinger e874fc304e Closes SF patch 553277. Per GvR, reverting to original patch -- the way to
test if 'callable' has not been supplied is to test for None instead of
False.  The previous correction to 'if callable()' was wrong because an unusable
callback would be ignored rather than raising an exception.
2002-05-12 05:53:51 +00:00
Martin v. Löwis a8dd0941b8 Patch #553277: Accept callbacks that are callable, not callbacks that are true. 2002-05-08 08:56:33 +00:00
Martin v. Löwis b5255114d1 Access the exception argument to see whether it starts with '500'.
Fixes #527855.
2002-03-10 15:59:58 +00:00
Martin v. Löwis e12454f44a The Grande 'sendall()' patch, copied from release21-maint. Fixes #516715.
Replaces calls to socket.send() (which isn't guaranteed to send all data)
with the new socket.sendall() method.
2002-02-16 23:06:19 +00:00
Tim Peters e4418609f7 Whitespace normalization. 2002-02-16 07:34:19 +00:00
Guido van Rossum 24a643416d Update the docstring too. :-) 2001-12-28 20:54:55 +00:00
Guido van Rossum c33e077838 SF patch #497420 (Eduardo Pérez): ftplib: ftp anonymous password
Instead of sending the real user and host, use "anonymous@" (i.e. no
host name at all!) as the default anonymous FTP password.  This avoids
privacy violations.
2001-12-28 20:54:28 +00:00
Guido van Rossum 2826fade49 Don't set passiveserver to 0 in connect(). See SF bug #495693.
This should definitely be backported to 2.2.1.  I'll leave it to Jack
to decide whether he wants to fix this in MacPython 2.2.
2001-12-23 13:54:19 +00:00
Guido van Rossum 1f74cb3575 Oops. Catching OverflowError from int() doesn't help, since it raises
ValueError on too-large inputs.
2001-10-17 17:21:47 +00:00
Guido van Rossum b6aca6afe2 Fix SF bug #459767: ftplib fails with files > 2GB
size(), parse150(): try int() first, catch OverflowError, fall back to
long().
2001-10-16 19:45:52 +00:00
Martin v. Löwis 322c0d187d Only close sockets if they have been created. Reported by Blake Winton. 2001-10-07 08:53:32 +00:00
Guido van Rossum 70297d3bd4 Change the 227 response parser to use a more liberal regular
expression.  This is needed for certain servers that (in violation of
the standard) don't return the parentheses in the response.

This fixes SF bug #441712 by Henrik Weber (not exactly using his
patch).
2001-08-17 17:24:29 +00:00
Martin v. Löwis 2ad2569c72 Initialize msg to avoid unbound locals. 2001-07-31 08:40:21 +00:00
Martin v. Löwis 4eb5940a4d Untabify IPv6 changes. 2001-07-26 13:37:33 +00:00
Martin v. Löwis a43c2f845e Patch #401196: Use getaddrinfo and AF_INET6 in TCP servers and clients. 2001-07-24 20:34:08 +00:00
Jeremy Hylton 0e8468c8ba remove global decl about unused variable 2001-04-09 04:31:50 +00:00
Fred Drake 9c98a428ef Move some constant initialization from FTP.__init__() and FTP.connect()
to the class namespace.

Allow FTP.close() to be called more than once without tossing cookies.
(This seems to be a fairly common idiom for .close() methods, so let's
try to be consistent.)
2001-02-28 21:46:37 +00:00
Guido van Rossum 4ac83474a3 Provide a default for the blocksize arg of storbinary().
SF patch #103517 by mfx.
2001-02-15 13:50:36 +00:00
Eric S. Raymond c95bf69fce String method conversion. 2001-02-09 10:06:47 +00:00
Skip Montanaro eccd02a40d more __all__ updates 2001-01-20 23:34:12 +00:00
Guido van Rossum e6ccf3ab96 Default to passive mode. See SF bug #126851.
This is slightly controversial, but after reading the argumentation in
the bug tracker for and against, I believe this is the right solution.
Let me know if it breaks for you, and how.
2001-01-15 16:32:49 +00:00
Tim Peters 88869f9787 Whitespace normalization. 2001-01-14 23:36:06 +00:00
Fred Drake 8152d32375 Update the code to better reflect recommended style:
Use != instead of <> since <> is documented as "obsolescent".
Use "is" and "is not" when comparing with None or type objects.
2000-12-12 23:20:45 +00:00
Barry Warsaw 100d81e8e3 Added support for RFC 959's REST command (restart), closing SF patch
#101187, which some modifications.  Specifically,

ntransfercmd(), transfercmd(), and retrbinary() all grow an optional
`rest' argument, which if not None, is used as the argument to an FTP
REST comman dbefore the socket is returned.  Differences from the SF
patch:

- always compare against None with `is' or `is not' instead of == or !=

- no parens around conditional

- RFC 959 defines the argument to REST is a string containing any
  ASCII characters in the range [33..126].  Therefore, we use the %s
  format character instead of %f or %d as suggested in the patch's
  comments.  Note that we do /not/ sanity checkthe contents of the
  rest argument (but we'll document this in the library reference
  manual).
2000-09-01 06:09:23 +00:00
Fred Drake 227b120468 Convert some old-style string exceptions to class exceptions. 2000-08-17 05:06:49 +00:00
Peter Schneider-Kamp 2d2785aad1 updated occurences of fqdn algorithm (closes patch #101197) 2000-08-16 20:30:21 +00:00
Guido van Rossum 93a7c0fe6b Fredrik Lundh:
This fixes a bunch of socket.connect(host, post) calls.  Note that I
haven't tested all modules -- I don't have enough servers here...
2000-03-28 21:45:46 +00:00
Guido van Rossum 98d9fd3e68 Simple changes by Gerrit Holl - move author acknowledgements out of
docstrings into comments.
2000-02-28 15:12:25 +00:00
Guido van Rossum 4b8c6eaf8b Actually, the previous batch's comment should have been different;
*this* set of patches is Ka-Ping's final sweep:

The attached patches update the standard library so that all modules
have docstrings beginning with one-line summaries.

A new docstring was added to formatter.  The docstring for os.py
was updated to mention nt, os2, ce in addition to posix, dos, mac.
2000-02-04 15:39:30 +00:00
Guido van Rossum 1ebcf6aabb Patches by Michael Reilly to correctly deal with ftp URLs of the form
ftp://user@host//root/path: the double slash in the pathname means to
go to the root directory even if the initial directory isn't the root.
1999-08-18 21:51:10 +00:00
Fred Drake d5f173bf1f FTP.dir(): Fix typo in docstring. 1999-07-07 13:36:59 +00:00
Guido van Rossum c822a453bd Add warning to Netrc's docstring that it is obsolete -- use the netrc
module instead.  (The main advantage of the latter is that it comes
with documentation.)
1998-12-22 16:49:16 +00:00
Guido van Rossum c6769c54f4 Typo discovered by Just. 1998-12-21 16:26:31 +00:00
Guido van Rossum 6bbd1d0f0e According to Robin Dunn, at least one FTP server returns 200 instead
of 250 on a successful delete.
1998-07-02 20:41:20 +00:00
Fred Drake 9291d271fb parse150(): Simplify RE used to parse the message a little, taking advantage
of using re instead of regex.
1998-04-27 14:39:44 +00:00
Guido van Rossum 8ca842066c A few lines were indented using spaces instead of tabs -- fix them. 1998-03-26 20:56:10 +00:00
Guido van Rossum 9824509d3e Add rmd() (remove directory command); fix comment in parse257.
In login(), force passwd and acct to '' when they are None (this can
happen in the test program!).
1998-02-19 21:15:44 +00:00
Guido van Rossum ab76af3d65 Provide default for blocksize on retrbinary (Skip Montanaro). 1997-12-03 19:34:14 +00:00
Guido van Rossum acfb82a530 Use re instead of regex. Also remove bogus return statement from __init__(). 1997-10-22 20:49:52 +00:00
Guido van Rossum 2f3941d743 Return the error code from most commands, rather than swallowing it.
Adapted the example (lying slightly about the string printed by
login()).
1997-10-07 14:49:56 +00:00
Fred Drake 475d51d7b2 Wrapped up the ~/.netrc support. This is basically just the changes Guido &
I discussed to the original version way-back-when.
1997-06-24 22:02:54 +00:00
Guido van Rossum 56d1e3a517 Added Fred Drake's netrc parser class. 1997-03-14 04:16:54 +00:00
Fred Drake 4de02d9722 (ftplib.py): Added parse150() function and FTP.ntransfercmd(). This allows
access to the expected size of a transfer when available.
1997-01-10 18:26:09 +00:00
Guido van Rossum 24611f80e8 Always open file objects in binary mode. 1996-09-30 22:02:50 +00:00
Guido van Rossum d2560b0f2e Docstringified and PASV support by Siebren (including new ftpcp() function). 1996-05-28 23:41:25 +00:00
Jack Jansen 2bb57b81f2 Changed makefile() args from r/w to rb/wb, for non-unix compatability. 1996-02-14 16:06:24 +00:00
Guido van Rossum 0eaa74bf8d add acct() method to send new account name 1996-01-25 18:37:21 +00:00
Guido van Rossum a61bdeb8a9 add delete() method to ftp object 1995-10-11 17:36:31 +00:00
Guido van Rossum c0e68d1e41 actualized example, catch EOFError, print retrieved lines if debugging>2 1995-09-30 16:51:50 +00:00
Guido van Rossum 221ec0b97a new sendport() interface; add test() program call 1995-08-04 04:39:30 +00:00
Guido van Rossum 303c179b92 add bind(0,''); better way of guessing our fully qualified hostname 1995-06-20 17:21:42 +00:00
Guido van Rossum ebaf104665 don't show print passwords in debug output 1995-05-05 15:54:14 +00:00
Jack Jansen 2db6bfcd1d For anonymous ftp, make sure local hostname is fully qualified. 1995-05-04 15:02:18 +00:00
Jack Jansen 40b9835e98 Always use 'anonymous' if os.environ doesn't exist 1995-01-19 12:24:45 +00:00
Guido van Rossum b6775db241 Merge alpha100 branch back to main trunk 1994-08-01 11:34:53 +00:00
Guido van Rossum 7bc817d5ba * Mass change: get rid of all init() methods, in favor of __init__()
constructors.  There is no backward compatibility.  Not everything has
  been tested.
* aiff.{py,doc}: deleted in favor of aifc.py (which contains its docs as
  comments)
1993-12-17 15:25:27 +00:00
Guido van Rossum 79c85f1778 * wdbframewin.py (re_eval): set __privileged__ in globals so private
variables can still be seen by the debugger
* ftplib.py (retrlines): args should be *args.
* ChangeLog: entries for Sjoerd's addition sunau.py and changes to aiff.py
* test_md5.py: test program for built-in md5 module
1993-12-14 15:54:01 +00:00
Guido van Rossum ae3b3a33d8 * test_*.py: new lambda syntax (also affects tests for filter, map,
reduce)
* ftplib.py: added default callback for retrlines; added dir() method
* ftplib.py: don't return self in self.connect(); added hack so that if
  'CDUP' is not understood, 'CWD ..' is tried.
* ftplib.py: second method called init() should have been called
  connect(); if __init__ sees more than one argument, it will also try to
  login().
1993-11-30 13:43:54 +00:00
Guido van Rossum e65cce5eec * string.py: added rindex(), rfind(); changed index() to interpret
negative start indices starting from the right.
* ftplib.py: debug() -> set_debuglevel(); change demo to use __init__().
* os.py: added execl, execlp, and execvp.
* lambda.py: removed (now that we have built-in map, reduce, bagof, lambda)
* test_b{1,2}.py, testall.out: added tests for bagof, lambda, map, reduce
* commands.py: use os, not posix
* test_grammar.py: make it easy to disable non-portable int overflow tests
* dis.py: don't abuse range()
1993-11-08 15:05:21 +00:00
Guido van Rossum df5638662d * posixpath.py: Fix border cases in normpath ('/foo/..' should return '/')
* ftplib.py: made cwd() use 'CDUP' when dirname is '..'
* FL.py: added new constant FL_PLACE_FULLSCREEN
1993-07-06 15:19:36 +00:00
Guido van Rossum 52fc1f607e * calendar.py: minor cleanups
* ftplib.py: support __init__ with optional host, port args
* aifc.py: ensure header is written on close even when no data is written
1993-06-17 12:38:10 +00:00
Guido van Rossum 17ed1ae163 * toaiff.py: import whatsound instead of sndhdr
* sndhdr.py: renamed to whatsound.py; use new aifc module for AIFF/AIFC
* ftplib.py: added close() (closes without sending QUIT command)
* aifc.py: documented close()
1993-06-01 13:21:04 +00:00
Guido van Rossum d316607732 * ftplib.py: added abort() command (sends oob data).
* Several modules: change "class C(): ..." to "class C: ...".
* flp.py: support for frozen forms.
* Added string.find() which is like index but returns -1 if not found
1993-05-24 14:16:22 +00:00
Guido van Rossum 02cf582e73 Added cwd() 1993-05-17 08:00:02 +00:00
Guido van Rossum 21974798ce Added all_errors, list of all possible exceptions. 1992-11-06 13:34:17 +00:00
Guido van Rossum c68a40183b Use getsockname() if it exists 1992-11-05 23:01:42 +00:00
Guido van Rossum c567c60135 Added much functionality, changed some names (errors, login). 1992-11-05 22:22:37 +00:00
Guido van Rossum 1115ab2a74 Initial revision 1992-11-04 15:51:30 +00:00