From: svost Date: Thu, 2 Feb 2017 10:29:44 +0000 (+0300) Subject: Always build with IPV6 support X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=commitdiff_plain;h=7e0f868772ff9d07289907f12596c88f6bbfa975 Always build with IPV6 support --- diff --git a/MSVC/libcommon/libcommon.vcxproj b/MSVC/libcommon/libcommon.vcxproj index 90fb6da..67c1e80 100644 --- a/MSVC/libcommon/libcommon.vcxproj +++ b/MSVC/libcommon/libcommon.vcxproj @@ -174,7 +174,7 @@ NotUsing Level1 Disabled - STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;USE_IPV6=1;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\..\Deps;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\src\leveldb\helpers\memenv;..\..\src\leveldb\helpers;..\..\src\leveldb\include;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) ProgramDatabase true @@ -196,7 +196,7 @@ Level1 Disabled - STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;USE_IPV6=1;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\..\Deps;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\src\leveldb\helpers\memenv;..\..\src\leveldb\helpers;..\..\src\leveldb\include;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) ProgramDatabase true @@ -218,7 +218,7 @@ MaxSpeed true true - STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;USE_IPV6=1;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\..\deps\;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\src\leveldb\helpers\memenv;..\..\src\leveldb\helpers;..\..\src\leveldb\include;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) MultiThreaded false @@ -242,7 +242,7 @@ MaxSpeed true true - STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;USE_IPV6=1;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + STATICLIB;_CRT_SECURE_NO_WARNINGS;UNICODE;WIN32;_SCL_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0501;HAVE_WORKING_BOOST_SLEEP_FOR;NOMINMAX;USE_LEVELDB;BOOST_SPIRIT_THREADSAFE;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\..\Deps;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\src\leveldb\helpers\memenv;..\..\src\leveldb\helpers;..\..\src\leveldb\include;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) MultiThreaded false diff --git a/MSVC/mynovacoin/mynovacoin.vcxproj b/MSVC/mynovacoin/mynovacoin.vcxproj index 3e9f2ff..eb22d7b 100644 --- a/MSVC/mynovacoin/mynovacoin.vcxproj +++ b/MSVC/mynovacoin/mynovacoin.vcxproj @@ -86,7 +86,7 @@ - UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\src\leveldb\include;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) Disabled ProgramDatabase @@ -107,7 +107,7 @@ - UNICODE;WIN32;_WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;_WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\src\leveldb\include;..\..\..\Deps\openssl-1.0.2\inc32;..\..\..\Deps\db-6.0.20\build_windows;..\..\..\Deps\boost_1_57_0;..\..\..\Deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) Disabled ProgramDatabase @@ -128,7 +128,7 @@ - UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\src\leveldb\include;..\..\..\deps\openssl-1.0.2\inc32;..\..\..\deps\db-6.0.20\build_windows;..\..\..\deps\boost_1_57_0;..\..\..\deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) ProgramDatabase MultiThreaded @@ -152,7 +152,7 @@ - UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) ..\include;..\..\src\leveldb\include;..\..\..\Deps\openssl-1.0.2\inc32;..\..\..\Deps\db-6.0.20\build_windows;..\..\..\Deps\boost_1_57_0;..\..\..\Deps\boost_1_57_0\boost;.\GeneratedFiles;.\GeneratedFiles\$(ConfigurationName);.\;%(AdditionalIncludeDirectories) ProgramDatabase MultiThreaded diff --git a/MSVC/mynovacoinqt/mynovacoinqt.vcxproj b/MSVC/mynovacoinqt/mynovacoinqt.vcxproj index d8f70c9..be377e7 100644 --- a/MSVC/mynovacoinqt/mynovacoinqt.vcxproj +++ b/MSVC/mynovacoinqt/mynovacoinqt.vcxproj @@ -103,7 +103,7 @@ Sync $(IntDir) Disabled - UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false MultiThreadedDebug true @@ -157,7 +157,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2\qtbase\bin\moc.exe C:\MyPr Sync $(IntDir) Disabled - UNICODE;WIN32;_WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;_WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false MultiThreadedDebug true @@ -211,7 +211,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2-64\qtbase\bin\moc.exe C:\M Sync $(IntDir) Full - UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false $(IntDir)vc$(PlatformToolsetVersion).pdb MultiThreaded @@ -269,7 +269,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2\qtbase\bin\moc.exe C:\MyPr Sync $(IntDir) Full - UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false $(IntDir)vc$(PlatformToolsetVersion).pdb MultiThreaded diff --git a/doc/building novacoind and novacoinqt under Windows with MinGW.txt b/doc/building novacoind and novacoinqt under Windows with MinGW.txt index 885b7fb..98d7beb 100644 --- a/doc/building novacoind and novacoinqt under Windows with MinGW.txt +++ b/doc/building novacoind and novacoinqt under Windows with MinGW.txt @@ -187,7 +187,7 @@ LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static USE_LEVELDB:=0 на USE_LEVELDB:=1 -(выше USE_IPV6:=1) + Так же измените cd leveldb; make; cd .. на @@ -272,7 +272,7 @@ Qt5 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\5.4.0\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release @@ -280,21 +280,21 @@ Qt5 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\5.4.0\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\4.8.6\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\4.8.6\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release @@ -467,7 +467,7 @@ Qt5 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\5.4.0-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release @@ -475,21 +475,21 @@ Qt5 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\5.4.0-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\4.8.6-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\4.8.6-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Если всё сделано правильно, то файл novacoin-qt.exe будет находится в папке C:\MyProjects\novacoin-master\release diff --git a/doc/crosscompiling_building Windows binary under Unix.txt b/doc/crosscompiling_building Windows binary under Unix.txt index 5c0a38e..90aef48 100644 --- a/doc/crosscompiling_building Windows binary under Unix.txt +++ b/doc/crosscompiling_building Windows binary under Unix.txt @@ -170,7 +170,7 @@ $(CXX) $(CFLAGS) $(LDFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS) USE_LEVELDB:=0 на USE_LEVELDB:=1 -(выше USE_IPV6:=1) + Откройте файл /home/<ваше имя>/novacoin/src/leveldb/Makefile Вставьте ниже строчки CXXFLAGS += -I. -I./include $(PLATFORM_CXXFLAGS) $(OPT) следующие строки: @@ -263,28 +263,28 @@ Qt4 + транзакционный индекс LevelDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt4 "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt4 "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt4 + транзакционный индекс BDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt4 "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt4 "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt5 + транзакционный индекс LevelDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt5 "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt5 "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt5 + транзакционный индекс BDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt5 "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt5 "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) diff --git a/novacoin-qt.pro b/novacoin-qt.pro index 44c1bcd..7cc450b 100644 --- a/novacoin-qt.pro +++ b/novacoin-qt.pro @@ -92,18 +92,6 @@ contains(USE_DBUS, 1) { QT += dbus } -# use: qmake "USE_IPV6=1" ( enabled by default; default) -# or: qmake "USE_IPV6=0" (disabled by default) -# or: qmake "USE_IPV6=-" (not supported) -contains(USE_IPV6, -) { - message(Building without IPv6 support) -} else { - count(USE_IPV6, 0) { - USE_IPV6=1 - } - DEFINES += USE_IPV6=$$USE_IPV6 -} - contains(BITCOIN_NEED_QT_PLUGINS, 1) { DEFINES += BITCOIN_NEED_QT_PLUGINS QTPLUGIN += qcncodecs qjpcodecs qtwcodecs qkrcodecs qtaccessiblewidgets diff --git a/src/init.cpp b/src/init.cpp index 4b64d35..25f90f2 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -642,12 +642,6 @@ bool AppInit2() SetLimited(net); } } -#if defined(USE_IPV6) -#if ! USE_IPV6 - else - SetLimited(NET_IPV6); -#endif -#endif CService addrProxy; bool fProxy = false; @@ -658,10 +652,8 @@ bool AppInit2() if (!IsLimited(NET_IPV4)) SetProxy(NET_IPV4, addrProxy); -#ifdef USE_IPV6 if (!IsLimited(NET_IPV6)) SetProxy(NET_IPV6, addrProxy); -#endif SetNameProxy(addrProxy); fProxy = true; } @@ -706,10 +698,8 @@ bool AppInit2() } else { struct in_addr inaddr_any; inaddr_any.s_addr = INADDR_ANY; -#ifdef USE_IPV6 if (!IsLimited(NET_IPV6)) fBound |= Bind(CService(in6addr_any, GetListenPort()), false); -#endif if (!IsLimited(NET_IPV4)) fBound |= Bind(CService(inaddr_any, GetListenPort()), !fBound); @@ -725,10 +715,8 @@ bool AppInit2() struct in_addr inaddr_loopback; inaddr_loopback.s_addr = htonl(INADDR_LOOPBACK); -#ifdef USE_IPV6 if (!BindListenPort(CService(in6addr_loopback, GetListenPort()), strError)) return InitError(strError); -#endif if (!BindListenPort(CService(inaddr_loopback, GetListenPort()), strError)) return InitError(strError); } diff --git a/src/makefile.bsd b/src/makefile.bsd index 8469f41..02c1128 100644 --- a/src/makefile.bsd +++ b/src/makefile.bsd @@ -3,7 +3,6 @@ # file COPYING or http://www.opensource.org/licenses/mit-license.php. USE_LEVELDB:=0 -USE_IPV6:=1 ARCH:=$(uname -m) # CC:=clang @@ -37,10 +36,6 @@ LIBS += \ -l crypto \ -l execinfo -ifneq (${USE_IPV6}, -) - DEFS += -DUSE_IPV6=$(USE_IPV6) -endif - LIBS+= \ -Wl,-B$(LMODE2) \ -l z \ diff --git a/src/makefile.linux-mingw b/src/makefile.linux-mingw index 4762599..7518bb5 100644 --- a/src/makefile.linux-mingw +++ b/src/makefile.linux-mingw @@ -20,7 +20,6 @@ BDB_INCLUDE_PATH:=$(DEPSDIR)/db-6.0.20.NC/build_unix OPENSSL_INCLUDE_PATH:=$(DEPSDIR)/openssl-1.0.2g/include USE_LEVELDB:=0 -USE_IPV6:=1 INCLUDEPATHS= \ -I"$(CURDIR)" \ @@ -56,10 +55,6 @@ DEBUGFLAGS=-g CFLAGS=$(xOPT_LEVEL) -msse2 -w -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter $(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS) LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -static-libgcc -static-libstdc++ -ifneq (${USE_IPV6}, -) - DEFS += -DUSE_IPV6=$(USE_IPV6) -endif - LIBS += -l mingwthrd -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l ole32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi # TODO: make the mingw builds smarter about dependencies, like the linux/osx builds are diff --git a/src/makefile.mingw b/src/makefile.mingw index 121f8de..b0416e9 100644 --- a/src/makefile.mingw +++ b/src/makefile.mingw @@ -5,8 +5,6 @@ USE_LEVELDB:=0 CC=gcc - -USE_IPV6:=1 USE_SSE2:=1 BOOST_SUFFIX?=-mgw49-mt-s-1_57 @@ -46,10 +44,6 @@ DEBUGFLAGS=-g CFLAGS=-mthreads $(xOPT_LEVEL) -msse2 -w -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter $(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS) LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static -ifneq (${USE_IPV6}, -) - DEFS += -DUSE_IPV6=$(USE_IPV6) -endif - LIBS += -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l ole32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi # TODO: make the mingw builds smarter about dependencies, like the linux/osx builds are diff --git a/src/makefile.osx b/src/makefile.osx index 2c5e33f..a567bc4 100644 --- a/src/makefile.osx +++ b/src/makefile.osx @@ -21,7 +21,6 @@ LIBPATHS= \ -L"$(DEPSDIR)/lib/db48" USE_LEVELDB:=0 -USE_IPV6:=1 LIBS= -dead_strip @@ -104,10 +103,6 @@ OBJS= \ obj/ipcollector.o \ obj/serialize.o -ifneq (${USE_IPV6}, -) - DEFS += -DUSE_IPV6=$(USE_IPV6) -endif - all: novacoind # diff --git a/src/makefile.unix b/src/makefile.unix index 69c0d87..9e011fc 100644 --- a/src/makefile.unix +++ b/src/makefile.unix @@ -3,7 +3,6 @@ # file COPYING or http://www.opensource.org/licenses/mit-license.php. USE_LEVELDB:=0 -USE_IPV6:=1 # CC=clang # CXX=clang++ @@ -36,10 +35,6 @@ LIBS += \ -l ssl \ -l crypto -ifneq (${USE_IPV6}, -) - DEFS += -DUSE_IPV6=$(USE_IPV6) -endif - LIBS+= \ -Wl,-B$(LMODE2) \ -l z \ diff --git a/src/net.cpp b/src/net.cpp index 7137f1d..8ff66c1 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -955,11 +955,7 @@ void ThreadSocketHandler2(void* parg) for(SOCKET hListenSocket : vhListenSocket) if (hListenSocket != INVALID_SOCKET && FD_ISSET(hListenSocket, &fdsetRecv)) { -#ifdef USE_IPV6 struct sockaddr_storage sockaddr; -#else - struct sockaddr sockaddr; -#endif socklen_t len = sizeof(sockaddr); SOCKET hSocket = accept(hListenSocket, (struct sockaddr*)&sockaddr, &len); CAddress addr; @@ -1738,11 +1734,7 @@ bool BindListenPort(const CService &addrBind, string& strError) int nOne = 1; // Create socket for listening for incoming connections -#ifdef USE_IPV6 struct sockaddr_storage sockaddr; -#else - struct sockaddr sockaddr; -#endif socklen_t len = sizeof(sockaddr); if (!addrBind.GetSockAddr((struct sockaddr*)&sockaddr, &len)) { @@ -1790,7 +1782,6 @@ bool BindListenPort(const CService &addrBind, string& strError) return false; } -#ifdef USE_IPV6 // some systems don't have IPV6_V6ONLY but are always v6only; others do have the option // and enable it by default or not. Try to enable it, if possible. if (addrBind.IsIPv6()) { @@ -1818,7 +1809,6 @@ bool BindListenPort(const CService &addrBind, string& strError) } #endif } -#endif if (::bind(hListenSocket, (struct sockaddr*)&sockaddr, len) == SOCKET_ERROR) { @@ -1887,7 +1877,6 @@ void static Discover() if (AddLocal(addr, LOCAL_IF)) printf("IPv4 %s: %s\n", ifa->ifa_name, addr.ToString().c_str()); } -#ifdef USE_IPV6 else if (ifa->ifa_addr->sa_family == AF_INET6) { struct sockaddr_in6* s6 = (struct sockaddr_in6*)(ifa->ifa_addr); @@ -1895,7 +1884,6 @@ void static Discover() if (AddLocal(addr, LOCAL_IF)) printf("IPv6 %s: %s\n", ifa->ifa_name, addr.ToString().c_str()); } -#endif } freeifaddrs(myaddrs); } diff --git a/src/netbase.cpp b/src/netbase.cpp index 968d6c6..6268d38 100644 --- a/src/netbase.cpp +++ b/src/netbase.cpp @@ -79,11 +79,7 @@ bool static LookupIntern(const char *pszName, std::vector& vIP, unsign aiHint.ai_socktype = SOCK_STREAM; aiHint.ai_protocol = IPPROTO_TCP; -#ifdef USE_IPV6 aiHint.ai_family = AF_UNSPEC; -#else - aiHint.ai_family = AF_INET; -#endif #ifdef WIN32 aiHint.ai_flags = fAllowLookup ? 0 : AI_NUMERICHOST; #else @@ -104,12 +100,10 @@ bool static LookupIntern(const char *pszName, std::vector& vIP, unsign vIP.push_back(CNetAddr(((struct sockaddr_in*)(aiTrav->ai_addr))->sin_addr)); break; -#ifdef USE_IPV6 case (AF_INET6): assert(aiTrav->ai_addrlen >= sizeof(sockaddr_in6)); vIP.push_back(CNetAddr(((struct sockaddr_in6*)(aiTrav->ai_addr))->sin6_addr)); break; -#endif } aiTrav = aiTrav->ai_next; @@ -285,11 +279,7 @@ bool static ConnectSocketDirectly(const CService &addrConnect, SOCKET& hSocketRe { hSocketRet = INVALID_SOCKET; -#ifdef USE_IPV6 struct sockaddr_storage sockaddr; -#else - struct sockaddr sockaddr; -#endif socklen_t len = sizeof(sockaddr); if (!addrConnect.GetSockAddr((struct sockaddr*)&sockaddr, &len)) { printf("Cannot connect to %s: unsupported network\n", addrConnect.ToString().c_str()); @@ -538,12 +528,10 @@ CNetAddr::CNetAddr(const struct in_addr& ipv4Addr) memcpy(ip+12, &ipv4Addr, 4); } -#ifdef USE_IPV6 CNetAddr::CNetAddr(const struct in6_addr& ipv6Addr) { memcpy(ip, &ipv6Addr, 16); } -#endif CNetAddr::CNetAddr(const char *pszIp, bool fAllowLookup) { @@ -727,11 +715,7 @@ std::string CNetAddr::ToStringIP() const if (IsI2P()) return EncodeBase32(&ip[6], 10) + ".oc.b32.i2p"; CService serv(*this, (uint16_t)0); -#ifdef USE_IPV6 struct sockaddr_storage sockaddr; -#else - struct sockaddr sockaddr; -#endif socklen_t socklen = sizeof(sockaddr); if (serv.GetSockAddr((struct sockaddr*)&sockaddr, &socklen)) { char name[1025] = ""; @@ -776,13 +760,11 @@ bool CNetAddr::GetInAddr(struct in_addr* pipv4Addr) const return true; } -#ifdef USE_IPV6 bool CNetAddr::GetIn6Addr(struct in6_addr* pipv6Addr) const { memcpy(pipv6Addr, ip, 16); return true; } -#endif // get canonical identifier of an address' group // no two connections will be attempted to addresses with the same group @@ -963,23 +945,19 @@ CService::CService(const struct in_addr& ipv4Addr, uint16_t portIn) : CNetAddr(i { } -#ifdef USE_IPV6 CService::CService(const struct in6_addr& ipv6Addr, uint16_t portIn) : CNetAddr(ipv6Addr), port(portIn) { } -#endif CService::CService(const struct sockaddr_in& addr) : CNetAddr(addr.sin_addr), port(ntohs(addr.sin_port)) { assert(addr.sin_family == AF_INET); } -#ifdef USE_IPV6 CService::CService(const struct sockaddr_in6 &addr) : CNetAddr(addr.sin6_addr), port(ntohs(addr.sin6_port)) { assert(addr.sin6_family == AF_INET6); } -#endif bool CService::SetSockAddr(const struct sockaddr *paddr) { @@ -987,11 +965,9 @@ bool CService::SetSockAddr(const struct sockaddr *paddr) case AF_INET: *this = CService(*(const struct sockaddr_in*)paddr); return true; -#ifdef USE_IPV6 case AF_INET6: *this = CService(*(const struct sockaddr_in6*)paddr); return true; -#endif default: return false; } @@ -1063,7 +1039,6 @@ bool CService::GetSockAddr(struct sockaddr* paddr, socklen_t *addrlen) const paddrin->sin_port = htons(port); return true; } -#ifdef USE_IPV6 if (IsIPv6()) { if (*addrlen < (socklen_t)sizeof(struct sockaddr_in6)) return false; @@ -1076,7 +1051,6 @@ bool CService::GetSockAddr(struct sockaddr* paddr, socklen_t *addrlen) const paddrin6->sin6_port = htons(port); return true; } -#endif return false; } diff --git a/src/netbase.h b/src/netbase.h index e6f3e6d..ae5a865 100644 --- a/src/netbase.h +++ b/src/netbase.h @@ -67,10 +67,8 @@ class CNetAddr std::vector GetGroup() const; int GetReachabilityFrom(const CNetAddr *paddrPartner = NULL) const; -#ifdef USE_IPV6 CNetAddr(const struct in6_addr& pipv6Addr); bool GetIn6Addr(struct in6_addr* pipv6Addr) const; -#endif friend bool operator==(const CNetAddr& a, const CNetAddr& b); friend bool operator!=(const CNetAddr& a, const CNetAddr& b); @@ -110,10 +108,8 @@ class CService : public CNetAddr std::string ToStringPort() const; std::string ToStringIPPort() const; -#ifdef USE_IPV6 CService(const struct in6_addr& ipv6Addr, uint16_t port); CService(const struct sockaddr_in6& addr); -#endif IMPLEMENT_SERIALIZE ( diff --git a/src/qt/optionsmodel.cpp b/src/qt/optionsmodel.cpp index 7e80615..346ccb7 100644 --- a/src/qt/optionsmodel.cpp +++ b/src/qt/optionsmodel.cpp @@ -25,10 +25,8 @@ bool static ApplyProxySettings() if (!IsLimited(NET_IPV4)) SetProxy(NET_IPV4, addrProxy); -#ifdef USE_IPV6 - if (!IsLimited(NET_IPV6)) - SetProxy(NET_IPV6, addrProxy); -#endif + if (!IsLimited(NET_IPV6)) + SetProxy(NET_IPV6, addrProxy); SetNameProxy(addrProxy);