[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#546659: DeprecationWarning: socket.ssl() is deprecated



Hi all,

On Thu, Aug 5, 2010 at 21:24, Peter Samuelson <peter@p12n.org> wrote:
>
> tags 546659 patch
> thanks
>
> Nicolas's patch assumes python 2.6.  That's fine for Debian, but maybe
> not for upstream.  This one seems to work.
>
> Peter
>
>
> --- imaplibutil.py
> +++ imaplibutil.py
> @@ -169,7 +169,10 @@
>         if last_error != 0:
>             # FIXME
>             raise socket.error(last_error)
> -        self.sslobj = socket.ssl(self.sock, self.keyfile, self.certfile)
> +        if (sys.version_info[0] == 2 and sys.version_info[1] >= 6) or sys.version_info[0] >= 3:
> +            self.sslobj = ssl.wrap_socket(self.sock, self.keyfile, self.certfile)
> +        else:
> +            self.sslobj = socket.ssl(self.sock, self.keyfile, self.certfile)
>         self.sslobj = sslwrapper(self.sslobj)
>
>  mustquote = re.compile(r"[^\w!#$%&'+,.:;<=>?^`|~-]")

A nicer way to do that is via tuple comparison (not correctly indented
only mocking):

if sys.version_info[0:2] < (2,6)
    self.sslobj = socket.ssl(self.sock, self.keyfile, self.certfile)
else:
    self.sslobj = ssl.wrap_socket(self.sock, self.keyfile, self.certfile)

Regards,
-- 
Sandro Tosi (aka morph, morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi



Reply to: