Skip to content
  • teor's avatar
    Stop ignoring hidden service key anonymity when first starting tor · f80a43d1
    teor authored and Nick Mathewson's avatar Nick Mathewson committed
    Instead, refuse to start tor if any hidden service key has been used in
    a different hidden service anonymity mode.
    
    Fixes bug 20638; bugfix on 17178 in 0.2.9.3-alpha; reported by ahf.
    
    The original single onion service poisoning code checked poisoning state
    in options_validate, and poisoned in options_act. This was problematic,
    because the global array of hidden services had not been populated in
    options_validate (and there were ordrering issues with hidden service
    directory creation).
    
    This patch fixes this issue in rend_service_check_dir_and_add, which:
    * creates the directory, or checks permissions on an existing directory, then
    * checks the poisoning state of the directory, then
    * poisons the directory.
    
    When validating, only the permissions checks and the poisoning state checks
    are perfomed (the directory is not modified).
    f80a43d1