[Python-checkins] CVS: python/dist/src/Lib ftplib.py,1.54,1.55 httplib.py,1.36,1.37 poplib.py,1.15,1.16 smtplib.py,1.37,1.38 telnetlib.py,1.12,1.13

Martin v. L?wis loewis@users.sourceforge.net
Thu, 26 Jul 2001 06:37:35 -0700


Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv9046

Modified Files:
	ftplib.py httplib.py poplib.py smtplib.py telnetlib.py 
Log Message:
Untabify IPv6 changes.


Index: ftplib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/ftplib.py,v
retrieving revision 1.54
retrieving revision 1.55
diff -C2 -d -r1.54 -r1.55
*** ftplib.py	2001/07/24 20:34:08	1.54
--- ftplib.py	2001/07/26 13:37:33	1.55
***************
*** 110,135 ****
  
      def connect(self, host = '', port = 0):
! 	'''Connect to host.  Arguments are:
! 	- host: hostname to connect to (string, default previous host)
! 	- port: port to connect to (integer, default previous port)'''
! 	if host: self.host = host
! 	if port: self.port = port
! 	self.passiveserver = 0
! 	for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
! 	    af, socktype, proto, canonname, sa = res
! 	    try:
! 		self.sock = socket.socket(af, socktype, proto)
! 		self.sock.connect(sa)
! 	    except socket.error, msg:
! 		self.sock.close()
! 		self.sock = None
! 		continue
! 	    break
! 	if not self.sock:
! 	    raise socket.error, msg
! 	self.af = af
! 	self.file = self.sock.makefile('rb')
! 	self.welcome = self.getresp()
! 	return self.welcome
  
      def getwelcome(self):
--- 110,135 ----
  
      def connect(self, host = '', port = 0):
!         '''Connect to host.  Arguments are:
!         - host: hostname to connect to (string, default previous host)
!         - port: port to connect to (integer, default previous port)'''
!         if host: self.host = host
!         if port: self.port = port
!         self.passiveserver = 0
!         for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 self.sock = socket.socket(af, socktype, proto)
!                 self.sock.connect(sa)
!             except socket.error, msg:
!                 self.sock.close()
!                 self.sock = None
!                 continue
!             break
!         if not self.sock:
!             raise socket.error, msg
!         self.af = af
!         self.file = self.sock.makefile('rb')
!         self.welcome = self.getresp()
!         return self.welcome
  
      def getwelcome(self):
***************
*** 257,301 ****
  
      def sendeprt(self, host, port):
! 	'''Send a EPRT command with the current host and the given port number.'''
! 	af = 0
! 	if self.af == socket.AF_INET:
! 	    af = 1
! 	if self.af == socket.AF_INET6:
! 	    af = 2
! 	if af == 0:
! 	    raise error_proto, 'unsupported address family'
! 	fields = ['', `af`, host, `port`, '']
! 	cmd = 'EPRT ' + string.joinfields(fields, '|')
! 	return self.voidcmd(cmd)
  
      def makeport(self):
! 	'''Create a new socket and send a PORT command for it.'''
! 	for res in socket.getaddrinfo(None, 0, self.af, socket.SOCK_STREAM, 0, socket.AI_PASSIVE):
! 	    af, socktype, proto, canonname, sa = res
! 	    try:
! 		sock = socket.socket(af, socktype, proto)
! 		sock.bind(sa)
! 	    except socket.error, msg:
! 		sock.close()
! 		sock = None
! 		continue
! 	    break
! 	if not sock:
! 	    raise socket.error, msg
! 	sock.listen(1)
! 	port = sock.getsockname()[1] # Get proper port
! 	host = self.sock.getsockname()[0] # Get proper host
! 	if self.af == socket.AF_INET:
! 	    resp = self.sendport(host, port)
! 	else:
! 	    resp = self.sendeprt(host, port)
! 	return sock
  
      def makepasv(self):
! 	if self.af == socket.AF_INET:
! 	    host, port = parse227(self.sendcmd('PASV'))
! 	else:
! 	    host, port = parse229(self.sendcmd('EPSV'), self.sock.getpeername())
! 	return host, port
  
      def ntransfercmd(self, cmd, rest=None):
--- 257,301 ----
  
      def sendeprt(self, host, port):
!         '''Send a EPRT command with the current host and the given port number.'''
!         af = 0
!         if self.af == socket.AF_INET:
!             af = 1
!         if self.af == socket.AF_INET6:
!             af = 2
!         if af == 0:
!             raise error_proto, 'unsupported address family'
!         fields = ['', `af`, host, `port`, '']
!         cmd = 'EPRT ' + string.joinfields(fields, '|')
!         return self.voidcmd(cmd)
  
      def makeport(self):
