(self, ssl_context, *,
server_side=False,
server_hostname=None)
| 130 | return buf |
| 131 | |
| 132 | def start_tls(self, ssl_context, *, |
| 133 | server_side=False, |
| 134 | server_hostname=None): |
| 135 | |
| 136 | ssl_sock = ssl_context.wrap_socket( |
| 137 | self.__sock, server_side=server_side, |
| 138 | server_hostname=server_hostname, |
| 139 | do_handshake_on_connect=False) |
| 140 | |
| 141 | try: |
| 142 | ssl_sock.do_handshake() |
| 143 | except: |
| 144 | ssl_sock.close() |
| 145 | raise |
| 146 | finally: |
| 147 | self.__sock.close() |
| 148 | |
| 149 | self.__sock = ssl_sock |
| 150 | |
| 151 | def __getattr__(self, name): |
| 152 | return getattr(self.__sock, name) |