[tor-bugs] #6411 [Tor]: Adding hidden services through control socket

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Apr 22 08:43:32 UTC 2015


#6411: Adding hidden services through control socket
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  yawning
  kevinevans             |     Status:  needs_revision
         Type:           |  Milestone:  Tor: 0.2.7.x-final
  enhancement            |    Version:  Tor: 0.2.3.19-rc
     Priority:  normal   |   Keywords:  hidden-service, control, maybe-
    Component:  Tor      |  proposal, tor-hs, globalleaks-wants, nickm-
   Resolution:           |  review, 027-triaged-1-out
Actual Points:           |  Parent ID:  #8993
       Points:           |
-------------------------+-------------------------------------------------

Comment (by yawning):

 To keep this on people's radar... I pushed a bunch more commits to the _v3
 branch, that I shall squash/rebase once it's passed review.

 Replying to [comment:55 nickm]:
 > Notes:
 >  * <span class="darth-vader">I find your lack of
 tests....disturbing.</span>

 This should be the last thing required.

 >  * What motivates the memwipe in crypto_pk_base64_encode() ?

 aa5af50a32719c2ade2d9b86b1c0ae26686e92c4 - adds a comment.  The correct
 fix requires #15652.

 >  * Can we split the command-parsing part of add_onion handling into its
 own function, so that it can be tested separately?  It's pretty bulky...

 9d2b42fd61e63c9b9e9ea1bdcb3b77a58a72eb20 - Carves out the key argument
 parsing stuff.
 8c31713d34287232461f21d4f7d02992b2c25aa7 - Makes add_onion use the
 rend_service port config parser.

 It's still a tad bulky, but significantly less so, and more testable.
 Reducing it further is possible, but all the control code tends to be a
 gigantic ball of bulk, so I don't feel too bad about it in it's current
 state.

 >  * Let's turn the return values from rend_service_add_ephemeral into an
 enum.

 1d183d640140606e030e269b6271d81e2c982239

 >  * I'm not fond of naming variables l, because of I and 1.

 ac6431d70b9cd612033cf392d84a0160f09b1552

 >  * The new return value for rend_add_service needs to get documented.

 28e7e0d1d47d76ba5f7da25a98ff0614466ce602

 Just needs tests at this point.  I'll write ones for the new stuff in
 `common/crypto.c` and the testable parts of the add_onion handler.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/6411#comment:58>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list