On Tue, 8 Sep 2015 17:39:58 +1000 Tim Wilson-Brown - teor teor2345@gmail.com wrote:
On 8 Sep 2015, at 08:45, Yawning Angel yawning@schwanenlied.me wrote:
So, we currently have a Pluggable Transport (PT) spec, and it kind-of sort-of works (The documentation is a mess that I'm working on cleaning up, but it's an orthogonal issue for how well it works).
There are a number of problems with the current PT spec that require breaking backward compatibility to fix, so eventually I would like to do so.
I'm soliciting input on what people would also like to see in a (currently hypothetical) PT spec 2.0 beyond what I already have in mind:
...
UNLIKELY:
- Specify an interface for where fork()/exec() isn't possible
(iOS). I don't think this is makes sense because it is probably too platform/caller specific.
I imagine that this would require a PT-as-thread(s) interface, which is out of scope, as iOS is a single platform. It seems to me that using a PT on iOS could be done in a similar way to using tor. (That is, if you can’t fork tor from an iOS app, then forking PTs is the least of your worries.)
I was thinking PTs as a shared object of some sort with presumably but not necessarily lots of threads under the hood. But I marked this as UNLIKELY precisely because it's a lot of effort for a single platform (however important) that isn't targeted by an official Tor anything at this point.
It also is a platform I don't have access to, and never will, so unless someone is willing to chime in on how to properly support this sort of thing in a way that doesn't clutter up the PT spec and implementations with a lot of extra stuff it won't happen.
I’m hoping someone has developed a generic way of doing this, at least for network apps. What are the ChatSecure people doing for their XMMP + Tor chat accounts? Launching pthreads?
Don't know, don't care at this moment since it's totally orthogonal to drafting a new Pluggable Transports spec (That doesn't mean that it isn't important, just trying to keep discussion on track.).
Regards,