[or-cvs] Add C library issues to control lib TODO
nickm at seul.org
Fri Jul 15 22:42:20 UTC 2005
Update of /home/or/cvsroot/control
In directory moria:/tmp/cvs-serv20080
Add C library issues to control lib TODO
RCS file: /home/or/cvsroot/control/TODO,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- TODO 14 Jul 2005 20:55:10 -0000 1.3
+++ TODO 15 Jul 2005 22:42:18 -0000 1.4
@@ -7,3 +7,22 @@
people to do on the contest, especially how to launch Tor securely.
- There should be functions to get and parse the fancier values from get-info
+- A C library would be cool, but there are obstacles. (These are annoying,
+ not impossible.)
+ - Cross-platform issues. Not everybody handles sockets the same way, and
+ that sucks. Also, you can't count on a decent threads implementation.
+ - Async issues. To receive asynchronous events from Tor, the controller
+ can't just follow a simple write-command/read-reply strategy. It needs
+ to either:
+ - have a separate thread read asynchronously
+ - muck with select/poll/epoll/kpoll/libevent.
+ - force the developer to muck with threads or asynchonous IO
+ - Once you've solved the two problems above, you have another hurdle if
+ you want your library to be embedded in other languages: You want to
+ play nice with whatever solution those languages use for the above
+ problems, while still playing nicely with C.
More information about the tor-commits