SockAddr::SysAddr sa = addr.to_sys();
check_sys_connect_error(::connect(priv->handle, reinterpret_cast<const sockaddr *>(&sa.addr), sa.size));
- delete peer_addr;
- peer_addr = addr.copy();
+ peer_addr.reset(addr.copy());
- delete local_addr;
SockAddr::SysAddr lsa;
getsockname(priv->handle, reinterpret_cast<sockaddr *>(&lsa.addr), &lsa.size);
- local_addr = SockAddr::new_from_sys(lsa);
+ local_addr.reset(SockAddr::new_from_sys(lsa));
connected = true;