diff options
Diffstat (limited to 'contrib')
-rwxr-xr-x | contrib/devtools/previous_release.sh | 5 | ||||
-rwxr-xr-x | contrib/devtools/security-check.py | 20 | ||||
-rw-r--r-- | contrib/gitian-descriptors/gitian-linux.yml | 2 | ||||
-rw-r--r-- | contrib/gitian-descriptors/gitian-osx.yml | 2 | ||||
-rw-r--r-- | contrib/gitian-descriptors/gitian-win.yml | 2 | ||||
-rw-r--r-- | contrib/guix/README.md | 2 | ||||
-rwxr-xr-x | contrib/guix/guix-build.sh | 115 | ||||
-rw-r--r-- | contrib/guix/libexec/build.sh | 194 | ||||
-rw-r--r-- | contrib/guix/manifest.scm | 131 | ||||
-rwxr-xr-x | contrib/seeds/makeseeds.py | 3 | ||||
-rw-r--r-- | contrib/seeds/nodes_main.txt | 951 |
11 files changed, 834 insertions, 593 deletions
diff --git a/contrib/devtools/previous_release.sh b/contrib/devtools/previous_release.sh index efd035f778..5ddfdb4e73 100755 --- a/contrib/devtools/previous_release.sh +++ b/contrib/devtools/previous_release.sh @@ -139,7 +139,10 @@ pushd "$TARGET" || exit 1 fi URL="https://bitcoin.org/$BIN_PATH/bitcoin-${tag:1}-$PLATFORM.tar.gz" echo "Fetching: $URL" - curl -O $URL + if ! curl -O -f $URL; then + echo "Download failed." + exit 1 + fi tar -zxf "bitcoin-${tag:1}-$PLATFORM.tar.gz" -C "$tag" --strip-components=1 "bitcoin-${tag:1}" rm "bitcoin-${tag:1}-$PLATFORM.tar.gz" fi diff --git a/contrib/devtools/security-check.py b/contrib/devtools/security-check.py index c05c38d513..b924698e56 100755 --- a/contrib/devtools/security-check.py +++ b/contrib/devtools/security-check.py @@ -206,6 +206,23 @@ def check_MACHO_NX(executable) -> bool: return False return True +def check_MACHO_LAZY_BINDINGS(executable) -> bool: + ''' + Check for no lazy bindings. + We don't use or check for MH_BINDATLOAD. See #18295. + ''' + p = subprocess.Popen([OTOOL_CMD, '-l', executable], stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE, universal_newlines=True) + (stdout, stderr) = p.communicate() + if p.returncode: + raise IOError('Error opening file') + + for line in stdout.splitlines(): + tokens = line.split() + if 'lazy_bind_off' in tokens or 'lazy_bind_size' in tokens: + if tokens[1] != '0': + return False + return True + CHECKS = { 'ELF': [ ('PIE', check_ELF_PIE), @@ -221,7 +238,8 @@ CHECKS = { 'MACHO': [ ('PIE', check_MACHO_PIE), ('NOUNDEFS', check_MACHO_NOUNDEFS), - ('NX', check_MACHO_NX) + ('NX', check_MACHO_NX), + ('LAZY_BINDINGS', check_MACHO_LAZY_BINDINGS) ] } diff --git a/contrib/gitian-descriptors/gitian-linux.yml b/contrib/gitian-descriptors/gitian-linux.yml index a13a42d391..5d190de54c 100644 --- a/contrib/gitian-descriptors/gitian-linux.yml +++ b/contrib/gitian-descriptors/gitian-linux.yml @@ -1,5 +1,5 @@ --- -name: "bitcoin-core-linux-0.20" +name: "bitcoin-core-linux-0.21" enable_cache: true distro: "ubuntu" suites: diff --git a/contrib/gitian-descriptors/gitian-osx.yml b/contrib/gitian-descriptors/gitian-osx.yml index 58531c81b4..37f2a534b8 100644 --- a/contrib/gitian-descriptors/gitian-osx.yml +++ b/contrib/gitian-descriptors/gitian-osx.yml @@ -1,5 +1,5 @@ --- -name: "bitcoin-core-osx-0.20" +name: "bitcoin-core-osx-0.21" enable_cache: true distro: "ubuntu" suites: diff --git a/contrib/gitian-descriptors/gitian-win.yml b/contrib/gitian-descriptors/gitian-win.yml index c5eea97c77..0cc1adc557 100644 --- a/contrib/gitian-descriptors/gitian-win.yml +++ b/contrib/gitian-descriptors/gitian-win.yml @@ -1,5 +1,5 @@ --- -name: "bitcoin-core-win-0.20" +name: "bitcoin-core-win-0.21" enable_cache: true distro: "ubuntu" suites: diff --git a/contrib/guix/README.md b/contrib/guix/README.md index 8500379025..9f99b36f88 100644 --- a/contrib/guix/README.md +++ b/contrib/guix/README.md @@ -220,8 +220,6 @@ repository and will likely put one up soon. [guix/env-setup]: https://www.gnu.org/software/guix/manual/en/html_node/Build-Environment-Setup.html [guix/substitutes]: https://www.gnu.org/software/guix/manual/en/html_node/Substitutes.html [guix/substitute-server-auth]: https://www.gnu.org/software/guix/manual/en/html_node/Substitute-Server-Authorization.html -[guix/inferiors]: https://www.gnu.org/software/guix/manual/en/html_node/Inferiors.html -[guix/channels]: https://www.gnu.org/software/guix/manual/en/html_node/Channels.html [guix/time-machine]: https://guix.gnu.org/manual/en/html_node/Invoking-guix-time_002dmachine.html [debian/guix-package]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=850644 diff --git a/contrib/guix/guix-build.sh b/contrib/guix/guix-build.sh index 2daa8aba5e..e20b2a048d 100755 --- a/contrib/guix/guix-build.sh +++ b/contrib/guix/guix-build.sh @@ -13,33 +13,106 @@ make -C "${PWD}/depends" -j"$MAX_JOBS" download ${V:+V=1} ${SOURCES_PATH:+SOURCE # Determine the reference time used for determinism (overridable by environment) SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH:-$(git log --format=%at -1)}" +# Execute "$@" in a pinned, possibly older version of Guix, for reproducibility +# across time. time-machine() { guix time-machine --url=https://github.com/dongcarl/guix.git \ - --commit=b3a7c72c8b2425f8ddb0fc6e3b1caeed40f86dee \ + --commit=b066c25026f21fb57677aa34692a5034338e7ee3 \ -- "$@" } -# Deterministically build Bitcoin Core for HOSTs (overriable by environment) -for host in ${HOSTS=x86_64-linux-gnu arm-linux-gnueabihf aarch64-linux-gnu riscv64-linux-gnu}; do +# Function to be called when building for host ${1} and the user interrupts the +# build +int_trap() { +cat << EOF +** INT received while building ${1}, you may want to clean up the relevant + output, deploy, and distsrc-* directories before rebuilding + +Hint: To blow everything away, you may want to use: + + $ git clean -xdff --exclude='/depends/SDKs/*' + +Specifically, this will remove all files without an entry in the index, +excluding the SDK directory. Practically speaking, this means that all ignored +and untracked files and directories will be wiped, allowing you to start anew. +EOF +} + +# Deterministically build Bitcoin Core for HOSTs (overridable by environment) +# shellcheck disable=SC2153 +for host in ${HOSTS=x86_64-linux-gnu arm-linux-gnueabihf aarch64-linux-gnu riscv64-linux-gnu x86_64-w64-mingw32}; do # Display proper warning when the user interrupts the build - trap 'echo "** INT received while building ${host}, you may want to clean up the relevant output and distsrc-* directories before rebuilding"' INT - - # Run the build script 'contrib/guix/libexec/build.sh' in the build - # container specified by 'contrib/guix/manifest.scm' - # shellcheck disable=SC2086 - time-machine environment --manifest="${PWD}/contrib/guix/manifest.scm" \ - --container \ - --pure \ - --no-cwd \ - --share="$PWD"=/bitcoin \ - ${SOURCES_PATH:+--share="$SOURCES_PATH"} \ - ${ADDITIONAL_GUIX_ENVIRONMENT_FLAGS} \ - -- env HOST="$host" \ - MAX_JOBS="$MAX_JOBS" \ - SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH:?unable to determine value}" \ - ${V:+V=1} \ - ${SOURCES_PATH:+SOURCES_PATH="$SOURCES_PATH"} \ - bash -c "cd /bitcoin && bash contrib/guix/libexec/build.sh" + trap 'int_trap ${host}' INT + + ( + # Required for 'contrib/guix/manifest.scm' to output the right manifest + # for the particular $HOST we're building for + export HOST="$host" + + # Run the build script 'contrib/guix/libexec/build.sh' in the build + # container specified by 'contrib/guix/manifest.scm'. + # + # Explanation of `guix environment` flags: + # + # --container run command within an isolated container + # + # Running in an isolated container minimizes build-time differences + # between machines and improves reproducibility + # + # --pure unset existing environment variables + # + # Same rationale as --container + # + # --no-cwd do not share current working directory with an + # isolated container + # + # When --container is specified, the default behavior is to share + # the current working directory with the isolated container at the + # same exact path (e.g. mapping '/home/satoshi/bitcoin/' to + # '/home/satoshi/bitcoin/'). This means that the $PWD inside the + # container becomes a source of irreproducibility. --no-cwd disables + # this behaviour. + # + # --share=SPEC for containers, share writable host file system + # according to SPEC + # + # --share="$PWD"=/bitcoin + # + # maps our current working directory to /bitcoin + # inside the isolated container, which we later cd + # into. + # + # While we don't want to map our current working directory to the + # same exact path (as this introduces irreproducibility), we do want + # it to be at a _fixed_ path _somewhere_ inside the isolated + # container so that we have something to build. '/bitcoin' was + # chosen arbitrarily. + # + # ${SOURCES_PATH:+--share="$SOURCES_PATH"} + # + # make the downloaded depends sources path available + # inside the isolated container + # + # The isolated container has no network access as it's in a + # different network namespace from the main machine, so we have to + # make the downloaded depends sources available to it. The sources + # should have been downloaded prior to this invocation. + # + # shellcheck disable=SC2086 + time-machine environment --manifest="${PWD}/contrib/guix/manifest.scm" \ + --container \ + --pure \ + --no-cwd \ + --share="$PWD"=/bitcoin \ + ${SOURCES_PATH:+--share="$SOURCES_PATH"} \ + ${ADDITIONAL_GUIX_ENVIRONMENT_FLAGS} \ + -- env HOST="$host" \ + MAX_JOBS="$MAX_JOBS" \ + SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH:?unable to determine value}" \ + ${V:+V=1} \ + ${SOURCES_PATH:+SOURCES_PATH="$SOURCES_PATH"} \ + bash -c "cd /bitcoin && bash contrib/guix/libexec/build.sh" + ) done diff --git a/contrib/guix/libexec/build.sh b/contrib/guix/libexec/build.sh index ee207a957c..6ef803340b 100644 --- a/contrib/guix/libexec/build.sh +++ b/contrib/guix/libexec/build.sh @@ -1,6 +1,7 @@ #!/usr/bin/env bash export LC_ALL=C set -e -o pipefail +export TZ=UTC # Check that environment variables assumed to be set by the environment are set echo "Building for platform triple ${HOST:?not set} with reference timestamp ${SOURCE_DATE_EPOCH:?not set}..." @@ -36,23 +37,41 @@ store_path() { --expression='s|"[[:space:]]*$||' } -# Determine output paths to use in CROSS_* environment variables -CROSS_GLIBC="$(store_path glibc-cross-${HOST})" -CROSS_GLIBC_STATIC="$(store_path glibc-cross-${HOST} static)" -CROSS_KERNEL="$(store_path linux-libre-headers-cross-${HOST})" -CROSS_GCC="$(store_path gcc-cross-${HOST})" -CROSS_GCC_LIBS=( "${CROSS_GCC}/lib/gcc/${HOST}"/* ) # This expands to an array of directories... -CROSS_GCC_LIB="${CROSS_GCC_LIBS[0]}" # ...we just want the first one (there should only be one) - # Set environment variables to point Guix's cross-toolchain to the right # includes/libs for $HOST -# -# NOTE: CROSS_C_INCLUDE_PATH is missing ${CROSS_GCC_LIB}/include-fixed, because -# the limits.h in it is missing a '#include_next <limits.h>' -# -export CROSS_C_INCLUDE_PATH="${CROSS_GCC_LIB}/include:${CROSS_GLIBC}/include:${CROSS_KERNEL}/include" -export CROSS_CPLUS_INCLUDE_PATH="${CROSS_GCC}/include/c++:${CROSS_GCC}/include/c++/${HOST}:${CROSS_GCC}/include/c++/backward:${CROSS_C_INCLUDE_PATH}" -export CROSS_LIBRARY_PATH="${CROSS_GCC}/lib:${CROSS_GCC}/${HOST}/lib:${CROSS_GCC_LIB}:${CROSS_GLIBC}/lib:${CROSS_GLIBC_STATIC}/lib" +case "$HOST" in + *mingw*) + # Determine output paths to use in CROSS_* environment variables + CROSS_GLIBC="$(store_path "mingw-w64-x86_64-winpthreads")" + CROSS_GCC="$(store_path "gcc-cross-${HOST}")" + CROSS_GCC_LIBS=( "${CROSS_GCC}/lib/gcc/${HOST}"/* ) # This expands to an array of directories... + CROSS_GCC_LIB="${CROSS_GCC_LIBS[0]}" # ...we just want the first one (there should only be one) + + NATIVE_GCC="$(store_path gcc-glibc-2.27-toolchain)" + export LIBRARY_PATH="${NATIVE_GCC}/lib:${NATIVE_GCC}/lib64" + export CPATH="${NATIVE_GCC}/include" + + export CROSS_C_INCLUDE_PATH="${CROSS_GCC_LIB}/include:${CROSS_GCC_LIB}/include-fixed:${CROSS_GLIBC}/include" + export CROSS_CPLUS_INCLUDE_PATH="${CROSS_GCC}/include/c++:${CROSS_GCC}/include/c++/${HOST}:${CROSS_GCC}/include/c++/backward:${CROSS_C_INCLUDE_PATH}" + export CROSS_LIBRARY_PATH="${CROSS_GCC}/lib:${CROSS_GCC}/${HOST}/lib:${CROSS_GCC_LIB}:${CROSS_GLIBC}/lib" + ;; + *linux*) + CROSS_GLIBC="$(store_path "glibc-cross-${HOST}")" + CROSS_GLIBC_STATIC="$(store_path "glibc-cross-${HOST}" static)" + CROSS_KERNEL="$(store_path "linux-libre-headers-cross-${HOST}")" + CROSS_GCC="$(store_path "gcc-cross-${HOST}")" + CROSS_GCC_LIBS=( "${CROSS_GCC}/lib/gcc/${HOST}"/* ) # This expands to an array of directories... + CROSS_GCC_LIB="${CROSS_GCC_LIBS[0]}" # ...we just want the first one (there should only be one) + + # NOTE: CROSS_C_INCLUDE_PATH is missing ${CROSS_GCC_LIB}/include-fixed, because + # the limits.h in it is missing a '#include_next <limits.h>' + export CROSS_C_INCLUDE_PATH="${CROSS_GCC_LIB}/include:${CROSS_GLIBC}/include:${CROSS_KERNEL}/include" + export CROSS_CPLUS_INCLUDE_PATH="${CROSS_GCC}/include/c++:${CROSS_GCC}/include/c++/${HOST}:${CROSS_GCC}/include/c++/backward:${CROSS_C_INCLUDE_PATH}" + export CROSS_LIBRARY_PATH="${CROSS_GCC}/lib:${CROSS_GCC}/${HOST}/lib:${CROSS_GCC_LIB}:${CROSS_GLIBC}/lib:${CROSS_GLIBC_STATIC}/lib" + ;; + *) + exit 1 ;; +esac # Sanity check CROSS_*_PATH directories IFS=':' read -ra PATHS <<< "${CROSS_C_INCLUDE_PATH}:${CROSS_CPLUS_INCLUDE_PATH}:${CROSS_LIBRARY_PATH}" @@ -74,16 +93,20 @@ export GUIX_LD_WRAPPER_DISABLE_RPATH=yes [ -e /usr/bin/env ] || ln -s --no-dereference "$(command -v env)" /usr/bin/env # Determine the correct value for -Wl,--dynamic-linker for the current $HOST -glibc_dynamic_linker=$( - case "$HOST" in - i686-linux-gnu) echo /lib/ld-linux.so.2 ;; - x86_64-linux-gnu) echo /lib64/ld-linux-x86-64.so.2 ;; - arm-linux-gnueabihf) echo /lib/ld-linux-armhf.so.3 ;; - aarch64-linux-gnu) echo /lib/ld-linux-aarch64.so.1 ;; - riscv64-linux-gnu) echo /lib/ld-linux-riscv64-lp64d.so.1 ;; - *) exit 1 ;; - esac -) +case "$HOST" in + *linux*) + glibc_dynamic_linker=$( + case "$HOST" in + i686-linux-gnu) echo /lib/ld-linux.so.2 ;; + x86_64-linux-gnu) echo /lib64/ld-linux-x86-64.so.2 ;; + arm-linux-gnueabihf) echo /lib/ld-linux-armhf.so.3 ;; + aarch64-linux-gnu) echo /lib/ld-linux-aarch64.so.1 ;; + riscv64-linux-gnu) echo /lib/ld-linux-riscv64-lp64d.so.1 ;; + *) exit 1 ;; + esac + ) + ;; +esac # Environment variables for determinism export QT_RCC_TEST=1 @@ -136,11 +159,27 @@ DISTNAME="$(basename "$SOURCEDIST" '.tar.gz')" # Binary Tarball Building # ########################### -# Similar flags to Gitian -CONFIGFLAGS="--enable-glibc-back-compat --enable-reduce-exports --disable-bench --disable-gui-tests" -HOST_CFLAGS="-O2 -g -ffile-prefix-map=${PWD}=." -HOST_CXXFLAGS="-O2 -g -ffile-prefix-map=${PWD}=." -HOST_LDFLAGS="-Wl,--as-needed -Wl,--dynamic-linker=$glibc_dynamic_linker -static-libstdc++" +# CONFIGFLAGS +CONFIGFLAGS="--enable-reduce-exports --disable-bench --disable-gui-tests" +case "$HOST" in + *linux*) CONFIGFLAGS+=" --enable-glibc-back-compat" ;; +esac + +# CFLAGS +HOST_CFLAGS="-O2 -g" +case "$HOST" in + *linux*) HOST_CFLAGS+=" -ffile-prefix-map=${PWD}=." ;; + *mingw*) HOST_CFLAGS+=" -fno-ident" ;; +esac + +# CXXFLAGS +HOST_CXXFLAGS="$HOST_CFLAGS" + +# LDFLAGS +case "$HOST" in + *linux*) HOST_LDFLAGS="-Wl,--as-needed -Wl,--dynamic-linker=$glibc_dynamic_linker -static-libstdc++" ;; + *mingw*) HOST_LDFLAGS="-Wl,--no-insert-timestamp" ;; +esac # Make $HOST-specific native binaries from depends available in $PATH export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}" @@ -160,7 +199,7 @@ export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}" ${CONFIGFLAGS} \ CFLAGS="${HOST_CFLAGS}" \ CXXFLAGS="${HOST_CXXFLAGS}" \ - LDFLAGS="${HOST_LDFLAGS}" + ${HOST_LDFLAGS:+LDFLAGS="${HOST_LDFLAGS}"} sed -i.old 's/-lstdc++ //g' config.status libtool src/univalue/config.status src/univalue/libtool @@ -169,9 +208,21 @@ export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}" # Perform basic ELF security checks on a series of executables. make -C src --jobs=1 check-security ${V:+V=1} - # Check that executables only contain allowed gcc, glibc and libstdc++ - # version symbols for Linux distro back-compatibility. - make -C src --jobs=1 check-symbols ${V:+V=1} + + case "$HOST" in + *linux*|*mingw*) + # Check that executables only contain allowed gcc, glibc and libstdc++ + # version symbols for Linux distro back-compatibility. + make -C src --jobs=1 check-symbols ${V:+V=1} + ;; + esac + + # Make the os-specific installers + case "$HOST" in + *mingw*) + make deploy ${V:+V=1} + ;; + esac # Setup the directory where our Bitcoin Core build for HOST will be # installed. This directory will also later serve as the input for our @@ -180,9 +231,21 @@ export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}" mkdir -p "${INSTALLPATH}" # Install built Bitcoin Core to $INSTALLPATH make install DESTDIR="${INSTALLPATH}" ${V:+V=1} + + case "$HOST" in + *mingw*) + cp -f --target-directory="$OUTDIR" ./*-setup-unsigned.exe + ;; + esac ( cd installed + case "$HOST" in + *mingw*) + mv --target-directory="$DISTNAME"/lib/ "$DISTNAME"/bin/*.dll + ;; + esac + # Prune libtool and object archives find . -name "lib*.la" -delete find . -name "lib*.a" -delete @@ -196,19 +259,60 @@ export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}" find "${DISTNAME}/lib" -type f -print0 } | xargs -0 -n1 -P"$MAX_JOBS" -I{} "${DISTSRC}/contrib/devtools/split-debug.sh" {} {} {}.dbg - cp "${DISTSRC}/doc/README.md" "${DISTNAME}/" + case "$HOST" in + *mingw*) + cp "${DISTSRC}/doc/README_windows.txt" "${DISTNAME}/readme.txt" + ;; + *linux*) + cp "${DISTSRC}/doc/README.md" "${DISTNAME}/" + ;; + esac # Finally, deterministically produce {non-,}debug binary tarballs ready # for release - find "${DISTNAME}" -not -name "*.dbg" -print0 \ - | sort --zero-terminated \ - | tar --create --no-recursion --mode='u+rw,go+r-w,a+X' --null --files-from=- \ - | gzip -9n > "${OUTDIR}/${DISTNAME}-${HOST}.tar.gz" \ - || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST}.tar.gz" && exit 1 ) - find "${DISTNAME}" -name "*.dbg" -print0 \ - | sort --zero-terminated \ - | tar --create --no-recursion --mode='u+rw,go+r-w,a+X' --null --files-from=- \ - | gzip -9n > "${OUTDIR}/${DISTNAME}-${HOST}-debug.tar.gz" \ - || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST}-debug.tar.gz" && exit 1 ) + case "$HOST" in + *mingw*) + find "${DISTNAME}" -not -name "*.dbg" -print0 \ + | xargs -0r touch --no-dereference --date="@${SOURCE_DATE_EPOCH}" + find "${DISTNAME}" -not -name "*.dbg" \ + | sort \ + | zip -X@ "${OUTDIR}/${DISTNAME}-${HOST//x86_64-w64-mingw32/win64}.zip" \ + || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST//x86_64-w64-mingw32/win64}.zip" && exit 1 ) + find "${DISTNAME}" -name "*.dbg" -print0 \ + | xargs -0r touch --no-dereference --date="@${SOURCE_DATE_EPOCH}" + find "${DISTNAME}" -name "*.dbg" \ + | sort \ + | zip -X@ "${OUTDIR}/${DISTNAME}-${HOST//x86_64-w64-mingw32/win64}-debug.zip" \ + || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST//x86_64-w64-mingw32/win64}-debug.zip" && exit 1 ) + ;; + *linux*) + find "${DISTNAME}" -not -name "*.dbg" -print0 \ + | sort --zero-terminated \ + | tar --create --no-recursion --mode='u+rw,go+r-w,a+X' --null --files-from=- \ + | gzip -9n > "${OUTDIR}/${DISTNAME}-${HOST}.tar.gz" \ + || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST}.tar.gz" && exit 1 ) + find "${DISTNAME}" -name "*.dbg" -print0 \ + | sort --zero-terminated \ + | tar --create --no-recursion --mode='u+rw,go+r-w,a+X' --null --files-from=- \ + | gzip -9n > "${OUTDIR}/${DISTNAME}-${HOST}-debug.tar.gz" \ + || ( rm -f "${OUTDIR}/${DISTNAME}-${HOST}-debug.tar.gz" && exit 1 ) + ;; + esac ) ) + +case "$HOST" in + *mingw*) + cp -rf --target-directory=. contrib/windeploy + ( + cd ./windeploy + mkdir unsigned + cp --target-directory=unsigned/ "$OUTDIR"/bitcoin-*-setup-unsigned.exe + find . -print0 \ + | sort --zero-terminated \ + | tar --create --no-recursion --mode='u+rw,go+r-w,a+X' --null --files-from=- \ + | gzip -9n > "${OUTDIR}/${DISTNAME}-win-unsigned.tar.gz" \ + || ( rm -f "${OUTDIR}/${DISTNAME}-win-unsigned.tar.gz" && exit 1 ) + ) + ;; +esac diff --git a/contrib/guix/manifest.scm b/contrib/guix/manifest.scm index c25ac2977b..86c1a8d27f 100644 --- a/contrib/guix/manifest.scm +++ b/contrib/guix/manifest.scm @@ -10,17 +10,34 @@ (gnu packages file) (gnu packages gawk) (gnu packages gcc) + (gnu packages installers) (gnu packages linux) + (gnu packages mingw) (gnu packages perl) (gnu packages pkg-config) (gnu packages python) (gnu packages shells) + (guix build-system gnu) (guix build-system trivial) (guix gexp) (guix packages) (guix profiles) (guix utils)) +(define (make-ssp-fixed-gcc xgcc) + "Given a XGCC package, return a modified package that uses the SSP function +from glibc instead of from libssp.so. Our `symbol-check' script will complain if +we link against libssp.so, and thus will ensure that this works properly. + +Taken from: +http://www.linuxfromscratch.org/hlfs/view/development/chapter05/gcc-pass1.html" + (package + (inherit xgcc) + (arguments + (substitute-keyword-arguments (package-arguments xgcc) + ((#:make-flags flags) + `(cons "gcc_cv_libc_provides_ssp=yes" ,flags)))))) + (define (make-gcc-rpath-link xgcc) "Given a XGCC package, return a modified package that replace each instance of -rpath in the default system spec that's inserted by Guix with -rpath-link" @@ -102,45 +119,77 @@ desirable for building Bitcoin Core release binaries." base-libc base-gcc)) +(define (make-gcc-with-pthreads gcc) + (package-with-extra-configure-variable gcc "--enable-threads" "posix")) + +(define (make-mingw-pthreads-cross-toolchain target) + "Create a cross-compilation toolchain package for TARGET" + (let* ((xbinutils (cross-binutils target)) + (pthreads-xlibc mingw-w64-x86_64-winpthreads) + (pthreads-xgcc (make-gcc-with-pthreads + (cross-gcc target + #:xgcc (make-ssp-fixed-gcc gcc-9) + #:xbinutils xbinutils + #:libc pthreads-xlibc)))) + ;; Define a meta-package that propagates the resulting XBINUTILS, XLIBC, and + ;; XGCC + (package + (name (string-append target "-posix-toolchain")) + (version (package-version pthreads-xgcc)) + (source #f) + (build-system trivial-build-system) + (arguments '(#:builder (begin (mkdir %output) #t))) + (propagated-inputs + `(("binutils" ,xbinutils) + ("libc" ,pthreads-xlibc) + ("gcc" ,pthreads-xgcc))) + (synopsis (string-append "Complete GCC tool chain for " target)) + (description (string-append "This package provides a complete GCC tool +chain for " target " development.")) + (home-page (package-home-page pthreads-xgcc)) + (license (package-license pthreads-xgcc))))) + + (packages->manifest - (list ;; The Basics - bash-minimal - which - coreutils - util-linux - ;; File(system) inspection - file - grep - diffutils - findutils - ;; File transformation - patch - gawk - sed - ;; Compression and archiving - tar - bzip2 - gzip - xz - zlib - ;; Build tools - gnu-make - libtool - autoconf - automake - pkg-config - ;; Scripting - perl - python-3.7 - ;; Native gcc 9 toolchain targeting glibc 2.27 - (make-gcc-toolchain gcc-9 glibc-2.27) - ;; Cross gcc 9 toolchains targeting glibc 2.27 - (make-bitcoin-cross-toolchain "i686-linux-gnu") - (make-bitcoin-cross-toolchain "x86_64-linux-gnu") - (make-bitcoin-cross-toolchain "aarch64-linux-gnu") - (make-bitcoin-cross-toolchain "arm-linux-gnueabihf") - ;; The glibc 2.27 for riscv64 needs gcc 7 to successfully build (see: - ;; https://www.gnu.org/software/gcc/gcc-7/changes.html#riscv). The final - ;; toolchain is still a gcc 9 toolchain targeting glibc 2.27. - (make-bitcoin-cross-toolchain "riscv64-linux-gnu" - #:base-gcc-for-libc gcc-7))) + (append + (list ;; The Basics + bash-minimal + which + coreutils + util-linux + ;; File(system) inspection + file + grep + diffutils + findutils + ;; File transformation + patch + gawk + sed + ;; Compression and archiving + tar + bzip2 + gzip + xz + zlib + ;; Build tools + gnu-make + libtool + autoconf + automake + pkg-config + ;; Scripting + perl + python-3.7 + ;; Native gcc 9 toolchain targeting glibc 2.27 + (make-gcc-toolchain gcc-9 glibc-2.27)) + (let ((target (getenv "HOST"))) + (cond ((string-suffix? "-mingw32" target) + ;; Windows + (list zip (make-mingw-pthreads-cross-toolchain "x86_64-w64-mingw32") nsis-x86_64)) + ((string-contains target "riscv64-linux-") + (list (make-bitcoin-cross-toolchain "riscv64-linux-gnu" + #:base-gcc-for-libc gcc-7))) + ((string-contains target "-linux-") + (list (make-bitcoin-cross-toolchain target))) + (else '()))))) diff --git a/contrib/seeds/makeseeds.py b/contrib/seeds/makeseeds.py index d516ca10c1..c623d5b5e4 100755 --- a/contrib/seeds/makeseeds.py +++ b/contrib/seeds/makeseeds.py @@ -33,7 +33,8 @@ PATTERN_AGENT = re.compile( r"0.16.(0|1|2|3|99)|" r"0.17.(0|0.1|1|2|99)|" r"0.18.(0|1|99)|" - r"0.19.99" + r"0.19.(0|1|99)|" + r"0.20.99" r")") def parseline(line): diff --git a/contrib/seeds/nodes_main.txt b/contrib/seeds/nodes_main.txt index 89eb1d1638..58f6ad10b5 100644 --- a/contrib/seeds/nodes_main.txt +++ b/contrib/seeds/nodes_main.txt @@ -1,645 +1,679 @@ -2.24.141.73:8333 +2.39.173.126:8333 +2.57.38.133:8333 +2.92.39.39:15426 +2.230.146.163:8333 +5.2.74.175:8333 5.8.18.29:8333 -5.43.228.99:8333 -5.145.10.122:8333 -5.166.35.47:8333 +5.39.222.39:8333 +5.103.137.146:9333 +5.128.87.126:8333 +5.149.250.76:8333 +5.182.39.200:8333 +5.187.55.242:8333 +5.188.62.24:8333 +5.188.62.33:8333 5.188.187.130:8333 +5.189.153.179:8333 +5.198.20.227:8333 5.199.133.193:8333 -5.206.226.216:8333 -5.206.226.231:8333 -13.92.254.226:8335 -13.125.188.128:8333 -18.228.144.20:8333 -23.175.0.200:8333 -23.226.90.172:8333 -23.233.107.28:8333 +5.254.82.130:8333 +13.237.147.15:8333 +18.27.79.17:8333 +20.184.15.116:8433 +23.17.160.159:8333 +23.175.0.212:8333 23.245.24.154:8333 -24.121.16.35:8333 -24.150.94.79:8333 -24.188.200.170:8333 +24.76.122.108:8333 +24.96.73.156:8333 +24.96.125.57:8333 +24.155.196.27:8333 +24.203.88.167:8333 +24.233.245.188:8333 24.246.31.205:8333 -27.102.102.157:8333 31.6.98.94:8333 -31.20.226.115:8333 -31.21.182.79:8333 +31.14.201.156:8333 +31.25.241.224:8335 31.43.140.190:8333 -31.132.135.134:8333 +31.134.121.223:8333 31.173.48.61:8333 -32.214.183.114:8333 -34.231.234.150:8333 -35.209.114.159:8333 -35.213.18.190:8333 -37.97.228.224:8333 -37.116.95.41:8333 -37.123.132.33:8333 -37.133.140.169:8334 -37.134.165.205:8333 -37.191.253.125:8333 -39.108.68.237:7781 -40.78.19.149:8333 -42.60.217.183:8333 +34.203.169.172:8333 +35.178.31.4:8333 +35.185.172.62:8333 +35.206.171.89:8333 +35.208.87.203:8333 +37.61.219.34:8333 +37.143.210.19:8333 +37.143.211.83:8333 +37.235.128.11:8333 +37.252.190.88:8333 +38.102.134.85:8333 +39.109.0.150:8333 +42.200.72.205:8333 43.229.132.102:8333 -45.58.126.138:8333 +45.36.184.6:8333 +45.58.49.35:8333 +45.76.18.47:8333 +45.115.239.108:8333 +46.23.87.218:8333 46.28.132.34:8333 +46.32.50.98:8333 +46.36.97.10:8333 +46.38.237.108:8333 +46.39.129.82:8333 +46.160.195.121:8333 46.166.162.45:20001 -46.166.176.137:8333 -46.227.68.104:8333 -46.227.68.105:8333 -47.74.32.190:8885 -47.89.19.134:30303 -47.97.117.250:8333 -50.2.13.166:8333 -50.5.163.139:8333 -50.34.65.217:8333 -50.66.209.54:8333 -50.67.179.36:8333 -51.15.166.138:8333 -51.15.239.164:8333 +46.188.30.118:8333 +46.229.238.187:8333 +46.254.217.169:8333 +47.52.114.198:8885 +47.88.84.126:8333 +47.108.29.152:8333 +47.108.30.165:8333 +47.222.103.234:8333 +49.245.50.224:8333 +50.53.250.162:8333 +50.225.198.67:6000 51.154.60.34:8333 -51.154.136.60:8333 -52.116.159.247:8333 -54.167.232.37:8333 -58.22.123.120:8333 +54.242.17.7:8333 +58.146.222.198:8333 58.158.0.86:8333 -62.45.159.66:8333 -62.75.191.166:8333 -62.75.210.81:8333 +59.149.205.197:8333 +60.251.129.61:8336 +61.155.5.4:8333 +62.45.4.139:8333 62.97.244.242:8333 -62.107.200.30:8333 +62.109.18.23:8333 +62.133.194.156:8333 62.138.0.217:8333 -62.213.214.207:8333 -64.98.18.21:8333 -65.79.145.209:8333 +62.152.58.16:9421 +63.143.34.98:8333 +63.211.111.122:8333 +63.224.249.240:8333 +64.182.119.36:8333 +64.229.105.111:8333 +65.27.104.112:8333 +65.183.76.73:8333 66.151.242.154:8335 -66.206.13.51:8333 -66.248.206.86:8333 -67.40.207.169:8333 -67.149.252.79:8333 -67.193.189.42:8333 +66.206.13.70:8333 +66.240.237.155:8333 +66.240.237.172:8333 +67.205.140.145:8333 67.210.228.203:8333 -67.220.22.78:8333 +67.221.193.55:8333 67.222.131.151:8333 -68.168.122.2:8333 +68.110.90.111:8333 +68.142.33.36:8333 +68.199.157.183:8333 68.202.128.19:8333 68.206.21.144:8333 69.30.215.42:8333 +69.55.234.74:8333 69.59.18.22:8333 -69.70.170.178:8333 -69.132.150.43:8333 69.145.122.160:8333 -70.26.149.104:8333 -70.51.142.43:8333 -70.63.170.86:8333 -71.57.73.173:8333 -71.237.255.140:8333 -72.24.235.10:8333 -72.95.104.94:8333 -72.231.187.25:8333 -72.253.239.246:8333 -74.78.140.178:8333 -74.83.234.97:8333 +69.175.49.230:8333 +70.64.48.41:8333 +71.33.232.126:8333 +71.73.18.32:8333 +71.146.114.111:8333 +72.53.134.182:8333 +73.126.97.99:8333 +74.83.126.150:8333 74.84.128.158:9333 -74.197.236.58:8333 -74.208.94.172:8333 +74.98.242.97:8333 +74.118.137.119:8333 74.220.255.190:8333 -75.101.96.6:8333 -75.157.77.34:8333 -76.93.183.209:8333 -76.174.129.203:8333 +75.45.51.41:8333 +75.158.39.231:8333 +76.11.17.187:8333 +76.84.79.211:8333 +76.167.179.75:8333 77.53.158.137:8333 -77.85.204.149:8333 -77.120.119.27:8433 -77.134.172.81:8333 -78.42.12.201:8333 -78.58.140.102:8333 -78.108.108.162:8333 -78.119.180.62:8333 +77.119.229.106:8333 +77.120.122.22:8433 +77.120.122.114:8433 +77.163.136.136:8333 +77.220.140.74:8333 +77.247.178.130:8333 78.128.62.52:8333 -78.130.148.218:8885 -78.130.161.76:8333 +78.128.79.22:8333 +78.141.123.99:8333 78.143.214.223:8333 -79.77.33.128:8333 +78.159.99.85:8333 +79.77.33.131:8333 +79.120.70.47:8333 +79.142.129.218:8333 79.175.125.210:8333 -79.175.154.228:8333 -80.79.114.34:8333 +80.47.156.43:8333 80.89.203.172:8001 -80.100.128.128:8333 -80.122.43.78:8333 -80.151.124.127:8333 -80.167.79.174:8333 +80.93.213.246:8333 +80.111.142.213:8333 +80.147.82.165:8333 80.211.191.11:8333 -80.229.151.187:8333 +80.211.245.151:8333 +80.229.28.60:8333 +80.229.168.1:8333 +80.253.94.252:8333 81.4.102.69:8333 -81.4.102.91:8333 -81.6.34.154:8333 -81.7.16.182:8333 -81.7.17.202:8333 -81.25.71.68:8444 +81.7.13.84:8333 +81.10.205.21:8333 +81.117.225.245:8333 +81.177.157.81:39993 81.235.185.150:8333 -82.23.106.56:8333 82.29.58.109:8333 82.117.166.77:8333 -82.145.41.24:8333 +82.118.20.37:8333 +82.146.50.143:8333 82.146.153.130:8333 82.149.97.25:17567 -82.150.180.30:8333 -82.177.176.24:8333 +82.169.130.61:8333 +82.181.179.230:8333 +82.181.218.229:8333 82.194.153.233:8333 -82.197.215.125:8333 +82.195.237.253:8333 82.197.218.97:8333 +82.199.102.10:8333 82.199.102.133:8333 -82.200.205.30:8333 +82.202.197.224:8333 +82.217.245.7:8333 82.221.111.136:8333 -83.32.70.197:8333 -83.58.134.138:8333 -83.85.131.168:8333 -83.163.211.75:8333 +83.89.27.50:8333 +83.89.250.69:8333 +83.167.27.4:8333 83.208.254.182:8333 -83.243.191.199:8333 -84.46.116.71:8333 -84.52.255.147:8333 -84.56.105.17:8333 -84.59.243.22:8333 -84.197.198.167:8333 -84.214.74.65:8333 -84.217.160.164:8333 -84.227.14.62:8333 -84.246.200.122:8333 -85.14.79.26:8333 +83.217.8.31:44420 +83.221.211.116:8335 +83.243.59.41:8333 +83.251.241.0:8333 +84.38.3.249:8333 +84.40.94.170:8333 +84.192.16.234:8333 +84.209.9.23:8333 +84.234.96.115:8333 +84.248.14.210:8333 85.119.83.25:8333 +85.144.119.222:8333 +85.145.238.93:8333 +85.184.138.108:8333 85.190.0.5:8333 -85.192.173.14:8333 -85.214.80.203:8333 -85.214.204.63:8333 -85.229.166.15:8333 -85.233.38.5:8333 +85.202.11.119:8333 +85.204.96.207:8333 +85.208.69.13:8333 +85.214.90.161:8333 +85.240.233.220:8333 +85.241.106.203:8333 +86.15.38.61:8333 86.76.7.132:8333 -86.80.62.194:8333 -86.107.204.50:8333 -86.139.248.102:8333 87.79.68.86:8333 87.79.94.221:8333 -87.99.79.123:8333 -87.104.127.153:8333 -87.117.19.226:8333 +87.118.116.237:8333 87.120.8.5:20008 -87.224.163.66:8333 +87.222.22.255:8333 87.233.181.146:8333 +87.246.46.132:8333 87.249.207.89:8333 88.86.116.140:8333 -88.86.116.141:8333 -88.86.243.241:8333 -88.87.93.52:1691 -88.98.198.130:8333 -88.99.109.66:8333 -88.119.128.36:8333 -88.129.253.46:8333 +88.86.116.142:8333 +88.88.13.249:8333 +88.147.244.250:8333 +88.150.230.95:8333 +88.202.202.221:8333 +88.208.3.195:8333 88.212.44.33:8333 -89.23.35.9:8333 -89.47.217.222:8333 +89.25.80.42:8333 +89.28.117.31:8333 89.106.199.38:8333 89.142.75.60:8333 -89.179.126.97:8333 +89.190.19.162:8333 89.212.9.96:8333 -89.218.198.46:8333 -89.230.96.42:8333 -90.125.157.153:8333 -90.146.97.100:8333 +89.212.75.6:8333 +89.248.250.12:8333 +90.94.83.26:8333 90.182.165.18:8333 -90.227.130.6:8333 -91.92.128.32:8333 -91.123.82.15:8333 -91.135.0.187:8333 -91.152.121.138:8333 -91.178.131.108:8333 91.185.198.234:8333 -91.193.237.88:8333 -91.202.133.75:8885 +91.193.237.116:8333 91.204.99.178:8333 91.204.149.5:8333 +91.210.24.30:8333 +91.211.88.33:8333 91.216.149.28:8333 -91.219.25.232:8333 91.222.128.59:8333 -92.62.231.253:8333 -92.63.192.206:8333 -92.63.197.243:8333 -92.63.197.245:8333 -92.119.112.59:8333 -92.243.244.101:8333 +92.18.180.225:8333 +92.53.89.123:8333 +92.240.69.195:8333 +92.249.143.44:8333 92.255.176.109:8333 -93.38.119.141:8333 -93.50.177.66:8333 -93.79.204.222:10333 -93.115.28.30:11100 -93.115.89.76:8333 +93.57.81.162:8333 +93.90.193.195:8330 +93.90.207.46:8333 +93.115.26.186:20004 93.115.240.26:8333 93.123.180.164:8333 -93.126.94.192:8333 -93.170.128.106:8333 -93.185.103.70:8333 -93.189.145.169:8333 -93.190.142.127:8333 -93.228.3.234:8333 -94.19.128.204:8333 -94.26.49.71:8333 -94.63.65.127:8333 -94.72.143.28:8333 -94.104.217.250:8333 -94.209.115.52:8333 -94.237.72.166:8333 +93.175.204.121:8333 +93.180.178.213:8333 +94.19.7.55:8333 +94.52.112.227:8333 +94.53.2.181:8333 +94.72.143.26:8333 +94.103.120.173:8333 +94.237.64.138:8333 +94.237.80.207:8333 94.242.255.31:8333 95.24.48.84:15426 +95.42.2.113:8333 95.69.249.63:8333 95.79.35.133:8333 95.87.226.56:8333 -95.91.80.140:8333 -95.102.60.168:8333 -95.154.90.99:8333 +95.90.3.210:8333 +95.110.234.93:8333 95.156.252.34:8333 -95.165.175.75:8333 -95.174.125.24:18333 -95.183.54.101:12853 95.211.189.3:8333 -95.213.143.13:8333 -95.213.184.109:778 +95.217.9.207:8333 96.9.80.109:8333 -96.47.122.171:8333 -97.81.244.191:8333 -97.99.13.150:8333 +96.245.218.247:8333 97.104.206.3:8333 -98.116.105.49:8333 -99.224.131.4:8333 -101.92.39.116:8333 -101.100.163.118:8327 +98.29.195.204:8333 +99.231.196.126:8333 101.100.174.24:8333 -101.251.68.146:12337 -102.132.229.253:8333 +101.100.174.240:8333 103.14.244.190:8333 -103.16.128.63:8333 -103.59.144.135:8333 -103.59.144.238:8333 +103.37.205.47:8333 +103.60.109.184:20008 +103.84.84.250:8335 +103.85.190.218:20000 103.99.168.100:8333 103.99.168.130:8333 -103.100.220.46:8333 -103.105.56.82:8333 -103.106.208.207:8333 -103.106.211.107:8333 -103.108.228.51:8333 -104.11.144.71:8333 -104.128.228.252:8333 -104.152.204.204:8333 -104.153.30.236:8333 -104.155.233.13:8333 -104.198.126.116:8333 -104.245.125.251:8333 -106.12.57.72:8333 -106.72.36.96:46289 -106.163.158.127:8333 -107.150.41.179:8333 -107.191.116.103:8333 -108.15.243.207:8333 +103.214.146.86:8333 +104.171.242.155:8333 +104.199.184.15:8333 +104.244.223.151:8333 +105.29.76.194:8333 +107.150.45.18:8333 +107.180.77.21:8333 108.58.252.82:8333 -108.160.202.208:8333 -108.213.205.103:8333 +108.183.77.12:8333 109.72.83.127:8333 109.99.63.159:8333 -109.104.8.48:8333 -109.183.251.77:8333 -109.198.191.22:8333 -109.236.90.122:58333 +109.109.36.19:8333 +109.110.81.90:8333 +109.173.112.224:8333 +109.202.107.125:8333 +109.205.109.56:8333 +109.236.84.141:8333 109.238.81.82:8333 109.248.206.13:8333 -109.252.133.57:8333 -111.90.145.57:8333 -111.90.159.184:50001 -113.35.179.149:8333 +111.40.4.103:8333 +111.90.140.217:8333 +111.90.158.212:8333 +112.213.103.98:8333 113.52.135.125:8333 115.47.141.250:8885 115.70.110.4:8333 -116.58.171.67:8333 -118.1.96.81:8333 -118.103.126.140:28333 -119.29.54.159:8333 -119.207.78.152:8333 -121.211.151.99:8333 +116.87.15.244:8333 +119.17.151.61:8333 +119.171.134.87:8333 +121.18.238.39:8333 +121.78.223.186:8333 +121.98.205.102:8333 122.112.148.153:8339 +122.116.42.140:8333 124.160.119.93:8333 -128.197.128.222:8333 +125.236.215.133:8333 129.13.189.212:8333 129.97.243.18:8333 130.185.77.105:8333 -130.255.187.86:8333 -131.114.10.236:8333 +131.114.10.233:8333 131.188.40.34:8333 132.249.239.163:8333 -133.18.1.114:8333 134.19.186.195:8333 -136.36.123.20:8333 -136.56.42.119:8333 +134.249.187.97:8333 +136.144.215.219:8333 137.226.34.46:8333 -138.68.20.137:8333 +139.9.249.234:8333 141.101.8.36:8333 -145.239.9.3:8333 -145.249.106.103:8333 -146.255.227.182:4033 -147.192.18.175:8333 -147.253.54.26:8333 -148.66.58.58:8333 -148.70.82.85:8333 -149.90.34.119:8333 -150.143.231.72:8333 +143.89.121.207:8333 +143.176.224.104:8333 +144.34.161.65:18333 +147.253.70.208:8333 +148.66.50.82:8335 153.92.127.216:8333 153.120.115.15:8333 -153.124.187.220:8333 -154.209.1.138:8333 -154.211.159.200:8333 -155.4.52.45:8333 +154.52.98.2:8444 +155.4.116.169:8333 156.19.19.90:8333 -157.7.211.107:8333 +156.34.178.138:8333 +157.13.61.66:8333 +157.13.61.67:8333 +158.181.226.33:8333 +159.100.242.254:8333 159.100.248.234:8333 -159.138.45.220:22235 +159.253.98.209:8333 160.16.0.30:8333 -162.154.207.147:8333 -163.158.243.230:8333 -166.62.82.103:32771 +160.20.145.62:8333 +162.62.18.226:8333 +162.62.26.218:8333 +162.209.88.174:8333 +162.244.80.208:8333 +163.158.202.112:8333 +163.172.181.191:8333 166.62.100.55:8333 -167.179.136.11:8333 +167.114.35.12:8333 +168.62.167.209:8200 168.235.74.110:8333 -169.55.182.185:8333 -171.33.177.9:8333 +168.235.90.188:8333 +170.249.37.243:8333 172.99.120.113:8333 -172.105.112.233:8333 -172.110.30.81:8333 173.21.218.95:8333 -173.23.103.30:8000 173.51.177.2:8333 -173.89.28.137:8333 +173.95.72.234:8333 173.208.128.10:8333 -173.249.11.207:18333 +173.209.44.34:8333 +173.231.57.194:8333 +173.255.204.124:8333 174.65.135.60:8333 -176.38.7.43:8333 -176.92.150.12:8333 +174.94.155.224:8333 +174.115.120.186:8333 +176.53.160.170:8333 +176.85.188.213:8333 176.99.2.207:8333 -176.126.167.10:8333 -176.212.185.153:8333 -176.223.136.171:8333 -177.52.173.62:8333 -178.33.136.162:8333 -178.128.39.110:8333 -178.143.50.8:8333 -178.198.60.155:8333 -178.236.137.63:8333 +176.121.14.157:8333 +176.122.157.173:8333 +176.126.85.34:8333 +176.198.120.197:8334 +178.61.141.198:8333 +178.119.183.34:8333 +178.234.29.184:8333 +178.255.42.126:8333 179.48.251.41:8333 -180.150.52.37:8333 +180.150.73.100:8333 +181.47.220.242:8333 +181.170.139.47:8333 +183.110.220.210:30301 183.230.93.139:8333 -184.80.255.250:8333 -184.95.58.166:8336 -184.180.129.98:8333 -185.19.28.195:8333 -185.25.48.184:8333 +184.95.58.164:8663 +184.164.147.82:41333 +185.15.92.18:20993 185.25.60.199:8333 -185.50.68.64:8333 -185.53.158.12:8333 -185.61.79.213:8333 +185.52.3.185:8333 +185.61.138.4:8333 185.64.116.15:8333 +185.83.110.53:8333 +185.83.214.123:8333 185.95.219.53:8333 -185.130.215.73:8333 -185.130.215.187:8333 -185.141.60.127:8333 -185.147.11.108:8333 -185.154.159.164:9992 -185.198.56.77:8333 +185.96.94.24:8333 +185.102.71.6:8333 +185.138.35.183:8333 +185.140.252.253:8333 +185.143.145.113:8333 +185.148.3.227:8333 +185.157.160.220:8333 +185.163.44.44:8333 +185.176.221.32:8333 +185.186.208.162:8333 +185.198.58.47:8333 185.198.59.183:8333 -185.216.140.33:8333 -185.217.241.142:8333 -185.249.199.106:8333 +185.215.224.22:8333 +185.232.28.254:8333 +185.239.236.116:8333 +185.251.161.54:8333 188.42.40.234:18333 188.65.212.138:8333 -188.65.212.211:8333 +188.65.212.157:8333 188.68.45.143:8333 -188.120.246.125:8333 -188.134.5.47:8333 -188.134.6.84:8333 -188.167.101.51:8333 -188.175.77.16:8333 -188.213.168.152:8333 -188.230.245.188:8333 -189.121.185.148:8333 +188.127.229.105:8333 +188.131.177.130:8333 +188.134.8.36:8333 +188.134.88.5:8333 +188.138.17.92:8333 +188.150.157.11:8333 +188.208.111.62:8333 +188.231.177.149:8333 +190.2.145.177:8333 190.104.249.44:8333 -190.184.198.34:8333 -190.210.234.38:8333 -190.218.190.85:8333 +191.209.21.188:8333 192.3.11.20:8333 192.3.11.24:8333 +192.34.56.59:8333 +192.65.170.15:8333 +192.65.170.50:8333 +192.146.137.18:8333 192.166.47.32:8333 -192.167.149.143:8333 192.169.94.29:8333 -192.169.94.70:8333 -192.198.90.98:8333 -192.254.89.134:8333 -192.254.89.220:8333 -193.41.78.125:8333 -193.46.83.8:8333 +192.227.80.83:8333 +192.254.65.126:8333 +193.10.203.23:8334 +193.29.57.4:8333 +193.58.196.212:8333 193.59.41.11:8333 -193.77.135.181:8333 193.84.116.22:8333 +193.108.131.43:8333 +193.148.71.10:8333 +193.169.244.190:8333 +193.194.163.35:8333 193.194.163.53:8333 -194.71.225.55:8333 +194.5.159.197:8333 +194.14.246.205:8333 +194.135.92.96:8333 194.135.135.69:8333 194.158.92.150:8333 -195.13.220.165:8333 +194.187.251.163:31239 +195.56.63.5:8333 195.56.63.10:8333 +195.67.139.54:8333 +195.95.225.17:8333 195.135.194.8:8333 -195.168.36.20:8333 -195.201.33.0:8333 -195.202.169.149:8333 -195.242.93.189:8333 +195.154.113.90:8333 +195.206.20.114:8333 +195.206.105.42:8333 +195.209.249.164:8333 +195.224.116.20:8333 198.1.231.6:8333 -198.44.231.160:6333 -198.54.113.59:8333 198.251.83.19:8333 -199.68.199.4:8333 -199.247.1.117:8333 -199.247.10.26:8333 +199.48.83.58:8333 +199.96.50.211:8333 +199.188.204.25:8333 +199.192.20.201:8333 200.76.194.7:8333 -201.241.2.85:8333 -202.185.45.110:8333 -203.86.207.53:8333 +200.87.116.213:8333 +202.28.194.82:8333 +202.55.87.45:8333 203.130.48.117:8885 +203.132.95.10:8333 204.14.245.180:8333 -204.111.241.195:8333 204.152.203.98:8333 -205.185.122.150:8333 -206.124.149.66:8333 -207.182.154.178:8333 -208.81.1.105:8333 -209.133.201.114:8333 -209.173.25.140:8333 -209.180.174.200:8333 -209.190.36.13:8333 -210.54.38.227:8333 -210.54.39.99:8333 -210.203.222.52:8223 -211.104.154.140:8333 -212.24.103.20:8333 -212.33.204.190:8333 -212.51.156.139:8333 -212.109.198.126:8333 -212.237.96.98:8333 +205.209.162.98:8333 +206.221.178.149:8333 +208.110.99.105:8333 +209.133.220.74:8333 +209.151.237.71:8333 +211.149.170.31:8333 +212.51.132.226:8333 212.241.70.213:8333 -213.37.92.163:8333 -213.89.98.199:8333 -213.89.150.13:8333 -213.174.156.72:8333 -213.209.123.165:8333 +213.21.15.22:8333 +213.136.83.8:8333 213.227.152.108:8333 -216.38.129.164:8333 -216.86.154.215:8333 -216.93.139.63:8333 -216.186.250.53:8333 +213.254.23.116:8333 +216.108.236.180:8333 216.194.165.98:8333 -217.22.132.220:8333 -217.43.72.105:8333 +216.236.164.82:8333 +217.16.185.165:8333 +217.21.24.146:8333 +217.26.32.10:8333 217.64.47.138:8333 -217.69.145.234:8333 -217.158.9.102:8333 -220.130.142.178:33389 +217.64.133.220:8333 +217.92.55.246:8333 +217.172.244.9:8333 +218.75.140.45:8333 +219.75.122.47:8333 220.233.138.130:8333 -[2001:1ba8:401:32:b842:3891:5915:c68f]:8333 +221.130.29.230:18421 +222.122.49.40:8333 +222.186.169.1:8333 +222.222.43.29:8333 +223.16.30.175:8333 [2001:1bc0:cc::a001]:8333 +[2001:1c02:2f18:d00:b62e:99ff:fe49:d492]:8333 [2001:250:200:7:d6a9:fcf4:e78d:2d82]:8333 -[2001:4128:6135:e001:5054:ff:fe37:e9eb]:8333 -[2001:41d0:fc63:9c00:1acc:d22f:3f5c:ef7f]:8333 +[2001:41c9:1:424::231]:8333 +[2001:41d0:1004:19b4::]:8333 [2001:44b8:4195:1801:5c73:5d67:d2a6:9910]:8333 +[2001:470:88ff:2e::1]:8333 +[2001:470:a:c13::2]:8333 [2001:4800:7821:101:be76:4eff:fe04:9f50]:8333 -[2001:4801:7819:74:b745:b9d5:ff10:a61a]:8333 -[2001:4801:7821:77:be76:4eff:fe10:c7f6]:8333 +[2001:4801:7819:74:b745:b9d5:ff10:aaec]:8333 [2001:48d0:1:2163:0:ff:febe:5a80]:8333 -[2001:48f8:1003::3ba]:8333 [2001:4ba0:fffa:5d::93]:8333 -[2001:4c48:2:a328:d8a7:e0ff:fe96:403a]:8333 -[2001:56b:dda9:4b00:49f9:121b:aa9e:de30]:8333 [2001:638:a000:4140::ffff:191]:8333 [2001:678:7dc:8::2]:8333 [2001:678:ec:1:250:56ff:fea7:47e9]:8333 +[2001:67c:10ec:2a49:8000::1082]:8333 [2001:67c:16dc:1201:5054:ff:fe17:4dac]:8333 [2001:67c:21ec:1000::a]:8333 -[2001:67c:22fc:1337::5]:8333 -[2001:67c:2824:8001:225:90ff:fe67:9830]:7777 -[2001:67c:2b5c:101:216:3eff:fea3:5234]:8333 -[2001:67c:2db8:13::83]:8333 +[2001:67c:26b4:12:7ae3:b5ff:fe04:6f9c]:8333 +[2001:67c:2db8:6::45]:8333 +[2001:700:300:1513:29c7:2430:190e:ab59]:8333 [2001:718:801:311:5054:ff:fe19:c483]:8333 -[2001:8003:d136:1001::11:ffd1]:8333 -[2001:8d8:96a:9300::ad:ae2c]:8333 -[2001:8f1:1602:700:1b28:a3e3:bb08:a708]:9444 -[2001:8f8:1327:1587:3f10:5ab:804d:4039]:8333 +[2001:818:e245:f800:4df:2bdf:ecf5:eb60]:8333 +[2001:8f1:1404:3700:8e49:715a:2e09:b634]:9444 [2001:ba8:1f1:f069::2]:8333 +[2001:bb8:4008:20:648c:5eff:fe74:ce4]:8333 +[2001:da8:d800:821:a7d5:f5a7:530d:b71e]:8333 [2001:e42:103:100::30]:8333 -[2400:2650:480:bc00:bcaf:7c49:8c9e:7cdf]:8333 +[2001:e68:7400:2:6854:419e:221c:82f3]:8333 +[2002:b610:1ca3::b610:1ca3]:8333 +[2002:b6ff:3dca::b6ff:3dca]:28364 +[2400:2651:42e0:3300:40b4:576d:d14c:65d4]:8333 [2400:4052:e20:4f00:69fe:bb33:7b1c:a1ca]:8333 -[2400:8902::f03c:91ff:fea5:ebb7]:8333 -[2401:1800:7800:102:be76:4eff:fe1c:a7d]:8333 [2401:2500:203:184::15]:8333 [2401:3900:2:1::2]:8333 -[2402:7340:1:56::d0d]:8333 -[2405:9800:ba01:251a:c53c:b80a:320d:5b41]:8333 +[2401:a400:3200:5600:14ee:f361:4bdc:1f7c]:8333 +[2401:d002:4402:0:8f28:591a:6ea0:c683]:8333 +[2402:cb40:1000:504::dead]:8333 [2405:aa00:2::40]:8333 [2409:10:ca20:1df0:224:e8ff:fe1f:60d9]:8333 -[2409:13:1200:d200:16da:e9ff:fee9:b19a]:8333 -[240d:1a:3c0:ab00:e9f1:87c:93ac:7687]:8333 -[2602:ffc5:1f::1f:9211]:8333 -[2604:2000:ffc0:0:5862:b6f8:fe72:762f]:8333 +[2409:8a15:4a1a:2830:7285:c2ff:fe70:60a4]:8333 +[2409:8a1e:6938:d2c0:2e0:70ff:fe86:cb59]:8333 +[2409:8a28:421:2580:2e0:70ff:fe8b:13e]:8333 +[2409:8a28:421:2770:2e0:70ff:fe87:fecb]:8333 +[240d:1a:759:6000:ddab:3141:4da0:8878]:8333 +[2600:3c01::f03c:91ff:fecd:1b95]:8333 +[2600:6c40:7980:27:20a:f7ff:fe69:f4d5]:8333 +[2602:ffc5::ffc5:b844]:8333 +[2604:2d80:c808:857b:8d6:9e1c:7131:4bea]:8333 [2604:4300:a:2e:21b:21ff:fe11:392]:8333 +[2604:5500:c134:4000::3fc]:32797 [2604:5500:c2a3:7b00:cc6:373b:44a8:caa4]:8333 -[2605:9880:201:17::4b7c]:8333 +[2604:6000:6e85:4a01:a82d:f9ff:fef5:28b9]:8333 +[2604:7780:303:80::80]:8333 +[2605:4d00::50]:8333 +[2605:9880:0:777:225:90ff:fefc:8958]:8333 [2605:ae00:203::203]:8333 [2605:c000:2a0a:1::102]:8333 +[2605:e000:1127:8fc:ec63:a191:32c2:633c]:8333 +[2605:e200:d202:300:20c:29ff:fef1:85ec]:8333 [2605:f700:100:400::131:5b54]:8333 [2606:c680:0:b:3830:34ff:fe66:6663]:8333 -[2607:9280:b:73b:250:56ff:fe21:bf32]:8333 +[2607:4480:2:1:38:102:69:70]:8333 +[2607:9280:b:73b:250:56ff:fe21:9c2f]:8333 [2607:f128:40:1703::2]:8333 -[2607:f3a0:1000:9:f82a:fdff:fea1:3315]:8333 -[2607:f470:8:1048:ae1f:6bff:fe68:5e42]:8333 -[2607:fd70:4a:babe:b00b:1e5:1bd5:f78]:8333 -[2607:ff50:0:71::13]:8333 +[2607:f188:0:4:eef4:bbff:fecc:6668]:8333 +[2607:f2c0:e1e2:11:1044:9b7a:b81e:1d74]:8333 +[2607:f470:8:1048:ae1f:6bff:fe70:7240]:8333 +[2620:11c:5001:1118:d267:e5ff:fee9:e673]:8333 [2620:6e:a000:1:42:42:42:42]:8333 +[2804:14d:baa7:9674:21e:67ff:fea8:d799]:8333 [2804:14d:baa7:9674:3615:9eff:fe23:d610]:8333 -[2a00:1328:e101:c00::163]:8333 +[2804:39e8:ff85:a600:7285:c2ff:feae:9925]:8333 +[2804:d41:aa01:1600:5a2d:3b27:3b83:2b45]:8333 +[2a00:12d8:7001:1:46e7:6915:75be:92f9]:8333 [2a00:1398:4:2a03:215:5dff:fed6:1033]:8333 -[2a00:13a0:3015:1:85:14:79:26]:8333 [2a00:1630:14::101]:8333 [2a00:1768:2001:27::ef6a]:8333 [2a00:1828:a004:2::666]:8333 -[2a00:1838:36:2c::3e95]:8333 -[2a00:1b60:2:4:40d0:eff:fe88:ebd4]:8333 +[2a00:1838:36:142::ec73]:8333 +[2a00:1838:36:7d::d3c6]:8333 +[2a00:1f40:2::1126]:8333 +[2a00:23a8:41d0:5800:20c:29ff:fe0d:6a75]:8333 +[2a00:23c5:fd01:9f00:6317:7c02:788f:88ea]:8333 +[2a00:6020:13c2:3800:be6a:a1c8:c9e7:65ec]:8333 +[2a00:63c2:8:88::2]:8333 +[2a00:7143:3::227]:8333 [2a00:7b80:452:2000::138]:8333 -[2a00:7b80:454:2000::101]:8333 [2a00:8a60:e012:a00::21]:8333 -[2a01:4240:5f52:9246::1]:8333 +[2a00:ca8:a1f:3025:f949:e442:c940:13e8]:8333 +[2a00:d70:0:15:f816:3eff:fe73:d819]:8333 +[2a00:d880:5:331::3978]:8333 +[2a01:238:420f:9200:fa5a:1a4b:1e6a:fadf]:8333 [2a01:430:17:1::ffff:1153]:8333 [2a01:488:66:1000:53a9:1573:0:1]:8333 -[2a01:6f0:ffff:120::8dcb]:8333 +[2a01:4f8:120:80cc::2]:8433 +[2a01:5f0:beef:5:0:3:0:1]:52101 +[2a01:79c:cebc:a630:9dd8:ef55:8374:92a1]:8333 [2a01:7a0:2:137a::11]:8333 -[2a01:7a7:2:131b:20c:29ff:fe9a:3922]:8333 -[2a01:7c8:d002:318:5054:ff:febe:cbb1]:8333 +[2a01:7a0:2:137c::3]:8333 +[2a01:7c8:aab6:db:5054:ff:feca:cfc8]:8333 +[2a01:8b81:6403:4700::1]:8333 +[2a01:cb00:7cd:b000:fa1f:bd1:fe0:62a6]:8333 [2a01:cb00:d3d:7700:227:eff:fe28:c565]:8333 -[2a01:d0:ffff:7368::2]:8333 -[2a01:e0a:182:1300:591e:529:b376:c654]:8333 +[2a01:d0:bef2::12]:8333 +[2a01:d0:f34f:1:1f67:e250:6aeb:b9c4]:8333 [2a01:e34:ee6b:2ab0:88c2:1c12:f4eb:c26c]:8333 -[2a02:1205:34c3:d890:c0e:741e:c45f:3605]:8333 -[2a02:2c8:1:400:34::184]:8333 -[2a02:2f0d:202:f900:5e9a:d8ff:fe57:8bc5]:8333 +[2a01:e35:2fba:2e90:1:0:b:1]:8333 +[2a02:1205:505d:eb50:beae:c5ff:fe42:a973]:8333 +[2a02:120b:2c3f:a90:10dd:31ff:fe42:5079]:8333 +[2a02:130:300:1520:1::2]:8333 +[2a02:13b8:4000:1000:216:e6ff:fe92:8619]:8333 +[2a02:180:1:1::5b8f:538c]:8333 +[2a02:2168:8062:db00:96de:80ff:fea3:fd00]:8333 +[2a02:2770:5:0:21a:4aff:fe44:8370]:8333 +[2a02:2788:864:fb3:5b8a:c8f7:9fff:ae2d]:8333 +[2a02:2f0d:607:bc00:5e9a:d8ff:fe57:8bc5]:8333 +[2a02:348:9a:83b1::1]:8333 [2a02:390:9000:0:218:7dff:fe10:be33]:8333 -[2a02:4780:9:0:2:f928:f280:9a6f]:8333 +[2a02:4780:8:6:2:354e:1256:7a04]:8333 [2a02:578:4f07:24:76ad:cef7:93c1:b9b9]:8333 -[2a02:7aa0:1619::590:eba2]:8333 +[2a02:6d40:30f6:e901:89b8:bb58:25a:6050]:8333 +[2a02:750:7:c11:5054:ff:fe43:eb81]:8333 [2a02:7aa0:1619::adc:8de0]:8333 +[2a02:7b40:4f62:19ae::1]:8333 [2a02:8108:95bf:eae3:211:32ff:fe8e:b5b8]:8333 -[2a02:c207:2014:9913::1]:18333 [2a02:e00:fff0:23f::1]:8333 -[2a02:f680:1:1100::5453]:8333 +[2a02:e00:fff0:23f::a]:8333 [2a03:1b20:1:f410:40::3e]:16463 -[2a03:2260:11e:301::8]:8333 -[2a03:2260:11e:302::3]:8333 -[2a03:4000:6:416c::43]:8333 +[2a03:6000:870:0:46:23:87:218]:8333 +[2a03:9da0:f6:1::2]:8333 +[2a03:e2c0:1ce::2]:8333 +[2a04:2180:0:2::f2]:8333 [2a04:2180:1:c:f000::15]:8333 -[2a04:3543:1000:2310:8492:b8ff:fe91:22e8]:8333 -[2a05:6d40:b94e:d100:225:90ff:fe0d:cfc2]:8333 -[2a05:fc87:4::6]:8333 +[2a04:52c0:101:97f::dcbe]:8333 +[2a04:ee41:83:50df:d908:f71d:2a86:b337]:8333 +[2a05:1700::100]:8333 +[2a05:fc87:4::2]:8333 +[2a05:fc87:4::7]:8333 +[2a07:5741:0:69d::1]:8333 +[2a07:5741:0:7cd::1]:8333 [2a07:7200:ffff:c53f::e1:17]:8333 -[2a0b:2ac0:1:0:d6ae:52ff:fe7b:741c]:8333 -[2a0b:2ac0:1:0:d6ae:52ff:fe7b:88eb]:8333 -25lhwv6jaqbtek5x.onion:8333 +[2a07:b400:1:34c::2:1002]:8333 +[2a0b:ae40:3:4a0a::15]:8333 +[2a0e:b780::55d1:f05b]:8333 +[2c0f:fce8:0:400:b7c::1]:8333 2empatdfea6vwete.onion:8333 -2hpjn6ndxjafgoej.onion:8333 34aqcwnnuiqh234f.onion:8333 -3frtobxxkgkhwjx7.onion:8333 3gxqibajrtysyp5o.onion:8333 -3lf37sdzhpxh6fpv.onion:8333 -3q5iydjrrutqjb2y.onion:8333 -3qzrkpxduf44jqg5.onion:8333 3sami4tg4yhctjyc.onion:8333 3w77hrilg6q64opl.onion:8333 46xh2sbjsjiyl4fu.onion:8333 4ee44qsamrjpywju.onion:8333 -4gwvtoppsaffaxg7.onion:8333 4haplrtkprjqhm2j.onion:8333 4u3y3zf2emynt6ui.onion:8333 -4wx34hn3kybujklg.onion:8333 -56czufbruq46sb2c.onion:8333 57dytizbai7o4kq7.onion:8333 5guaeulc7xm4g2mm.onion:8334 5mtvd4dk62ccdk4v.onion:8333 -5nsfm4nqqzzprjrp.onion:8333 5pmjz6mmikyabaw5.onion:8333 6eurcxoqsa4qpiqq.onion:8333 6ivvkeseojsmpby4.onion:8333 -6luc7owlbbaj52lr.onion:8333 6tlha6njtcuwpfa3.onion:8333 6ymgbvnn6d5nfmv4.onion:8333 -6z5cyaswulhxcvhj.onion:8333 72y2n5rary4mywkz.onion:8333 -7a354g25lnvry4ic.onion:8333 7b75ub5dapphemit.onion:8333 7xaqpr7exrtlnjbb.onion:8333 a64haiqsl76l25gv.onion:8333 @@ -650,103 +684,64 @@ akinbo7tlegsnsxn.onion:8333 anem5aq4cr2zl7tz.onion:8333 at3w5qisczgguije.onion:8333 auo4zjsp44vydv6c.onion:8333 -b6vrxhrrle7jxiua.onion:8333 -bitcoinranliixsu.onion:8333 -blcktrgve5vetjsk.onion:8333 bowg4prf63givea4.onion:8333 -cj2nexmwocyy5unq.onion:8333 cjuek22p4vv4hzbu.onion:8333 cklaa2xdawrb75fg.onion:8333 coxiru76nnfw3vdj.onion:8333 -cqwcyvvk5xnqv3yw.onion:8333 cwq2fuc54mlp3ojc.onion:8333 dganr7dffsacayml.onion:8333 djbsspmvlc6ijiis.onion:8333 dmfwov5ycnpvulij.onion:8333 dp2ekfbxubpdfrt4.onion:8333 dw2ufbybrgtzssts.onion:4333 -dxv5u4xaeydpbrrp.onion:8333 edkmfeaapvavhtku.onion:8333 ejdoey3uay3cz7bs.onion:8333 eladlvwflaahxomr.onion:8333 ffhx6ttq7ejbodua.onion:8333 -fqdzxl4kjboae35b.onion:8333 hbnnzteon75un65y.onion:8333 hcyxhownxdv7yybw.onion:8333 hdfcxll2tqs2l4jc.onion:8333 hdld2bxyvzy45ds4.onion:8333 +hlnnhn2xj2qffqjs.onion:8333 hnqwmqikfmnkpdja.onion:8333 hvmjovdasoin43wn.onion:8333 hwzcbnenp6dsp6ow.onion:8333 -hz26wamjlbd7arrl.onion:8333 i5ellwzndjuke242.onion:8333 iapvpwzs4gpbl6fk.onion:8885 if7fsvgyqwowxkcn.onion:8333 ilukzjazxlxrbuwy.onion:8333 -ju5duo3r6p6diznc.onion:8333 -k3i3suxlg4w27uas.onion:8333 -k7omfveynnjg674e.onion:8333 -ko37ti7twplktxqu.onion:8333 kswfyurnglm65u7b.onion:8333 ldu2hbiorkvdymja.onion:8333 -lftugyhf6vnouikf.onion:8333 -ln3csnn6774nzgyn.onion:8333 -lvh7k53s62frc6ro.onion:8333 lvvgedppmpigudhz.onion:8333 -mbjkotfqcn5gnsrm.onion:8333 mk3bnep5ubou7i44.onion:8333 muhp42ytbwi6qf62.onion:8333 n5khsbd6whw7ooip.onion:8333 -na6otugfitr7pnlv.onion:8333 -nclrhbeertvin7cu.onion:8333 ndmbrjcvu2s6jcom.onion:8333 nf4iypnyjwfpcjm7.onion:8333 nkdw6ywzt3dqwxuf.onion:8333 -nqmxpgrpuysullkq.onion:8333 -ntml2aeumyglyjlk.onion:8333 o4sl5na6jeqgi3l6.onion:8333 opencubebqqx3buj.onion:8333 -oudab5q7ruclifdv.onion:8333 ovbkvgdllk3xxeah.onion:8333 pg2jeh62fkq3byps.onion:8333 -pgufebhe6mt7knqz.onion:8333 pkcgxf23ws3lwqvq.onion:8333 -po3j2hfkmf7sh36o.onion:8333 qdtau72ifwauot6b.onion:8333 qidnrqy2ozz3nzqq.onion:8333 -qpebweackyztorrm.onion:8333 -qsl3x63225alx4bt.onion:8333 readybit5veyche6.onion:8333 -rjw6vpw5ffoncxuh.onion:8333 s2epxac7ovy36ruj.onion:8333 -srkgyv5edn2pa7il.onion:8333 +satofxsc3xjadxsm.onion:8333 sv5oitfnsmfoc3wu.onion:8333 -tdlpmqnpfqehqj7c.onion:8333 -ttx7ddwltrixannm.onion:8333 uftbw4zi5wlzcwho.onion:8333 -uoailgcebjuws47e.onion:8333 -uqvucqhplwqbjrsb.onion:8333 uz3pvdhie3372vxw.onion:8333 v2x7gpj3shxfnl25.onion:8333 -vdhrg3k2akmf6kek.onion:8333 vov46htt6gyixdmb.onion:8333 -vrfs5jwtfzj2ss6n.onion:8333 -vwpcfguewxhky4iy.onion:8333 wg3b3qxcwcrraq2o.onion:8333 wgeecjm4w4ko66f7.onion:8333 wmxc6ask4a5xyaxh.onion:8333 wqrafn4zal3bbbhr.onion:8333 -xagzqmjgwgdvl2di.onion:8333 xhi5x5qc44elydk4.onion:8333 xk6bjlmgvwojvozj.onion:8333 xmgr7fsmp7bgburk.onion:8333 xocvz3dzyu2kzu6f.onion:8333 xv7pt6etwxiygss6.onion:8444 -xz563swdjd7yqymb.onion:8333 yumx7asj7feoozic.onion:8333 -yzmyolvp55rydnsm.onion:8333 -z3forfpyjyxxgfr5.onion:8333 -z5x2wes6mhbml2t5.onion:8333 zmaddsqelw2oywfb.onion:8444 -zqlojwtc4lsurgie.onion:8333 -zvwc7ad4m2dvc74x.onion:8333 |