Hi,
My name is Sreenatha Bhatlapenumarthi. I'd like to migrate TorBEL
from TorCtl to Stem as a part of GSoC'13 project this summer.
Damian pointed out that there is still some improvement to be made to
TorBEL to replace DNSEL. I've downloaded the source code from [0] and
started looking around for missing functionality and components that use
TorCtl(and hence need migration) and here is what I've observed:
- TorBEL components that use TorCtl
- Controller - control.py
- Logger - logger.py
- Router - router.py
- Tests - tests.py
- The main interface - torbel
- Exit policies of narrow_exit routers can be checked in Router.will_exit_to[1]
- RouterRecord.update_to()[2] can use "Router Status Entry" descriptors[3] to update the router's attributes
- I think the following line[4] in network.py has a bug - socket.inet_aton works only for IPv4 addresses[5].
- (ip,) = struct.unpack(">I", socket.inet_aton(peer.host))
Please let me know if I've missed something or got something wrong.
I donot have any background on Haskell as such but if you recommend that I
learn it inorder to understand TorDNSEL, I am prepared to spend the required
amount of time learning it during May before the coding period starts. Also, can
you give me a rough estimate of how long you think the migration will take so that
I can plan the project timeline accordingly?
Thanks for taking your time out to read this.
Cheers,
Sreenatha