[issue28213] asyncio SSLProtocol _app_transport is private

2016-10-21 Thread Yury Selivanov

Yury Selivanov added the comment:

Closing this one. I don't think we want to expose/document _app_transport.

--
resolution:  -> wont fix
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28213] asyncio SSLProtocol _app_transport is private

2016-09-20 Thread Andrew Svetlov

Andrew Svetlov added the comment:

-1, agree with Yury.
As an option it's possible to wrap `sslproto.SSLProtocol` by custom derived 
class which overrides `connection_made()` for storing a transport somewhere.
The solution looks like sub-optimal but it's backward-compatible.
The other problem is: `sslproto` is a very private module for working with SSL 
if `ssl.MemoryBIO` is available.
I believe that third-party code shouldn't rely on `sslproto.SSLProtocol` and 
even on `asyncio.sslproto` existence.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28213] asyncio SSLProtocol _app_transport is private

2016-09-20 Thread Yury Selivanov

Yury Selivanov added the comment:

-1 on exposing app_protocol. It's an implementation detail, starttls should be 
implemented in asyncio (and while it's not, it's ok to use '_app_protocol'.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28213] asyncio SSLProtocol _app_transport is private

2016-09-20 Thread Guido van Rossum

Changes by Guido van Rossum :


--
nosy: +asvetlov

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28213] asyncio SSLProtocol _app_transport is private

2016-09-20 Thread Константин Волков

New submission from Константин Волков:

Seems that this field must not be private(or must have read-only property) as 
it is supposed to use outside of class.

I catched that, when implemented STARTTLS smtp process, when you must start SSL 
connection over existing socket connection. Currently it is not hard, its easy 
to add SSL layer as loop do:

self._tls_protocol = sslproto.SSLProtocol()
socket_transport = self.transport
socket_transport._protocol = self._tls_protocol
self.transport = self._tls_protocol._app_transport
self._tls_protocol.connection_made(socket_transport)

But here you must access to private property "app_transport". It must be public 
because its purpose to public "result" of SSL layer implementation. 

>From class BaseSelectorEventLoop:

def _make_ssl_transport(...):
...
return ssl_protocol._app_transport

--
components: asyncio
messages: 277020
nosy: gvanrossum, yselivanov, Константин Волков
priority: normal
severity: normal
status: open
title: asyncio SSLProtocol _app_transport is private
versions: Python 3.5, Python 3.6

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com