In v22, using the options: -onlynet=onion -onlynet=ipv4 -onlynet=ipv6, combined with the options -torcontrol= (etc) functioned and bitcoind correctly pulled the onion socks address via a probe to tor. In v23, that combination of options no longer functions and -onion= is required.

** expected **

Using -onlynet=onion (and ipv4 and ipv6) if -torcontrol= is specified should still work.

**Actual behavior**

bitcoind refuses to start up due to commitid e53a8505db preventing it from doing so in init.cpp.

**To reproduce**

Run as per above.

**System information**

Sources built from fcf6c8f4eb217763545ede1766831a6b93f583bd (tag v23.0 as of this writing I .. think?)

Error message in debug.log is:

Error: Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided
(no -proxy= and no -onion= given) or it is explicitly forbidden (-onion=0)
Shutdown: In progress...
scheduler thread exit
Shutdown: done

script_threads = std::min(script_threads, MAX_SCRIPTCHECK_THREADS);
    LogPrintf("Script verification uses %d additional threads\n", script_threads);
    if (script_threads >= 1) {
        g_parallel_script_checks = true;
        StartScriptCheckWorkerThreads(script_threads);
    }
    assert(!node.scheduler);
    node.scheduler = std::make_unique<CScheduler>();
    
    node.scheduler->m_service_thread = std::thread(util::TraceThread, "scheduler", [&] { node.scheduler->serviceQueue(); });
    
    node.scheduler->scheduleEvery([]{
        RandAddPeriodic();
    }, std::chrono::minutes{1});
    GetMainSignals().RegisterBackgroundSignalScheduler(*node.scheduler);
    
    
    
    
    g_wallet_init_interface.Construct(node);
    uiInterface.InitWallet();
    * Register RPC commands regardless of -server setting so they will be
     * available in the GUI RPC console even if external calls are disabled.
     *
    RegisterAllCoreRPCCommands(tableRPC);
    for (const auto& client : node.chain_clients) {
        client->registerRpcs();
    }
#if ENABLE_ZMQ