]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Patch by Charles G. Waldman to add optional user and password
authorGuido van Rossum <guido@python.org>
Mon, 20 Oct 1997 23:29:44 +0000 (23:29 +0000)
committerGuido van Rossum <guido@python.org>
Mon, 20 Oct 1997 23:29:44 +0000 (23:29 +0000)
arguments to NNTP.__init__(), for nntp servers that need them.

Lib/nntplib.py

index a5e023430a3c11ae566d57c719a4c719e1ed1343..a266cbd08414314c807267f979e99a80b6b57e78 100644 (file)
@@ -63,7 +63,7 @@ class NNTP:
        # - host: hostname to connect to
        # - port: port to connect to (default the standard NNTP port)
 
-       def __init__(self, host, port = NNTP_PORT):
+       def __init__(self, host, port = NNTP_PORT, user=None, password=None):
                self.host = host
                self.port = port
                self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
@@ -71,6 +71,15 @@ class NNTP:
                self.file = self.sock.makefile('rb')
                self.debugging = 0
                self.welcome = self.getresp()
+               if user:
+                   resp = self.shortcmd('authinfo user '+user)
+                   if resp[:3] == '381':
+                       if not password:
+                           raise error_reply, resp
+                       else:
+                           resp = self.shortcmd('authinfo pass '+password)
+                           if resp[:3] != '281':
+                               raise error_perm, resp
 
        # Get the welcome message from the server
        # (this is read and squirreled away by __init__()).