Trac issueshttps://gitlab.torproject.org/legacy/trac/-/issues2020-06-13T14:42:27Zhttps://gitlab.torproject.org/legacy/trac/-/issues/14683Document medium-scale design of key Tor abstractions2020-06-13T14:42:27ZNick MathewsonDocument medium-scale design of key Tor abstractionsIn between the specs and the doxygen documentation, there isn't much to explain _why_ our subsystems work that way, how they fit together, and so on.
Some areas we should really elaborate are:
* circuits
* cmux
* circuitpathbias
...In between the specs and the doxygen documentation, there isn't much to explain _why_ our subsystems work that way, how they fit together, and so on.
Some areas we should really elaborate are:
* circuits
* cmux
* circuitpathbias
* entrynodes
* channels
* the main event loop/connection abstraction
We should probably try to make it a practice to _always_ document new things, and to fill in documentation for older things as we can. Whatever has changed most recently is probably going to be freshest on our minds, so let's start there.
I'm putting this in 0.2.??? as non-blocker, but we should try to get more stuff documented whenever the opportunity exists.Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/17292tor-guts documentation should cover all modules2020-06-13T14:50:19ZNick Mathewsontor-guts documentation should cover all modulesThis is a deliverable for November 2016This is a deliverable for November 2016Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/17294Complete users manuals for low-level layers in tor-guts2020-06-13T14:50:21ZNick MathewsonComplete users manuals for low-level layers in tor-gutsOur tor-guts code (or our doxygen or whatever) should contain a complete users manual for src/common.
At the very least, we have deliverables for the crypto layer and the compat/util layer. But we should overdeliver here. This is a de...Our tor-guts code (or our doxygen or whatever) should contain a complete users manual for src/common.
At the very least, we have deliverables for the crypto layer and the compat/util layer. But we should overdeliver here. This is a deliverable for November 2016Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19286Document circuit abstraction, completely2020-06-13T14:58:13ZNick MathewsonDocument circuit abstraction, completelyWe should document how exactly circuits work as a part of our overall documentation efforts.We should document how exactly circuits work as a part of our overall documentation efforts.Tor: unspecifiedhttps://gitlab.torproject.org/legacy/trac/-/issues/19287Document how circuitmux works2020-06-13T14:58:14ZNick MathewsonDocument how circuitmux workscircuitmux is a critical abstraction; we should document it in itself and as a part of our key dataflow.circuitmux is a critical abstraction; we should document it in itself and as a part of our key dataflow.Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19288Document circuitpathbias in detail2020-06-13T14:58:14ZNick MathewsonDocument circuitpathbias in detailWe have some tricky abstractions and patterns here that could use more documentation.We have some tricky abstractions and patterns here that could use more documentation.Tor: unspecifiedhttps://gitlab.torproject.org/legacy/trac/-/issues/19289Document entrynodes in detail2020-06-13T14:58:15ZNick MathewsonDocument entrynodes in detailTor: unspecifiedNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19290Document channels in detail2020-06-13T14:58:15ZNick MathewsonDocument channels in detailTor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19291Document cell-scheduler and cell-queue stuff in detail2020-06-13T14:58:16ZNick MathewsonDocument cell-scheduler and cell-queue stuff in detailTor: 0.3.0.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19292Document main event loop actions in detail2020-06-13T14:58:16ZNick MathewsonDocument main event loop actions in detailTor: 0.3.0.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19293Document connection-attachment and addressmapping in detail2020-06-13T14:58:17ZNick MathewsonDocument connection-attachment and addressmapping in detailTor: unspecifiedhttps://gitlab.torproject.org/legacy/trac/-/issues/19294Have tor-guts cover how to use OS functionality from Tor2020-06-13T14:58:17ZNick MathewsonHave tor-guts cover how to use OS functionality from TorThis should cover all our compatibility layers, including compat*, address.c, and the relevant parts of util*This should cover all our compatibility layers, including compat*, address.c, and the relevant parts of util*Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19295Have tor-guts cover our cryptography functions2020-06-13T14:58:17ZNick MathewsonHave tor-guts cover our cryptography functionsWe should write a guide to where to find the cryptography functions in tor. This doesn't need to be a replacement for the doxygen but it should let you know where to look.We should write a guide to where to find the cryptography functions in tor. This doesn't need to be a replacement for the doxygen but it should let you know where to look.Tor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19296Have tor-guts cover time-related util functions2020-06-13T14:58:18ZNick MathewsonHave tor-guts cover time-related util functionsTor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19297Have tor-guts cover string-related util functions2020-06-13T14:58:18ZNick MathewsonHave tor-guts cover string-related util functionsTor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19298Have tor-guts describe containers2020-06-13T14:58:19ZNick MathewsonHave tor-guts describe containersTor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19299Document memory-related parts of src/common in tor-guts2020-06-13T14:58:20ZNick MathewsonDocument memory-related parts of src/common in tor-gutsTor: 0.2.9.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/19300Document miscellaneous things in src/common in tor-guts2020-06-13T14:58:20ZNick MathewsonDocument miscellaneous things in src/common in tor-gutsThis is the grab-bag of stuff without other tickets: pubsub, timers, di_ops, torgzip, torlog, util_bug, workqueue.This is the grab-bag of stuff without other tickets: pubsub, timers, di_ops, torgzip, torlog, util_bug, workqueue.Tor: 0.2.9.x-finalNick MathewsonNick Mathewson