magic-wormhole/docs
Brian Warner 0b28137948 w3.dot: figure out close() pathways
d=M_close() will always do the verbose clean shutdown thing, and the Deferred
won't fire (e.g. we won't move to state "Ss") until we've deallocated our
server resources (nameplates and mailboxes), and we've finished shutting down
our websocket connection. So integration tests should wait on the Deferred to
make sure everything has stopped moving and the reactor is clean.

CLI applications that are following the success path can use M_close() and
wait on the Deferred before terminating.

CLI applications that wind up on some error path can either use M_close(), or
just SIGINT and leave the server to GC stuff later.

GUI applications can use M_close() but ignore the Deferred, and assume that
the program will keep running long enough to get the deallocation messages
through.

GUI+DB applications can use M_close() and then stop recording state changes,
and if the program remains running long enough, everything will be
deallocated, but if it terminates too soon, the server will have to GC.
2017-04-06 12:21:00 -07:00
..
api.md api.md: mark argument slightly better 2017-04-06 12:12:42 -07:00
attacks.md document some attacks 2017-01-01 14:29:48 -05:00
events.dot update events.dot with check-verifier logic 2016-05-25 18:06:08 -07:00
states-code.dot starting to draw new state machines 2017-04-06 12:21:00 -07:00
tor.md update Tor docs, mention py2-only 2017-01-16 18:21:42 -05:00
transit.md document Transit protocol 2016-02-14 17:48:17 -08:00
w.dot just might work. close() mapped out. 2017-04-06 12:21:00 -07:00
w2.dot w3.dot: figure out close() pathways 2017-04-06 12:21:00 -07:00
w3.dot w3.dot: figure out close() pathways 2017-04-06 12:21:00 -07:00
wormhole-server.8 remove out of date version numbers 2016-12-15 10:36:32 -05:00
wormhole.1 remove out of date version numbers 2016-12-15 10:36:32 -05:00