tor-proto: channel `Reactor::run` is not cancellation safe
VerifiedChannel::finish returns the tuple (Arc<Channel>, Reactor). I think it's expected that the calling code will run Reactor::run() in a new task, but it's not guaranteed that the returned future will be run in a task, run to completion (for example using futures::future::Abortable), not panic, or even run at all. For example if the returned future is dropped immediately without being run, the Channel::is_closing() will return false forever.
Edited by opara