renamed contribute to volun...
Andrew Lewman authored 19 years ago
|
26) | <a href="developers.html">Developers</a>
27) | <a href="research.html">Research</a>
28) | <a href="people.html">People</a>
29) </td>
30) <td class="banner-right"></td>
31) </tr>
32) </table>
33)
34) <!-- END TITLE BAR & NAVIGATION -->
35)
36) <div class="center">
37)
38) <div class="main-column">
39)
40) <!-- PUT CONTENT AFTER THIS TAG -->
41) <h2>Six things everyone can do now:</h2>
42) <ol>
43) <li> We need users like you to try Tor out, and let the Tor developers know about bugs you find or features you don't find.</li>
44) <li> Please consider running a server to help the Tor network grow.</li>
45) <li> We especially need people with Windows programming skills to run an exit server on Windows, to help us debug.</li>
46) <li> Run a Tor hidden service and put interesting content on it.</li>
47) <li> Tell your friends! Get them to run servers. Get them to run hidden services. Get them to tell their friends.</li>
48) <li> Consider joining the Electronic Frontier Foundation. More EFF donations means more freedom in the world, including more Tor development.</li>
49) </ol>
50)
51) <h2>Coding Challenges</h2>
52) <ul>
53) <li>Update crypto usage to use openssl aes when available.</li>
54) <li>Implement a buffer design modelled after the linux kernel buffer design.</li>
55) <li>how do ulimits work on win32, anyway? (We should handle WSAENOBUFS as needed, look at the MaxConnections registry entry, look at the MaxUserPort entry, and look at the TcpTimedWaitDelay entry. We may also want to provide a way to set them as needed. See bug 98.)</li>
56) <li>Implement reverse DNS (already specified)</li>
57) <li>Implement a FirewalledIPs config option that works like FirewallPorts.</li>
58) <li>Make configure.in handle cross-compilation</li>
59) <li>Have NULL_REP_IS_ZERO_BYTES default to 1.</li>
60) <li>Make with-ssl-dir disable search for ssl.</li>
61) <li>Implement preservation of reputation through reboots for clients and dirservers. </li>
62) <li>Add in support egd or other non-OS-integrated strong entropy sources.</li>
63) <li>Implement password protection for on-disk identity key</li>
64) <li>Implement a way to get autoconf to install things into ~/.tor.</li>
65) <li>Change server descriptors to declare log level.</li>
66) <li>Add in support for clients to avoid servers that are too loggy based upon user configuration of acceptable log level.</li>
67) <li>Separate node discovery from routing to allow neat extensions. [Goodell?]</li>
68) <li><ul>
69) <li>Add SetServerStatus control event to adjust verified/running status of nodes.</li>
70) <li>Add NoDownload config option to prevent regular directory downloads from happening.</li>
71) </ul></li>
72) <li>Choosing exit node by meta-data, e.g. country.</li>
73) <li>Use cpuworker for more heavy lifting.</li>
74) <li><ul>
75) <li>Signing (and verifying) hidserv descriptors</li>
76) <li>Signing (and verifying) intro/rend requests</li>
77) <li>Signing (and verifying) router descriptors</li>
78) <li>Signing (and verifying) directories</li>
79) <li>Doing TLS handshake (this is very hard to separate out, though)</li>
80) </ul></li>
81) <li>Buffer size pool: allocate a maximum size for all buffers, not a maximum size for each buffer. So we don't have to give up as quickly (and kill the thickpipe!) when there's congestion.</li>
82) <li>Add alternative versions of crypto.c and tortls.c to use libnss or libgcrypt+gnutls.</li>
83) <li>Implement a way to stop falling back to forbidden ports when FascistFirewall blocks all good dirservers, if there is already a good, cached directory locally.</li>
84) <li>Extend our NSIS-based windows installer to include FreeCap and/or Privoxy.</li>
85) <li>Develop a way to handle OS X installation and uninstallation.</li>
86) <li>Develop a GUI or other controller program, to do configuration, etc. See our control specification for details, and the rudimentary demonstration Python control script. </li>
87) <li><ul>
88) <li>Design an interface for the control program. You can use any license you want, but we'd recommend 3-clause BSD or maybe GPL; and we can only help out if your license conforms to the DFSG.</li>
89) <li>Periodically people running servers tells us they want to have one
90) BandwidthRate during some part of the day, and a different
91) BandwidthRate at other parts of the day. Rather than coding this
92) inside Tor, we should have a little script that speaks via the Tor
93) Controller Interface, and does a setconf to change the bandwidth
94) rate. Perhaps it would run out of cron, or perhaps it would sleep
95) until appropriate times and then do its tweak (that's probably more
96) portable). Can somebody write one for us and we'll put it inside
97) tor/contrib/?</li>
98) </ul></li>
99) <li>Develop a way to become a Windows NT service. </li>
100) <li>Develop a systray app for Tor under MS Windows (all versions). </li>
101) <li>Integrate a good (portable, fast, clean, BSD-free) asynchronous DNS library so we don't have to keep forking DNS worker threads to do gethostbyname.</li>
102) </ul>
103)
104) <h2>Documentation Challenges</h2>
105) <ul>
106) <li>Write server instructions for OSX and Windows operators.</li>
107) <li>Improve and clarify the wiki entry on port forwarding. url?</li>
108) <li>Document how to do exit node caching: tie into squid or other caching web proxy.</li>
109) <li>Help maintain this website; code, content, css, overall layout,</li>
110) <li>Help with documentation </li>
111) <li>Help consolidate documentation. We may have too much documentation. It's spread out too far and duplicates itself in places. </li>
112) <li>Help translate the web page and documentation into other languages. See the translation guidelines if you want to help out. (Examples: French , Persian and Vietnamese.)</li>
113) <li>If you know the answer to a Wiki question in the "unanswered FAQs" list, please answer it. url?</li>
114) <li>Take a look at Martin's Squid and Tor page, and update it to reflect Tor's RedirectExit config option. url?</li>
|