Tor controller GUI (tor-control-panel)

The main ones I think need fixed before merge are:

  • QSizePolicy arguments to QGridLayout.addWidget() (in anon_connection_wizard.py, look for the commend TODO: QGridLayout isn't supposed to take QSizePolicy arguments, how does this work?)
  • Use of open(...).read() to read the entire contents of a file (this shows up in a few places)
  • Yahoo still listed as an email provider usable for getting bridges from BridgesDB (TODO: Yahoo is no longer an acceptable email provider for this. https://blog.torproject.org/new-release-bridgedb-071/)
  • no_controller popping up a window but callers expecting it to return a string (TODO: Callers expect this to return a string, not pop up a window! This is therefore broken.)
  • Double-check that the restarting of Tor after sending a Signal.NEWNYM is safe (TODO: Do we know that Tor has fully processed the NEWNYM signal at this point?)

Beyond that, some that would be nice to fix before merge but aren’t essential:

  • Lack of IPv6 compatibility (TODO: socket.gethostbyname() only supports IPv4. Whonix now supports IPv6. Can this be changed to use socket.getaddrinfo() instead?)
  • Parser issues in torrc_gen.py. (This one would be a release blocker IMO if the code wasn’t already released, but this existed prior to your refactoring work so I don’t think it counts as a blocker.)

The rest are mostly robustness concerns and cosmetic things, it would be nice if they were fixed but if the code works otherwise, they can wait.

1 Like