@@ -68,7 +68,7 @@ impl Connection {
6868 match self {
6969 Connection :: TcpListener ( con) => con. local_addr ( ) ,
7070 Connection :: UdpSocket ( con) => con. local_addr ( ) ,
71- _ => Err ( io :: Error :: new ( io :: ErrorKind :: Other , "oh no!" ) ) ,
71+ Connection :: TcpStream ( con ) => con . local_addr ( ) ,
7272 }
7373 }
7474
@@ -263,8 +263,8 @@ fn socket_accept(vm: &mut VirtualMachine, args: PyFuncArgs) -> PyResult {
263263 None => return Err ( vm. new_type_error ( "" . to_string ( ) ) ) ,
264264 } ;
265265
266- let tcp_stream = match ret {
267- Ok ( ( socket, _addr ) ) => socket,
266+ let ( tcp_stream, addr ) = match ret {
267+ Ok ( ( socket, addr ) ) => ( socket, addr ) ,
268268 _ => return Err ( vm. new_type_error ( "" . to_string ( ) ) ) ,
269269 } ;
270270
@@ -281,7 +281,7 @@ fn socket_accept(vm: &mut VirtualMachine, args: PyFuncArgs) -> PyResult {
281281 zelf. typ ( ) ,
282282 ) ;
283283
284- let elements = RefCell :: new ( vec ! [ sock_obj, vm . get_none ( ) ] ) ;
284+ let elements = RefCell :: new ( vec ! [ sock_obj, get_addr_tuple ( vm , addr ) ? ] ) ;
285285
286286 Ok ( PyObject :: new (
287287 PyObjectPayload :: Sequence { elements } ,
0 commit comments