!         '''Create a new socket and send a PORT command for it.'''
!         for res in socket.getaddrinfo(None, 0, self.af, socket.SOCK_STREAM, 0, socket.AI_PASSIVE):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 sock = socket.socket(af, socktype, proto)
!                 sock.bind(sa)
!             except socket.error, msg:
!                 sock.close()
!                 sock = None
!                 continue
!             break
!         if not sock:
!             raise socket.error, msg
!         sock.listen(1)
!         port = sock.getsockname()[1] # Get proper port
!         host = self.sock.getsockname()[0] # Get proper host
!         if self.af == socket.AF_INET:
!             resp = self.sendport(host, port)
!         else:
!             resp = self.sendeprt(host, port)
!         return sock
  
      def makepasv(self):
!         if self.af == socket.AF_INET:
!             host, port = parse227(self.sendcmd('PASV'))
!         else:
!             host, port = parse229(self.sendcmd('EPSV'), self.sock.getpeername())
!         return host, port
  
      def ntransfercmd(self, cmd, rest=None):
***************
*** 317,323 ****
          if self.passiveserver:
              host, port = self.makepasv()
! 	    af, socktype, proto, canon, sa = socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM)[0]
! 	    conn = socket.socket(af, socktype, proto)
! 	    conn.connect(sa)
              if rest is not None:
                  self.sendcmd("REST %s" % rest)
--- 317,323 ----
          if self.passiveserver:
              host, port = self.makepasv()
!             af, socktype, proto, canon, sa = socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM)[0]
!             conn = socket.socket(af, socktype, proto)
!             conn.connect(sa)
              if rest is not None:
                  self.sendcmd("REST %s" % rest)
***************
*** 576,590 ****
  
      if resp[:3] <> '229':
! 	raise error_reply, resp
      left = string.find(resp, '(')
      if left < 0: raise error_proto, resp
      right = string.find(resp, ')', left + 1)
      if right < 0:
! 	raise error_proto, resp	# should contain '(|||port|)'
      if resp[left + 1] <> resp[right - 1]:
! 	raise error_proto, resp
      parts = string.split(resp[left + 1:right], resp[left+1])
      if len(parts) <> 5:
! 	raise error_proto, resp
      host = peer[0]
      port = string.atoi(parts[3])
--- 576,590 ----
  
      if resp[:3] <> '229':
!         raise error_reply, resp
      left = string.find(resp, '(')
      if left < 0: raise error_proto, resp
      right = string.find(resp, ')', left + 1)
      if right < 0:
!         raise error_proto, resp # should contain '(|||port|)'
      if resp[left + 1] <> resp[right - 1]:
!         raise error_proto, resp
      parts = string.split(resp[left + 1:right], resp[left+1])
      if len(parts) <> 5:
!         raise error_proto, resp
      host = peer[0]
      port = string.atoi(parts[3])

Index: httplib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/httplib.py,v
retrieving revision 1.36
retrieving revision 1.37
diff -C2 -d -r1.36 -r1.37
*** httplib.py	2001/07/24 20:34:08	1.36
--- httplib.py	2001/07/26 13:37:33	1.37
***************
*** 358,377 ****
      def connect(self):
          """Connect to the host and port specified in __init__."""
!  	for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
!  	    af, socktype, proto, canonname, sa = res
!  	    try:
!  		self.sock = socket.socket(af, socktype, proto)
! 		if self.debuglevel > 0:
! 		    print "connect: (%s, %s)" % (self.host, self.port)
! 		self.sock.connect(sa)
! 	    except socket.error, msg:
! 		if self.debuglevel > 0:
! 		    print 'connect fail:', (self.host, self.port)
! 		self.sock.close()
! 		self.sock = None
! 		continue
! 	    break
! 	if not self.sock:
! 	    raise socket.error, msg
  
      def close(self):
--- 358,377 ----
      def connect(self):
          """Connect to the host and port specified in __init__."""
!         for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 self.sock = socket.socket(af, socktype, proto)
!                 if self.debuglevel > 0:
!                     print "connect: (%s, %s)" % (self.host, self.port)
!                 self.sock.connect(sa)
!             except socket.error, msg:
!                 if self.debuglevel > 0:
!                     print 'connect fail:', (self.host, self.port)
!                 self.sock.close()
!                 self.sock = None
!                 continue
!             break
!         if not self.sock:
!             raise socket.error, msg
  
      def close(self):

