summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
Diffstat (limited to 'contrib')
-rw-r--r--contrib/DNS-LDNS/META.yml6
-rw-r--r--contrib/android/15-android.conf37
-rwxr-xr-xcontrib/android/bootstrap_ldns.sh55
-rwxr-xr-xcontrib/android/install_ndk.sh60
-rwxr-xr-xcontrib/android/install_openssl.sh44
-rwxr-xr-xcontrib/android/install_tools.sh26
-rwxr-xr-xcontrib/android/setenv_android.sh203
-rw-r--r--contrib/ios/15-ios.conf41
-rwxr-xr-xcontrib/ios/bootstrap_ldns.sh55
-rwxr-xr-xcontrib/ios/install_openssl.sh52
-rwxr-xr-xcontrib/ios/install_tools.sh9
-rw-r--r--contrib/ios/openssl.patch48
-rwxr-xr-xcontrib/ios/setenv_ios.sh274
-rw-r--r--contrib/ldnsx/ldnsx.py2
-rw-r--r--contrib/python/ldns.i4
-rw-r--r--contrib/python/ldns_rdf.i67
16 files changed, 72 insertions, 911 deletions
diff --git a/contrib/DNS-LDNS/META.yml b/contrib/DNS-LDNS/META.yml
index 79efd69d9e45..3a7f6465d8fc 100644
--- a/contrib/DNS-LDNS/META.yml
+++ b/contrib/DNS-LDNS/META.yml
@@ -10,7 +10,7 @@ configure_requires:
Devel::CheckLib: '0.9'
ExtUtils::MakeMaker: '0'
dynamic_config: 0
-generated_by: 'Dist::Zilla version 6.024, CPAN::Meta::Converter version 2.150010'
+generated_by: 'Dist::Zilla version 6.030, CPAN::Meta::Converter version 2.150010'
license: restrictive
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -25,5 +25,5 @@ requires:
strict: '0'
warnings: '0'
version: '0.61'
-x_generated_by_perl: v5.34.0
-x_serialization_backend: 'YAML::Tiny version 1.73'
+x_generated_by_perl: v5.38.2
+x_serialization_backend: 'YAML::Tiny version 1.74'
diff --git a/contrib/android/15-android.conf b/contrib/android/15-android.conf
deleted file mode 100644
index e1fc91e703f2..000000000000
--- a/contrib/android/15-android.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-#### Android...
-#
-# Heavily hacked 15-android.conf based on OpenSSL's config file of the same name.
-# This 15-android.conf avoids compiler errors using NDK-r20. This 15-android.conf
-# requires an environment set (sourced) using setenv-android.sh.
-
-my %targets = (
- "android" => {
- inherit_from => [ "linux-generic32" ],
- template => 1,
- bin_cflags => add("-fPIE"),
- bin_lflags => add("-pie"),
- enable => [ ],
- },
-
- "android-arm" => {
- inherit_from => [ "android", asm("armv4_asm") ],
- bn_ops => [ "BN_LLONG", "RC4_CHAR" ],
- },
- "android-arm64" => {
- inherit_from => [ "android", asm("aarch64_asm") ],
- bn_ops => [ "SIXTY_FOUR_BIT_LONG", "RC4_CHAR" ],
- perlasm_scheme => "linux64",
- },
-
- "android-x86" => {
- inherit_from => [ "android", asm("x86_asm") ],
- cflags => add(picker(release => "-fomit-frame-pointer")),
- bn_ops => [ "BN_LLONG", "RC4_INT" ],
- perlasm_scheme => "android",
- },
- "android-x86_64" => {
- inherit_from => [ "android", asm("x86_64_asm") ],
- bn_ops => [ "SIXTY_FOUR_BIT_LONG", "RC4_INT" ],
- perlasm_scheme => "elf",
- },
-);
diff --git a/contrib/android/bootstrap_ldns.sh b/contrib/android/bootstrap_ldns.sh
deleted file mode 100755
index 7e423030ccae..000000000000
--- a/contrib/android/bootstrap_ldns.sh
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/env bash
-
-if ! git submodule update --init; then
- echo "Failed to init submodule"
- exit 1
-fi
-
-echo "AUTOTOOLS_BUILD: $AUTOTOOLS_BUILD"
-echo "AUTOTOOLS_HOST: $AUTOTOOLS_HOST"
-
-# libtool complains about our updated config.guess and config.sub.
-# Remove them to get through bootstrap. Re-add them after libtoolize.
-
-echo "Running libtoolize"
-if [ -n "$(command -v glibtoolize)" ]; then
- rm -f config.guess config.sub
- if ! glibtoolize -ci ; then
- echo "Failed to libtoolize (glibtoolize)"
- exit 1
- fi
-elif [ -n "$(command -v libtoolize)" ]; then
- rm -f config.guess config.sub
- if ! libtoolize -ci ; then
- echo "Failed to libtoolize (libtoolize)"
- exit 1
- fi
-else
- echo "Failed to find a libtool"
- exit 1
-fi
-
-echo "Updating config.guess"
-if ! wget -q -O config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'; then
- echo "Failed to download config.guess"
-fi
-
-echo "Updating config.sub"
-if ! wget -q -O config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'; then
- echo "Failed to download config.sub"
-fi
-
-echo "Fixing config permissions"
-chmod a+x config.guess config.sub
-if [ -n "$(command -v xattr 2>/dev/null)" ]; then
- xattr -d com.apple.quarantine config.guess 2>/dev/null
- xattr -d com.apple.quarantine config.sub 2>/dev/null
-fi
-
-echo "Running autoreconf"
-if ! autoreconf -fi ; then
- echo "Failed to autoreconf"
- exit 1
-fi
-
-exit 0
diff --git a/contrib/android/install_ndk.sh b/contrib/android/install_ndk.sh
deleted file mode 100755
index 90e453153db5..000000000000
--- a/contrib/android/install_ndk.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env bash
-
-if [ -z "$ANDROID_SDK_ROOT" ]; then
- echo "ERROR: ANDROID_SDK_ROOT is not set. Please set it."
- echo "SDK root is $ANDROID_SDK_ROOT"
- exit 1
-fi
-
-if [ -z "$ANDROID_NDK_ROOT" ]; then
- echo "ERROR: ANDROID_NDK_ROOT is not set. Please set it."
- echo "NDK root is $ANDROID_NDK_ROOT"
- exit 1
-fi
-
-echo "Using ANDROID_SDK_ROOT: $ANDROID_SDK_ROOT"
-echo "Using ANDROID_NDK_ROOT: $ANDROID_NDK_ROOT"
-
-echo "Downloading SDK"
-if ! curl -L -k -s -o "$HOME/android-sdk.zip" https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip;
-then
- echo "Failed to download SDK"
- exit 1
-fi
-
-echo "Downloading NDK"
-if ! curl -L -k -s -o "$HOME/android-ndk.zip" https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip;
-then
- echo "Failed to download NDK"
- exit 1
-fi
-
-echo "Unpacking SDK to $ANDROID_SDK_ROOT"
-if ! unzip -qq "$HOME/android-sdk.zip" -d "$ANDROID_SDK_ROOT";
-then
- echo "Failed to unpack SDK"
- exit 1
-fi
-
-echo "Unpacking NDK to $ANDROID_NDK_ROOT"
-if ! unzip -qq "$HOME/android-ndk.zip" -d "$HOME";
-then
- echo "Failed to unpack NDK"
- exit 1
-fi
-
-if ! mv "$HOME/android-ndk-r20b" "$ANDROID_NDK_ROOT";
-then
- echo "Failed to move $HOME/android-ndk-r20b to $ANDROID_NDK_ROOT"
- exit 1
-fi
-
-rm -f "$HOME/android-sdk.zip"
-rm -f "$HOME/android-ndk.zip"
-
-# https://stackoverflow.com/a/47028911/608639
-touch "$ANDROID_SDK_ROOT/repositories.cfg"
-
-echo "Finished installing SDK and NDK"
-
-exit 0
diff --git a/contrib/android/install_openssl.sh b/contrib/android/install_openssl.sh
deleted file mode 100755
index e4fb87266e2e..000000000000
--- a/contrib/android/install_openssl.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/usr/bin/env bash
-
-echo "Downloading OpenSSL"
-if ! curl -L -k -s -o openssl-1.1.1d.tar.gz https://www.openssl.org/source/openssl-1.1.1d.tar.gz;
-then
- echo "Failed to download OpenSSL"
- exit 1
-fi
-
-echo "Unpacking OpenSSL"
-rm -rf ./openssl-1.1.1d
-if ! tar -xf openssl-1.1.1d.tar.gz;
-then
- echo "Failed to unpack OpenSSL"
- exit 1
-fi
-
-cd openssl-1.1.1d || exit 1
-
-if ! cp ../contrib/android/15-android.conf Configurations/; then
- echo "Failed to copy OpenSSL Android config"
- exit 1
-fi
-
-echo "Configuring OpenSSL"
-if ! ./Configure "$OPENSSL_HOST" no-comp no-asm no-hw no-engine shared \
- --prefix="$ANDROID_PREFIX" --openssldir="$ANDROID_PREFIX"; then
- echo "Failed to configure OpenSSL"
- exit 1
-fi
-
-echo "Building OpenSSL"
-if ! make; then
- echo "Failed to build OpenSSL"
- exit 1
-fi
-
-echo "Installing OpenSSL"
-if ! make install_sw; then
- echo "Failed to install OpenSSL"
- exit 1
-fi
-
-exit 0
diff --git a/contrib/android/install_tools.sh b/contrib/android/install_tools.sh
deleted file mode 100755
index 45aff601e2d7..000000000000
--- a/contrib/android/install_tools.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/env bash
-
-# This step should install tools needed for all packages - OpenSSL and LDNS
-echo "Updating tools"
-sudo apt-get -qq update
-sudo apt-get -qq install --no-install-recommends curl wget tar zip unzip patch perl openjdk-8-jdk autoconf automake libtool pkg-config
-
-# Android builds run config.guess early to determine BUILD and HOST. We need to add config.guess
-# and config.sub now. Later, bootstrap_ldns.sh will handle the complete bootstrap of LDNS.
-
-echo "Adding config.guess"
-if ! wget -q -O config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'; then
- echo "Failed to download config.guess"
-fi
-
-echo "Adding config.sub"
-if ! wget -q -O config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'; then
- echo "Failed to download config.sub"
-fi
-
-echo "Fixing config permissions"
-chmod a+x config.guess config.sub
-if [ -n "$(command -v xattr 2>/dev/null)" ]; then
- xattr -d com.apple.quarantine config.guess 2>/dev/null
- xattr -d com.apple.quarantine config.sub 2>/dev/null
-fi
diff --git a/contrib/android/setenv_android.sh b/contrib/android/setenv_android.sh
deleted file mode 100755
index f45acb0f7ead..000000000000
--- a/contrib/android/setenv_android.sh
+++ /dev/null
@@ -1,203 +0,0 @@
-#!/usr/bin/env bash
-
-# ====================================================================
-# Sets the cross compile environment for Android
-#
-# Based upon OpenSSL's setenv-android.sh by TH, JW, and SM.
-# Heavily modified by JWW for Crypto++.
-# Updated by Skycoder42 for current recommendations for Android.
-# Modified by JWW for LDNS.
-# ====================================================================
-
-#########################################
-##### Some validation #####
-#########################################
-
-if [ -z "$ANDROID_API" ]; then
- echo "ANDROID_API is not set. Please set it"
- [[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
-fi
-
-if [ -z "$ANDROID_CPU" ]; then
- echo "ANDROID_CPU is not set. Please set it"
- [[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
-fi
-
-if [ ! -d "$ANDROID_NDK_ROOT" ]; then
- echo "ERROR: ANDROID_NDK_ROOT is not a valid path. Please set it."
- echo "NDK root is $ANDROID_NDK_ROOT"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# cryptest-android.sh may run this script without sourcing.
-if [ "$0" = "${BASH_SOURCE[0]}" ]; then
- echo "setenv-android.sh is usually sourced, but not this time."
-fi
-
-#####################################################################
-
-# Need to set THIS_HOST to darwin-x86_64, linux-x86_64,
-# windows, or windows-x86_64
-
-if [[ "$(uname -s | grep -i -c darwin)" -ne 0 ]]; then
- THIS_HOST=darwin-x86_64
-elif [[ "$(uname -s | grep -i -c linux)" -ne 0 ]]; then
- THIS_HOST=linux-x86_64
-else
- echo "ERROR: Unknown host"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-ANDROID_TOOLCHAIN="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/$THIS_HOST/bin"
-ANDROID_SYSROOT="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/$THIS_HOST/sysroot"
-
-# Error checking
-if [ ! -d "$ANDROID_TOOLCHAIN" ]; then
- echo "ERROR: ANDROID_TOOLCHAIN is not a valid path. Please set it."
- echo "Path is $ANDROID_TOOLCHAIN"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -d "$ANDROID_SYSROOT" ]; then
- echo "ERROR: ANDROID_SYSROOT is not a valid path. Please set it."
- echo "Path is $ANDROID_SYSROOT"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-#####################################################################
-
-THE_ARCH=$(tr '[:upper:]' '[:lower:]' <<< "$ANDROID_CPU")
-
-# https://developer.android.com/ndk/guides/abis.html
-case "$THE_ARCH" in
- armv7*|armeabi*)
- CC="armv7a-linux-androideabi$ANDROID_API-clang"
- CXX="armv7a-linux-androideabi$ANDROID_API-clang++"
- LD="arm-linux-androideabi-ld"
- AS="arm-linux-androideabi-as"
- AR="arm-linux-androideabi-ar"
- RANLIB="arm-linux-androideabi-ranlib"
- STRIP="arm-linux-androideabi-strip"
-
- CFLAGS="-march=armv7-a -mthumb -mfloat-abi=softfp -funwind-tables -fexceptions"
- CXXFLAGS="-march=armv7-a -mthumb -mfloat-abi=softfp -funwind-tables -fexceptions -frtti"
- ;;
-
- armv8*|aarch64|arm64)
- CC="aarch64-linux-android$ANDROID_API-clang"
- CXX="aarch64-linux-android$ANDROID_API-clang++"
- LD="aarch64-linux-android-ld"
- AS="aarch64-linux-android-as"
- AR="aarch64-linux-android-ar"
- RANLIB="aarch64-linux-android-ranlib"
- STRIP="aarch64-linux-android-strip"
-
- CFLAGS="-funwind-tables -fexceptions"
- CXXFLAGS="-funwind-tables -fexceptions -frtti"
- ;;
-
- x86)
- CC="i686-linux-android$ANDROID_API-clang"
- CXX="i686-linux-android$ANDROID_API-clang++"
- LD="i686-linux-android-ld"
- AS="i686-linux-android-as"
- AR="i686-linux-android-ar"
- RANLIB="i686-linux-android-ranlib"
- STRIP="i686-linux-android-strip"
-
- CFLAGS="-mtune=intel -mssse3 -mfpmath=sse -funwind-tables -fexceptions"
- CXXFLAGS="-mtune=intel -mssse3 -mfpmath=sse -funwind-tables -fexceptions -frtti"
- ;;
-
- x86_64|x64)
- CC="x86_64-linux-android$ANDROID_API-clang"
- CXX="x86_64-linux-android$ANDROID_API-clang++"
- LD="x86_64-linux-android-ld"
- AS="x86_64-linux-android-as"
- AR="x86_64-linux-android-ar"
- RANLIB="x86_64-linux-android-ranlib"
- STRIP="x86_64-linux-android-strip"
-
- CFLAGS="-march=x86-64 -msse4.2 -mpopcnt -mtune=intel -funwind-tables -fexceptions"
- CXXFLAGS="-march=x86-64 -msse4.2 -mpopcnt -mtune=intel -funwind-tables -fexceptions -frtti"
- ;;
-
- *)
- echo "ERROR: Unknown architecture $ANDROID_CPU"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
- ;;
-esac
-
-#####################################################################
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$CC" ]; then
- echo "ERROR: Failed to find Android clang. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$CXX" ]; then
- echo "ERROR: Failed to find Android clang++. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$RANLIB" ]; then
- echo "ERROR: Failed to find Android ranlib. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$AR" ]; then
- echo "ERROR: Failed to find Android ar. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$AS" ]; then
- echo "ERROR: Failed to find Android as. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$ANDROID_TOOLCHAIN/$LD" ]; then
- echo "ERROR: Failed to find Android ld. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-#####################################################################
-
-LENGTH=${#ANDROID_TOOLCHAIN}
-SUBSTR=${PATH:0:$LENGTH}
-if [ "$SUBSTR" != "$ANDROID_TOOLCHAIN" ]; then
- export PATH="$ANDROID_TOOLCHAIN:$PATH"
-fi
-
-#####################################################################
-
-export CPP CC CXX LD AS AR RANLIB STRIP
-export ANDROID_SYSROOT="$AOSP_SYSROOT"
-export CPPFLAGS="-D__ANDROID_API__=$ANDROID_API"
-export CFLAGS="$CFLAGS --sysroot=$AOSP_SYSROOT"
-export CXXFLAGS="$CXXFLAGS -stdlib=libc++ --sysroot=$AOSP_SYSROOT"
-
-#####################################################################
-
-echo "ANDROID_TOOLCHAIN: $ANDROID_TOOLCHAIN"
-
-echo "CPP: $(command -v "$CPP")"
-echo "CC: $(command -v "$CC")"
-echo "CXX: $(command -v "$CXX")"
-echo "LD: $(command -v "$LD")"
-echo "AS: $(command -v "$AS")"
-echo "AR: $(command -v "$AR")"
-
-echo "ANDROID_SYSROOT: $ANDROID_SYSROOT"
-
-echo "CPPFLAGS: $CPPFLAGS"
-echo "CFLAGS: $CFLAGS"
-echo "CXXFLAGS: $CXXFLAGS"
-
-[ "$0" = "${BASH_SOURCE[0]}" ] && exit 0 || return 0
diff --git a/contrib/ios/15-ios.conf b/contrib/ios/15-ios.conf
deleted file mode 100644
index 364ed6ebfd29..000000000000
--- a/contrib/ios/15-ios.conf
+++ /dev/null
@@ -1,41 +0,0 @@
-#### iPhoneOS/iOS
-#
-# It takes recent enough Xcode to use following two targets. It shouldn't
-# be a problem by now, but if they don't work, original targets below
-# that depend on manual definition of environment variables should still
-# work...
-#
-my %targets = (
- "ios-common" => {
- template => 1,
- inherit_from => [ "darwin-common" ],
- sys_id => "iOS",
- disable => [ "engine", "async" ],
- },
- "ios-xcrun" => {
- inherit_from => [ "ios-common", asm("armv4_asm") ],
- bn_ops => [ "BN_LLONG", "RC4_CHAR" ],
- perlasm_scheme => "ios32",
- },
- "ios64-xcrun" => {
- inherit_from => [ "ios-common", asm("aarch64_asm") ],
- bn_ops => [ "SIXTY_FOUR_BIT_LONG", "RC4_CHAR" ],
- perlasm_scheme => "ios64",
- },
- "iossimulator-xcrun" => {
- inherit_from => [ "ios-common" ],
- },
-
- "iphoneos-cross" => {
- inherit_from => [ "ios-common" ],
- cflags => add("-Wall -fno-common"),
- },
- "ios-cross" => {
- inherit_from => [ "ios-xcrun" ],
- cflags => add("-Wall -fno-common"),
- },
- "ios64-cross" => {
- inherit_from => [ "ios64-xcrun" ],
- cflags => add("-Wall -fno-common"),
- },
-);
diff --git a/contrib/ios/bootstrap_ldns.sh b/contrib/ios/bootstrap_ldns.sh
deleted file mode 100755
index 7e423030ccae..000000000000
--- a/contrib/ios/bootstrap_ldns.sh
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/env bash
-
-if ! git submodule update --init; then
- echo "Failed to init submodule"
- exit 1
-fi
-
-echo "AUTOTOOLS_BUILD: $AUTOTOOLS_BUILD"
-echo "AUTOTOOLS_HOST: $AUTOTOOLS_HOST"
-
-# libtool complains about our updated config.guess and config.sub.
-# Remove them to get through bootstrap. Re-add them after libtoolize.
-
-echo "Running libtoolize"
-if [ -n "$(command -v glibtoolize)" ]; then
- rm -f config.guess config.sub
- if ! glibtoolize -ci ; then
- echo "Failed to libtoolize (glibtoolize)"
- exit 1
- fi
-elif [ -n "$(command -v libtoolize)" ]; then
- rm -f config.guess config.sub
- if ! libtoolize -ci ; then
- echo "Failed to libtoolize (libtoolize)"
- exit 1
- fi
-else
- echo "Failed to find a libtool"
- exit 1
-fi
-
-echo "Updating config.guess"
-if ! wget -q -O config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'; then
- echo "Failed to download config.guess"
-fi
-
-echo "Updating config.sub"
-if ! wget -q -O config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'; then
- echo "Failed to download config.sub"
-fi
-
-echo "Fixing config permissions"
-chmod a+x config.guess config.sub
-if [ -n "$(command -v xattr 2>/dev/null)" ]; then
- xattr -d com.apple.quarantine config.guess 2>/dev/null
- xattr -d com.apple.quarantine config.sub 2>/dev/null
-fi
-
-echo "Running autoreconf"
-if ! autoreconf -fi ; then
- echo "Failed to autoreconf"
- exit 1
-fi
-
-exit 0
diff --git a/contrib/ios/install_openssl.sh b/contrib/ios/install_openssl.sh
deleted file mode 100755
index fc5af4d47c48..000000000000
--- a/contrib/ios/install_openssl.sh
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/env bash
-
-echo "Downloading OpenSSL"
-if ! curl -L -k -s -o openssl-1.1.1d.tar.gz https://www.openssl.org/source/openssl-1.1.1d.tar.gz;
-then
- echo "Failed to download OpenSSL"
- exit 1
-fi
-
-echo "Unpacking OpenSSL"
-rm -rf ./openssl-1.1.1d
-if ! tar -xf openssl-1.1.1d.tar.gz;
-then
- echo "Failed to unpack OpenSSL"
- exit 1
-fi
-
-cd openssl-1.1.1d || exit 1
-
-if ! cp ../contrib/ios/15-ios.conf Configurations/; then
- echo "Failed to copy OpenSSL ios config"
- exit 1
-fi
-
-# ocsp.c:947:23: error: 'fork' is unavailable: not available on tvOS
-# ocsp.c:978:23: error: 'fork' is unavailable: not available on watchOS
-# Also see https://github.com/openssl/openssl/issues/7607.
-if ! patch -u -p0 < ../contrib/ios/openssl.patch; then
- echo "Failed to patch OpenSSL"
- exit 1
-fi
-
-echo "Configuring OpenSSL"
-if ! ./Configure "$OPENSSL_HOST" -DNO_FORK no-comp no-asm no-hw no-engine no-tests no-unit-test \
- --prefix="$IOS_PREFIX" --openssldir="$IOS_PREFIX"; then
- echo "Failed to configure OpenSSL"
- exit 1
-fi
-
-echo "Building OpenSSL"
-if ! make; then
- echo "Failed to build OpenSSL"
- exit 1
-fi
-
-echo "Installing OpenSSL"
-if ! make install_sw; then
- echo "Failed to install OpenSSL"
- exit 1
-fi
-
-exit 0
diff --git a/contrib/ios/install_tools.sh b/contrib/ios/install_tools.sh
deleted file mode 100755
index 796833d83143..000000000000
--- a/contrib/ios/install_tools.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-
-# This step should install tools needed for all packages - OpenSSL and LDNS
-# When running on Travis, Homebrew fails in unusual ways, hence '|| true'.
-# https://travis-ci.community/t/homebrew-fails-because-an-automake-update-is-an-error/7831/3
-echo "Updating tools"
-brew update 1>/dev/null || true
-echo "Installing tools"
-brew install autoconf automake libtool pkg-config curl perl 1>/dev/null || true
diff --git a/contrib/ios/openssl.patch b/contrib/ios/openssl.patch
deleted file mode 100644
index 58cef232c9e9..000000000000
--- a/contrib/ios/openssl.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- apps/speed.c
-+++ apps/speed.c
-@@ -99,6 +99,13 @@
- #endif
- #include <openssl/modes.h>
-
-+/* fork() breaks AppleTVOS, WatchOS, AppleTVSimulator and WatchSimulator */
-+/* Users should configure with -DNO_FORK */
-+#if defined(NO_FORK)
-+# undef HAVE_FORK
-+# define HAVE_FORK 0
-+#endif
-+
- #ifndef HAVE_FORK
- # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_VXWORKS)
- # define HAVE_FORK 0
-@@ -110,6 +117,7 @@
- #if HAVE_FORK
- # undef NO_FORK
- #else
-+# undef NO_FORK
- # define NO_FORK
- #endif
-
---- apps/ocsp.c
-+++ apps/ocsp.c
-@@ -36,6 +36,13 @@
- # include <openssl/x509v3.h>
- # include <openssl/rand.h>
-
-+/* fork() breaks AppleTVOS, WatchOS, AppleTVSimulator and WatchSimulator */
-+/* Users should configure with -DNO_FORK */
-+#if defined(NO_FORK)
-+# undef HAVE_FORK
-+# define HAVE_FORK 0
-+#endif
-+
- #ifndef HAVE_FORK
- # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS)
- # define HAVE_FORK 0
-@@ -47,6 +54,7 @@
- #if HAVE_FORK
- # undef NO_FORK
- #else
-+# undef NO_FORK
- # define NO_FORK
- #endif
-
diff --git a/contrib/ios/setenv_ios.sh b/contrib/ios/setenv_ios.sh
deleted file mode 100755
index 8f49f328d163..000000000000
--- a/contrib/ios/setenv_ios.sh
+++ /dev/null
@@ -1,274 +0,0 @@
-#!/usr/bin/env bash
-
-# ====================================================================
-# Sets the cross compile environment for Xcode/iOS
-#
-# Based upon OpenSSL's setenv-ios.sh by TH, JW, and SM.
-# Heavily modified by JWW for Crypto++.
-# Modified by JWW for LDNS.
-# ====================================================================
-
-#########################################
-##### Some validation #####
-#########################################
-
-# In the past we could mostly infer arch or cpu from the SDK (and
-# mostly vice-versa). Nowadays we need it set for us because Apple
-# platforms can be either 32-bit or 64-bit.
-
-if [ -z "$IOS_SDK" ]; then
- echo "IOS_SDK is not set. Please set it"
- [[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
-fi
-
-if [ -z "$IOS_CPU" ]; then
- echo "IOS_CPU is not set. Please set it"
- [[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
-fi
-
-# cryptest-ios.sh may run this script without sourcing.
-if [ "$0" = "${BASH_SOURCE[0]}" ]; then
- echo "setenv-ios.sh is usually sourced, but not this time."
-fi
-
-#########################################
-##### Small Fixups, if needed #####
-#########################################
-
-if [[ "$IOS_SDK" == "iPhone" ]]; then
- IOS_SDK=iPhoneOS
-fi
-
-if [[ "$IOS_SDK" == "iPhoneOSSimulator" ]]; then
- IOS_SDK=iPhoneSimulator
-fi
-
-if [[ "$IOS_SDK" == "TV" || "$IOS_SDK" == "AppleTV" ]]; then
- IOS_SDK=AppleTVOS
-fi
-
-if [[ "$IOS_SDK" == "Watch" || "$IOS_SDK" == "AppleWatch" ]]; then
- IOS_SDK=WatchOS
-fi
-
-if [[ "$IOS_CPU" == "aarch64" || "$IOS_CPU" == "armv8"* ]] ; then
- IOS_CPU=arm64
-fi
-
-########################################
-##### Environment #####
-########################################
-
-# The flags below were tested with Xcode 8 on Travis. If
-# you use downlevel versions of Xcode, then you can push
-# xxx-version-min=n lower. For example, Xcode 6 can use
-# -miphoneos-version-min=5.
-
-# iPhones can be either 32-bit or 64-bit
-if [[ "$IOS_SDK" == "iPhoneOS" && "$IOS_CPU" == "armv7"* ]]; then
- MIN_VER=-miphoneos-version-min=6
-elif [[ "$IOS_SDK" == "iPhoneOS" && "$IOS_CPU" == "arm64" ]]; then
- MIN_VER=-miphoneos-version-min=6
-
-# Fixups for convenience
-elif [[ "$IOS_SDK" == "iPhoneOS" && "$IOS_CPU" == "i386" ]]; then
- IOS_SDK=iPhoneSimulator
- # MIN_VER=-miphoneos-version-min=6
- MIN_VER=-miphonesimulator-version-min=6
-elif [[ "$IOS_SDK" == "iPhoneOS" && "$IOS_CPU" == "x86_64" ]]; then
- IOS_SDK=iPhoneSimulator
- # MIN_VER=-miphoneos-version-min=6
- MIN_VER=-miphonesimulator-version-min=6
-
-# Simulator builds
-elif [[ "$IOS_SDK" == "iPhoneSimulator" && "$IOS_CPU" == "i386" ]]; then
- MIN_VER=-miphonesimulator-version-min=6
-elif [[ "$IOS_SDK" == "iPhoneSimulator" && "$IOS_CPU" == "x86_64" ]]; then
- MIN_VER=-miphonesimulator-version-min=6
-
-# Apple TV can be 32-bit Intel (1st gen), 32-bit ARM (2nd, 3rd gen) or 64-bit ARM (4th gen)
-elif [[ "$IOS_SDK" == "AppleTVOS" && "$IOS_CPU" == "i386" ]]; then
- MIN_VER=-mappletvos-version-min=6
-elif [[ "$IOS_SDK" == "AppleTVOS" && "$IOS_CPU" == "armv7"* ]]; then
- MIN_VER=-mappletvos-version-min=6
-elif [[ "$IOS_SDK" == "AppleTVOS" && "$IOS_CPU" == "arm64" ]]; then
- MIN_VER=-mappletvos-version-min=6
-
-# Simulator builds
-elif [[ "$IOS_SDK" == "AppleTVSimulator" && "$IOS_CPU" == "i386" ]]; then
- MIN_VER=-mappletvsimulator-version-min=6
-elif [[ "$IOS_SDK" == "AppleTVSimulator" && "$IOS_CPU" == "x86_64" ]]; then
- MIN_VER=-mappletvsimulator-version-min=6
-
-# Watch can be either 32-bit or 64-bit ARM. TODO: figure out which
-# -mwatchos-version-min=n is needed for arm64. 9 is not enough.
-elif [[ "$IOS_SDK" == "WatchOS" && "$IOS_CPU" == "armv7"* ]]; then
- MIN_VER=-mwatchos-version-min=6
-elif [[ "$IOS_SDK" == "WatchOS" && "$IOS_CPU" == "arm64" ]]; then
- MIN_VER=-mwatchos-version-min=10
-
-# Simulator builds. TODO: figure out which -watchos-version-min=n
-# is needed for arm64. 6 compiles and links, but is it correct?
-elif [[ "$IOS_SDK" == "WatchSimulator" && "$IOS_CPU" == "i386" ]]; then
- MIN_VER=-mwatchsimulator-version-min=6
-elif [[ "$IOS_SDK" == "WatchSimulator" && "$IOS_CPU" == "x86_64" ]]; then
- MIN_VER=-mwatchsimulator-version-min=6
-
-# And the final catch-all
-else
- echo "IOS_SDK and IOS_CPU are not valid. Please fix them"
- [[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
-fi
-
-#####################################################################
-
-# Xcode 6 and below cannot handle -miphonesimulator-version-min
-# Fix it so the simulator will compile as expected. This trick
-# may work on other SDKs, but it was not tested.
-
-if [ -n "$(command -v xcodebuild 2>/dev/null)" ]; then
- # Output of xcodebuild is similar to "Xcode 6.2". The first cut gets
- # the dotted decimal value. The second cut gets the major version.
- XCODE_VERSION=$(xcodebuild -version 2>/dev/null | head -n 1 | cut -f2 -d" " | cut -f1 -d".")
- if [ -z "$XCODE_VERSION" ]; then XCODE_VERSION=100; fi
-
- if [ "$XCODE_VERSION" -le 6 ]; then
- MIN_VER="${MIN_VER//iphonesimulator/iphoneos}"
- fi
-fi
-
-#####################################################################
-
-# Allow a user override? I think we should be doing this. The use case is,
-# move /Applications/Xcode somewhere else for a side-by-side installation.
-if [ -z "${XCODE_DEVELOPER-}" ]; then
- XCODE_DEVELOPER=$(xcode-select -print-path 2>/dev/null)
-fi
-
-if [ ! -d "$XCODE_DEVELOPER" ]; then
- echo "ERROR: unable to find XCODE_DEVELOPER directory."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# XCODE_DEVELOPER_SDK is the SDK location.
-XCODE_DEVELOPER_SDK="$XCODE_DEVELOPER/Platforms/$IOS_SDK.platform"
-
-if [ ! -d "$XCODE_DEVELOPER_SDK" ]; then
- echo "ERROR: unable to find XCODE_DEVELOPER_SDK directory."
- echo " Is the SDK supported by Xcode and installed?"
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# XCODE_TOOLCHAIN is the location of the actual compiler tools.
-if [ -d "$XCODE_DEVELOPER/Toolchains/XcodeDefault.xctoolchain/usr/bin/" ]; then
- XCODE_TOOLCHAIN="$XCODE_DEVELOPER/Toolchains/XcodeDefault.xctoolchain/usr/bin/"
-elif [ -d "$XCODE_DEVELOPER_SDK/Developer/usr/bin/" ]; then
- XCODE_TOOLCHAIN="$XCODE_DEVELOPER_SDK/Developer/usr/bin/"
-fi
-
-if [ -z "$XCODE_TOOLCHAIN" ] || [ ! -d "$XCODE_TOOLCHAIN" ]; then
- echo "ERROR: unable to find Xcode cross-compiler tools."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# XCODE_SDK is the SDK name/version being used - adjust the list as appropriate.
-# For example, remove 4.3, 6.2, and 6.1 if they are not installed. We go back to
-# the 1.0 SDKs because Apple WatchOS uses low numbers, like 2.0 and 2.1.
-XCODE_SDK=
-for i in $(seq -f "%.1f" 30.0 -0.1 1.0)
-do
- if [ -d "$XCODE_DEVELOPER_SDK/Developer/SDKs/$IOS_SDK$i.sdk" ]; then
- XCODE_SDK="$IOS_SDK$i.sdk"
- break
- fi
-done
-
-# Error checking
-if [ -z "$XCODE_SDK" ]; then
- echo "ERROR: unable to find a SDK."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-IOS_SYSROOT="$XCODE_DEVELOPER_SDK/Developer/SDKs/$XCODE_SDK"
-
-if [ -z "$IOS_SYSROOT" ] || [ ! -d "$IOS_SYSROOT" ]; then
- echo "ERROR: unable to find IOS_SYSROOT directory."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-#####################################################################
-
-# We want to set AR=libtool and ARFLAGS="-static -o",
-# but I am not sure Autotools can handle it.
-CPP=cpp; CC=clang; CXX=clang++; LD=ld
-AS=as; AR=ar; RANLIB=ranlib; STRIP=strip
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$CC" ]; then
- echo "ERROR: Failed to find iOS clang. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$CXX" ]; then
- echo "ERROR: Failed to find iOS clang++. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$RANLIB" ]; then
- echo "ERROR: Failed to find iOS ranlib. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$AR" ]; then
- echo "ERROR: Failed to find iOS ar. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$AS" ]; then
- echo "ERROR: Failed to find iOS as. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-# Error checking
-if [ ! -e "$XCODE_TOOLCHAIN/$LD" ]; then
- echo "ERROR: Failed to find iOS ld. Please edit this script."
- [ "$0" = "${BASH_SOURCE[0]}" ] && exit 1 || return 1
-fi
-
-#####################################################################
-
-LENGTH=${#XCODE_TOOLCHAIN}
-SUBSTR=${PATH:0:$LENGTH}
-if [ "$SUBSTR" != "$XCODE_TOOLCHAIN" ]; then
- export PATH="$XCODE_TOOLCHAIN":"$PATH"
-fi
-
-#####################################################################
-
-export CPP CC CXX LD AS AR RANLIB STRIP
-export IOS_SYSROOT
-export CFLAGS="-arch $IOS_CPU $MIN_VER --sysroot=$IOS_SYSROOT"
-export CXXFLAGS="-arch $IOS_CPU $MIN_VER -stdlib-libc++ --sysroot=$IOS_SYSROOT"
-
-#####################################################################
-
-echo "XCODE_TOOLCHAIN: $XCODE_TOOLCHAIN"
-
-echo "CPP: $(command -v "$CPP")"
-echo "CC: $(command -v "$CC")"
-echo "CXX: $(command -v "$CXX")"
-echo "LD: $(command -v "$LD")"
-echo "AS: $(command -v "$AS")"
-echo "AR: $(command -v "$AR")"
-
-echo "IOS_SYSROOT: $IOS_SYSROOT"
-
-echo "CPPFLAGS: $CPPFLAGS"
-echo "CFLAGS: $CFLAGS"
-echo "CXXFLAGS: $CXXFLAGS"
-
-[ "$0" = "${BASH_SOURCE[0]}" ] && exit 0 || return 0
diff --git a/contrib/ldnsx/ldnsx.py b/contrib/ldnsx/ldnsx.py
index e2bd0e517e31..57400cff8b87 100644
--- a/contrib/ldnsx/ldnsx.py
+++ b/contrib/ldnsx/ldnsx.py
@@ -216,7 +216,7 @@ class resolver:
self.drop_nameservers()
nm_list = ns.split(',')
nm_list = map(lambda s: s.strip(), nm_list)
- nm_list = filter(lambda s: s != "", nm_list)
+ nm_list = list(filter(lambda s: s != "", nm_list))
nm_list.reverse()
for nm in nm_list:
self.add_nameserver(nm)
diff --git a/contrib/python/ldns.i b/contrib/python/ldns.i
index 881ba5e858a7..b4a740820e12 100644
--- a/contrib/python/ldns.i
+++ b/contrib/python/ldns.i
@@ -99,12 +99,14 @@
%typemap(in, noblock=1) (ssize_t)
{
int $1_res = 0;
- $1_res = SWIG_AsVal_long($input, &$1);
+ long val;
+ $1_res = SWIG_AsVal_long($input, &val);
if (!SWIG_IsOK($1_res)) {
SWIG_exception_fail(SWIG_ArgError($1_res), "in method '"
"$symname" "', argument " "$argnum" " of type '"
"$type""'");
}
+ $1 = val;
}
diff --git a/contrib/python/ldns_rdf.i b/contrib/python/ldns_rdf.i
index 5d7448fdc45c..39f9af1895cb 100644
--- a/contrib/python/ldns_rdf.i
+++ b/contrib/python/ldns_rdf.i
@@ -50,13 +50,18 @@
SWIGTYPE_p_ldns_struct_rdf, SWIG_POINTER_OWN | 0));
}
+#if SWIG_VERSION < 0x040200
/*
* Automatic conversion of const (ldns_rdf *) parameter from string.
* Argument default value.
*/
%typemap(arginit, noblock=1) const ldns_rdf *
{
+#if SWIG_VERSION >= 0x040200
+ PyObject *$1_bytes = NULL;
+#else
char *$1_str = NULL;
+#endif
}
/*
@@ -66,11 +71,17 @@
%typemap(in, noblock=1) const ldns_rdf * (void* argp, $1_ltype tmp = 0, int res)
{
if (Python_str_Check($input)) {
+ const char *argstr;
+#if SWIG_VERSION >= 0x040200
+ argstr = SWIG_PyUnicode_AsUTF8AndSize($input, NULL, &$1_bytes);
+#else
$1_str = SWIG_Python_str_AsChar($input);
- if ($1_str == NULL) {
+ argstr = $1_str;
+#endif
+ if (argstr == NULL) {
%argument_fail(SWIG_TypeError, "char *", $symname, $argnum);
}
- tmp = ldns_dname_new_frm_str($1_str);
+ tmp = ldns_dname_new_frm_str(argstr);
if (tmp == NULL) {
%argument_fail(SWIG_TypeError, "char *", $symname, $argnum);
}
@@ -90,11 +101,63 @@
*/
%typemap(freearg, noblock=1) const ldns_rdf *
{
+#if SWIG_VERSION >= 0x040200
+ if ($1_bytes != NULL) {
+ /* Is not NULL only when a conversion form string occurred. */
+ Py_XDECREF($1_bytes);
+ }
+#else
if ($1_str != NULL) {
/* Is not NULL only when a conversion form string occurred. */
SWIG_Python_str_DelForPy3($1_str); /* Is a empty macro for Python < 3. */
}
+#endif
+}
+
+#else
+/*
+ * Automatic conversion of const (ldns_rdf *) parameter from string.
+ * Argument default value.
+ */
+%typemap(arginit, noblock=1) const ldns_rdf *
+{
+ PyObject *$1_bytes = NULL;
+}
+
+/*
+ * Automatic conversion of const (ldns_rdf *) parameter from string.
+ * Preparation of arguments.
+ */
+%typemap(in, noblock=1) const ldns_rdf * (void* argp, $1_ltype tmp = 0, int res)
+{
+ if (Python_str_Check($input)) {
+ const char *$1_str = SWIG_PyUnicode_AsUTF8AndSize($input, NULL, &$1_bytes);
+ if ($1_str == NULL) {
+ %argument_fail(SWIG_TypeError, "char *", $symname, $argnum);
+ }
+ tmp = ldns_dname_new_frm_str($1_str);
+ if (tmp == NULL) {
+ %argument_fail(SWIG_TypeError, "char *", $symname, $argnum);
+ }
+ $1 = ($1_ltype) tmp;
+ } else {
+ res = SWIG_ConvertPtr($input, &argp, SWIGTYPE_p_ldns_struct_rdf, 0 | 0);
+ if (!SWIG_IsOK(res)) {
+ %argument_fail(res, "ldns_rdf const *", $symname, $argnum);
+ }
+ $1 = ($1_ltype) argp;
+ }
+}
+
+/*
+ * Automatic conversion of const (ldns_rdf *) parameter from string.
+ * Freeing of allocated memory (it's a no op unless compiling for some older versions of the Python stable ABI).
+ */
+%typemap(freearg, noblock=1) const ldns_rdf *
+{
+ Py_XDECREF($1_bytes);
}
+#endif
%nodefaultctor ldns_struct_rdf; /* No default constructor. */
%nodefaultdtor ldns_struct_rdf; /* No default destructor. */