Page MenuHomePhabricator

net, doc: Doxygen updates and fixes in netbase.{h,cpp}
ClosedPublic

Authored by PiRK on Feb 18 2022, 09:57.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABCa898bfeb1cc6: net, doc: Doxygen updates and fixes in netbase.{h,cpp}
Summary

net: update incorrect Doxygen documentation in netbase.cpp

net: move Doxygen docs from netbase.cpp to netbase.h

This is a backport of core#21444

Notes :

  • the third commit is not applicable due to D11042 (replacement of SOCKET &hSocketRet with Sock &sock in the function signature).
  • the doxygen doc for Socks5 cannot be moved because we didn't backport core#19203, so it is still a static function not defined in the header.

Depends on D11067

Test Plan

Compile to make sure no code was accidentaly broken and unnoticed.

Proofreading

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

PiRK requested review of this revision.Feb 18 2022, 09:57

Tail of the build log:

[367/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[368/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[369/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[370/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[371/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[372/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[373/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[374/516] Building CXX object src/CMakeFiles/server.dir/i2p.cpp.o
FAILED: src/CMakeFiles/server.dir/i2p.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DABORT_ON_FAILED_ASSUME -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DDEBUG -DDEBUG_LOCKORDER -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/leveldb/helpers/memenv -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -O0 -fPIC -fvisibility=hidden -g3 -ftrapv -fstack-reuse=none -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/i2p.cpp.o -MF src/CMakeFiles/server.dir/i2p.cpp.o.d -o src/CMakeFiles/server.dir/i2p.cpp.o -c ../../src/i2p.cpp
../../src/i2p.cpp: In member function ‘std::unique_ptr<Sock> i2p::sam::Session::Hello() const’:
../../src/i2p.cpp:284:52: error: invalid initialization of reference of type ‘const SOCKET&’ {aka ‘const unsigned int&’} from expression of type ‘Sock’
         if (!ConnectSocketDirectly(m_control_host, *sock, nConnectTimeout,
                                                    ^~~~~
In file included from ../../src/i2p.cpp:14:
../../src/./netbase.h:200:6: note: in passing argument 2 of ‘bool ConnectSocketDirectly(const CService&, const SOCKET&, int, bool)’
 bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
      ^~~~~~~~~~~~~~~~~~~~~
[375/516] Building CXX object src/CMakeFiles/common.dir/net_permissions.cpp.o
[376/516] Building CXX object src/CMakeFiles/common.dir/netbase.cpp.o
[377/516] Building CXX object src/CMakeFiles/server.dir/httpserver.cpp.o
[378/516] Linking CXX static library src/libcommon.a
[379/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[380/516] Linking CXX shared library src/libbitcoinconsensus.so.0.25.0
[381/516] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[382/516] Linking CXX executable src/bitcoin-cli
[383/516] Linking CXX executable src/bitcoin-tx
[384/516] Linking CXX static library src/wallet/libwallet.a
[385/516] Linking CXX static library src/wallet/libwallet-tool.a
[386/516] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[387/516] Linking CXX executable src/bitcoin-wallet
[388/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
FAILED: src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DABORT_ON_FAILED_ASSUME -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DDEBUG -DDEBUG_LOCKORDER -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -O0 -fPIC -fvisibility=hidden -g3 -ftrapv -fstack-reuse=none -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -MF src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o.d -o src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -c ../../src/seeder/bitcoin.cpp
../../src/seeder/bitcoin.cpp: In member function ‘bool CSeederNode::Run()’:
../../src/seeder/bitcoin.cpp:211:44: error: invalid initialization of reference of type ‘const SOCKET&’ {aka ‘const unsigned int&’} from expression of type ‘Sock’
                 ConnectSocketDirectly(you, *sock, nConnectTimeout, false);
                                            ^~~~~
In file included from ../../src/seeder/bitcoin.cpp:10:
../../src/./netbase.h:200:6: note: in passing argument 2 of ‘bool ConnectSocketDirectly(const CService&, const SOCKET&, int, bool)’
 bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
      ^~~~~~~~~~~~~~~~~~~~~
[389/516] Building CXX object src/CMakeFiles/server.dir/net.cpp.o
FAILED: src/CMakeFiles/server.dir/net.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DABORT_ON_FAILED_ASSUME -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DDEBUG -DDEBUG_LOCKORDER -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/leveldb/helpers/memenv -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -O0 -fPIC -fvisibility=hidden -g3 -ftrapv -fstack-reuse=none -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/net.cpp.o -MF src/CMakeFiles/server.dir/net.cpp.o.d -o src/CMakeFiles/server.dir/net.cpp.o -c ../../src/net.cpp
../../src/net.cpp: In member function ‘CNode* CConnman::ConnectNode(CAddress, const char*, bool, ConnectionType)’:
../../src/net.cpp:475:52: error: invalid initialization of reference of type ‘const SOCKET&’ {aka ‘const unsigned int&’} from expression of type ‘Sock’
                 ConnectSocketDirectly(addrConnect, *sock, nConnectTimeout,
                                                    ^~~~~
In file included from ../../src/net.cpp:21:
../../src/./netbase.h:200:6: note: in passing argument 2 of ‘bool ConnectSocketDirectly(const CService&, const SOCKET&, int, bool)’
 bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
      ^~~~~~~~~~~~~~~~~~~~~
[390/516] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[391/516] Building CXX object src/CMakeFiles/server.dir/interfaces/node.cpp.o
[392/516] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[393/516] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[394/516] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-debug failed with exit code 1

Tail of the build log:

[364/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcdump.cpp.o
[365/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[366/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[367/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[368/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[369/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[370/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[371/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[372/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[373/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[374/516] Building CXX object src/CMakeFiles/server.dir/i2p.cpp.o
FAILED: src/CMakeFiles/server.dir/i2p.cpp.o 
/usr/bin/ccache /usr/bin/clang++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/leveldb/helpers/memenv -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wgnu -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wthread-safety -Wrange-loop-analysis -Wredundant-decls -Wunreachable-code-loop-increment -Wsign-compare -Wconditional-uninitialized -Wformat-security -Wredundant-move -Woverloaded-virtual -Wshadow -Wshadow-field -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/i2p.cpp.o -MF src/CMakeFiles/server.dir/i2p.cpp.o.d -o src/CMakeFiles/server.dir/i2p.cpp.o -c ../../src/i2p.cpp
../../src/i2p.cpp:284:14: error: no matching function for call to 'ConnectSocketDirectly'
        if (!ConnectSocketDirectly(m_control_host, *sock, nConnectTimeout,
             ^~~~~~~~~~~~~~~~~~~~~
../../src/./netbase.h:200:6: note: candidate function not viable: no known conversion from 'Sock' to 'const SOCKET' (aka 'const unsigned int') for 2nd argument
bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
     ^
1 error generated.
[375/516] Building CXX object src/CMakeFiles/common.dir/net_permissions.cpp.o
[376/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[377/516] Building CXX object src/CMakeFiles/common.dir/netbase.cpp.o
[378/516] Linking CXX static library src/libcommon.a
[379/516] Linking CXX shared library src/libbitcoinconsensus.so.0.25.0
[380/516] Linking CXX executable src/bitcoin-cli
[381/516] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[382/516] Linking CXX executable src/bitcoin-tx
[383/516] Linking CXX static library src/wallet/libwallet.a
[384/516] Linking CXX static library src/wallet/libwallet-tool.a
[385/516] Building CXX object src/CMakeFiles/server.dir/net.cpp.o
FAILED: src/CMakeFiles/server.dir/net.cpp.o 
/usr/bin/ccache /usr/bin/clang++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/leveldb/helpers/memenv -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wgnu -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wthread-safety -Wrange-loop-analysis -Wredundant-decls -Wunreachable-code-loop-increment -Wsign-compare -Wconditional-uninitialized -Wformat-security -Wredundant-move -Woverloaded-virtual -Wshadow -Wshadow-field -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/net.cpp.o -MF src/CMakeFiles/server.dir/net.cpp.o.d -o src/CMakeFiles/server.dir/net.cpp.o -c ../../src/net.cpp
../../src/net.cpp:475:17: error: no matching function for call to 'ConnectSocketDirectly'
                ConnectSocketDirectly(addrConnect, *sock, nConnectTimeout,
                ^~~~~~~~~~~~~~~~~~~~~
../../src/./netbase.h:200:6: note: candidate function not viable: no known conversion from 'Sock' to 'const SOCKET' (aka 'const unsigned int') for 2nd argument
bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
     ^
1 error generated.
[386/516] Linking CXX executable src/bitcoin-wallet
[387/516] Building CXX object src/CMakeFiles/server.dir/httpserver.cpp.o
[388/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
FAILED: src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o 
/usr/bin/ccache /usr/bin/clang++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wgnu -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wthread-safety -Wrange-loop-analysis -Wredundant-decls -Wunreachable-code-loop-increment -Wsign-compare -Wconditional-uninitialized -Wformat-security -Wredundant-move -Woverloaded-virtual -Wshadow -Wshadow-field -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -MF src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o.d -o src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -c ../../src/seeder/bitcoin.cpp
../../src/seeder/bitcoin.cpp:211:17: error: no matching function for call to 'ConnectSocketDirectly'
                ConnectSocketDirectly(you, *sock, nConnectTimeout, false);
                ^~~~~~~~~~~~~~~~~~~~~
../../src/./netbase.h:200:6: note: candidate function not viable: no known conversion from 'Sock' to 'const SOCKET' (aka 'const unsigned int') for 2nd argument
bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
     ^
1 error generated.
[389/516] Building CXX object src/CMakeFiles/server.dir/interfaces/node.cpp.o
[390/516] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[391/516] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[392/516] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[393/516] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[394/516] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang failed with exit code 1

Tail of the build log:

[347/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[348/516] Linking C executable src/secp256k1/ecmult-bench
[349/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[350/516] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[351/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[352/516] Building CXX object src/CMakeFiles/common.dir/rpc/rawtransaction_util.cpp.o
[353/516] Building CXX object src/CMakeFiles/script.dir/script/interpreter.cpp.o
[354/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[355/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[356/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[357/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[358/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[359/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcdump.cpp.o
[360/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[361/516] Building CXX object src/CMakeFiles/script.dir/script/signingprovider.cpp.o
[362/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[363/516] Linking CXX static library src/libscript.a
[364/516] Linking CXX static library src/libcommon.a
[365/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[366/516] Linking CXX shared library src/libbitcoinconsensus.so.0.25.0
[367/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[368/516] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[369/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[370/516] Building CXX object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli.cpp.o
[371/516] Linking CXX executable src/bitcoin-cli
[372/516] Linking CXX static library src/zmq/libzmq.a
[373/516] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[374/516] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[375/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[376/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[377/516] Linking CXX executable src/bitcoin-tx
[378/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[379/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[380/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[381/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[382/516] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
FAILED: src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-reuse=none -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -MF src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o.d -o src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -c ../../src/seeder/bitcoin.cpp
../../src/seeder/bitcoin.cpp: In member function ‘bool CSeederNode::Run()’:
../../src/seeder/bitcoin.cpp:211:44: error: invalid initialization of reference of type ‘const SOCKET&’ {aka ‘const unsigned int&’} from expression of type ‘Sock’
                 ConnectSocketDirectly(you, *sock, nConnectTimeout, false);
                                            ^~~~~
In file included from ../../src/seeder/bitcoin.cpp:10:
../../src/./netbase.h:200:6: note: in passing argument 2 of ‘bool ConnectSocketDirectly(const CService&, const SOCKET&, int, bool)’
 bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
      ^~~~~~~~~~~~~~~~~~~~~
[383/516] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[384/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[385/516] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[386/516] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[387/516] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[388/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/__/interfaces/wallet.cpp.o
[389/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[390/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[391/516] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[392/516] Linking CXX static library src/wallet/libwallet.a
[393/516] Linking CXX static library src/wallet/libwallet-tool.a
[394/516] Linking CXX executable src/bitcoin-wallet
ninja: build stopped: cannot make progress due to previous errors.
Build build-diff failed with exit code 1

Tail of the build log:

[324/462] Building CXX object src/CMakeFiles/server.dir/rpc/misc.cpp.o
[325/462] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[326/462] Building CXX object src/CMakeFiles/server.dir/txdb.cpp.o
[327/462] Building CXX object src/CMakeFiles/server.dir/rpc/server.cpp.o
[328/462] Building CXX object src/CMakeFiles/server.dir/versionbits.cpp.o
[329/462] Building C object src/secp256k1/CMakeFiles/sign-bench.dir/src/bench_sign.c.o
[330/462] Building CXX object src/CMakeFiles/server.dir/validationinterface.cpp.o
[331/462] Building CXX object src/CMakeFiles/server.dir/dummywallet.cpp.o
[332/462] Building C object src/secp256k1/CMakeFiles/verify-bench.dir/src/bench_verify.c.o
[333/462] Building C object src/secp256k1/CMakeFiles/recover-bench.dir/src/bench_recover.c.o
[334/462] Building CXX object src/CMakeFiles/server.dir/rpc/mining.cpp.o
[335/462] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[336/462] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[337/462] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[338/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[339/462] Building C object src/secp256k1/CMakeFiles/secp256k1.dir/src/secp256k1.c.o
[340/462] Linking C static library src/secp256k1/libsecp256k1.a
[341/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[342/462] Linking C executable src/secp256k1/ecmult-bench
[343/462] Linking CXX static library src/libcommon.a
[344/462] Linking C executable src/secp256k1/internal-bench
[345/462] Linking CXX static library src/libscript.a
[346/462] Linking C executable src/secp256k1/sign-bench
[347/462] Linking CXX static library src/libbitcoinconsensus.a
[348/462] Linking C executable src/secp256k1/verify-bench
[349/462] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[350/462] Linking CXX shared library src/libbitcoinconsensus.so.0.25.0
[351/462] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[352/462] Linking C executable src/secp256k1/recover-bench
[353/462] Linking CXX executable src/bitcoin-cli
[354/462] Linking CXX executable src/bitcoin-tx
[355/462] Building CXX object src/CMakeFiles/server.dir/txmempool.cpp.o
[356/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[357/462] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[358/462] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[359/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[360/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[361/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[362/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[363/462] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[364/462] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
FAILED: src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-reuse=none -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -MF src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o.d -o src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -c ../../src/seeder/bitcoin.cpp
../../src/seeder/bitcoin.cpp: In member function ‘bool CSeederNode::Run()’:
../../src/seeder/bitcoin.cpp:211:44: error: invalid initialization of reference of type ‘const SOCKET&’ {aka ‘const unsigned int&’} from expression of type ‘Sock’
                 ConnectSocketDirectly(you, *sock, nConnectTimeout, false);
                                            ^~~~~
In file included from ../../src/seeder/bitcoin.cpp:10:
../../src/./netbase.h:200:6: note: in passing argument 2 of ‘bool ConnectSocketDirectly(const CService&, const SOCKET&, int, bool)’
 bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
      ^~~~~~~~~~~~~~~~~~~~~
[365/462] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[366/462] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[367/462] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[368/462] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[369/462] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[370/462] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[371/462] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-without-wallet failed with exit code 1

Tail of the build log:

[349/514] Linking CXX static library src/libcommon.a
[350/514] Linking C executable src/secp256k1/verify-bench
[351/514] Linking CXX shared library src/libbitcoinconsensus.so.0.25.0
[352/514] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[353/514] Linking CXX executable src/bitcoin-cli
[354/514] Linking C executable src/secp256k1/recover-bench
[355/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[356/514] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[357/514] Linking CXX executable src/bitcoin-tx
[358/514] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[359/514] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[360/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[361/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[362/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[363/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[364/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[365/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[366/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[367/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[368/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[369/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[370/514] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[371/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[372/514] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[373/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[374/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/__/interfaces/wallet.cpp.o
[375/514] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[376/514] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[377/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[378/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[379/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[380/514] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[381/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[382/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[383/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[384/514] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
FAILED: src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o 
/usr/bin/cmake -E __run_co_compile --launcher=/usr/bin/ccache --tidy="/usr/bin/clang-tidy-10;-warnings-as-errors=*;--extra-arg-before=--driver-mode=g++" --source=../../src/seeder/bitcoin.cpp -- /usr/bin/clang++ -DBOOST_AC_USE_STD_ATOMIC -DBOOST_SP_USE_STD_ATOMIC -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -g -O2 -fPIC -fvisibility=hidden -fstack-protector-all -Wstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wgnu -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wthread-safety -Wrange-loop-analysis -Wredundant-decls -Wunreachable-code-loop-increment -Wsign-compare -Wconditional-uninitialized -Wformat-security -Wredundant-move -Woverloaded-virtual -Wshadow -Wshadow-field -Wno-unused-parameter -Wno-implicit-fallthrough -pthread -std=gnu++17 -MD -MT src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -MF src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o.d -o src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o -c ../../src/seeder/bitcoin.cpp
/work/abc-ci-builds/build-clang-tidy/../../src/seeder/bitcoin.cpp:211:17: error: no matching function for call to 'ConnectSocketDirectly' [clang-diagnostic-error]
                ConnectSocketDirectly(you, *sock, nConnectTimeout, false);
                ^
../../src/./netbase.h:200:6: note: candidate function not viable: no known conversion from 'Sock' to 'const SOCKET' (aka 'const unsigned int') for 2nd argument
bool ConnectSocketDirectly(const CService &addrConnect, const SOCKET &hSocket,
     ^
2912 warnings and 1 error generated.
Error while processing /work/abc-ci-builds/build-clang-tidy/../../src/seeder/bitcoin.cpp.
Suppressed 2912 warnings (2912 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
Found compiler error(s).
[385/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcdump.cpp.o
[386/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[387/514] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[388/514] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[389/514] Linking CXX static library src/wallet/libwallet.a
[390/514] Linking CXX static library src/wallet/libwallet-tool.a
[391/514] Linking CXX executable src/bitcoin-wallet
[392/514] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[393/514] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1
PiRK planned changes to this revision.Feb 18 2022, 10:21
PiRK edited the summary of this revision. (Show Details)
PiRK edited the test plan for this revision. (Show Details)

Redo the backport manually to take into account out of sequence backports.
Update the summary to add notes. Update the test plan to add a compilation step (prevention against accidental code changes like the ones that just happended).

Fabien requested changes to this revision.Feb 18 2022, 17:44
Fabien added a subscriber: Fabien.
Fabien added inline comments.
src/netbase.h
120 ↗(On Diff #32430)

The order is reversed vs the source material

221 ↗(On Diff #32430)

Add that newline

This revision now requires changes to proceed.Feb 18 2022, 17:44

sort Lookup methods in the headers and add missing blank line

This revision is now accepted and ready to land.Feb 21 2022, 08:55