Index: poplib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/poplib.py,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** poplib.py	2001/07/24 20:34:08	1.15
--- poplib.py	2001/07/26 13:37:33	1.16
***************
*** 74,94 ****
  
      def __init__(self, host, port = POP3_PORT):
! 	self.host = host
! 	self.port = port
! 	for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
! 	    af, socktype, proto, canonname, sa = res
! 	    try:
! 		self.sock = socket.socket(af, socktype, proto)
! 		self.sock.connect(sa)
! 	    except socket.error, msg:
! 		self.sock.close()
! 		self.sock = None
! 		continue
! 	    break
! 	if not self.sock:
! 	    raise socket.error, msg
! 	self.file = self.sock.makefile('rb')
! 	self._debugging = 0
! 	self.welcome = self._getresp()
  
  
--- 74,94 ----
  
      def __init__(self, host, port = POP3_PORT):
!         self.host = host
!         self.port = port
!         for res in socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 self.sock = socket.socket(af, socktype, proto)
!                 self.sock.connect(sa)
!             except socket.error, msg:
!                 self.sock.close()
!                 self.sock = None
!                 continue
!             break
!         if not self.sock:
!             raise socket.error, msg
!         self.file = self.sock.makefile('rb')
!         self._debugging = 0
!         self.welcome = self._getresp()
  
  

Index: smtplib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/smtplib.py,v
retrieving revision 1.37
retrieving revision 1.38
diff -C2 -d -r1.37 -r1.38
*** smtplib.py	2001/07/24 20:34:08	1.37
--- smtplib.py	2001/07/26 13:37:33	1.38
***************
*** 209,213 ****
  
          """
! 	if not port and (host.find(':') == host.rfind(':')):
              i = host.rfind(':')
              if i >= 0:
--- 209,213 ----
  
          """
!         if not port and (host.find(':') == host.rfind(':')):
              i = host.rfind(':')
              if i >= 0:
***************
*** 217,235 ****
                      raise socket.error, "nonnumeric port"
          if not port: port = SMTP_PORT
!  	if self.debuglevel > 0: print 'connect:', (host, port)
!  	for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
!  	    af, socktype, proto, canonname, sa = res
!  	    try:
!  		self.sock = socket.socket(af, socktype, proto)
!  		if self.debuglevel > 0: print 'connect:', (host, port)
!  		self.sock.connect(sa)
!  	    except socket.error, msg:
!  		if self.debuglevel > 0: print 'connect fail:', (host, port)
!  		self.sock.close()
!  		self.sock = None
!  		continue
!  	    break
! 	if not self.sock:
!  	    raise socket.error, msg
          (code, msg) = self.getreply()
          if self.debuglevel > 0: print "connect:", msg
--- 217,235 ----
                      raise socket.error, "nonnumeric port"
          if not port: port = SMTP_PORT
!         if self.debuglevel > 0: print 'connect:', (host, port)
!         for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 self.sock = socket.socket(af, socktype, proto)
!                 if self.debuglevel > 0: print 'connect:', (host, port)
!                 self.sock.connect(sa)
!             except socket.error, msg:
!                 if self.debuglevel > 0: print 'connect fail:', (host, port)
!                 self.sock.close()
!                 self.sock = None
!                 continue
!             break
!         if not self.sock:
!             raise socket.error, msg
          (code, msg) = self.getreply()
          if self.debuglevel > 0: print "connect:", msg

Index: telnetlib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/telnetlib.py,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** telnetlib.py	2001/07/24 20:34:08	1.12
--- telnetlib.py	2001/07/26 13:37:33	1.13
***************
*** 137,152 ****
          self.host = host
          self.port = port
! 	for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
! 	    af, socktype, proto, canonname, sa = res
! 	    try:
! 		self.sock = socket.socket(af, socktype, proto)
! 		self.sock.connect(sa)
! 	    except socket.error, msg:
! 		self.sock.close()
! 		self.sock = None
! 		continue
! 	    break
          if not self.sock:
! 	    raise socket.error, msg
  
      def __del__(self):
--- 137,152 ----
          self.host = host
          self.port = port
!         for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
!             af, socktype, proto, canonname, sa = res
!             try:
!                 self.sock = socket.socket(af, socktype, proto)
!                 self.sock.connect(sa)
!             except socket.error, msg:
!                 self.sock.close()
!                 self.sock = None
!                 continue
!             break
          if not self.sock:
!             raise socket.error, msg
  
      def __del__(self):