diff --git a/deploy/linux_aarch64/libcrypto.so.1.1 b/deploy/linux_aarch64/libcrypto.so.1.1 index b8965d6e..ae3e0801 100644 Binary files a/deploy/linux_aarch64/libcrypto.so.1.1 and b/deploy/linux_aarch64/libcrypto.so.1.1 differ diff --git a/deploy/linux_aarch64/liblzo2.so.2 b/deploy/linux_aarch64/liblzo2.so.2 index 691dd9f5..f0feeb5f 100644 Binary files a/deploy/linux_aarch64/liblzo2.so.2 and b/deploy/linux_aarch64/liblzo2.so.2 differ diff --git a/deploy/linux_aarch64/libpkcs11-helper.so.1 b/deploy/linux_aarch64/libpkcs11-helper.so.1 index d8ab40f7..07c82b1b 100644 Binary files a/deploy/linux_aarch64/libpkcs11-helper.so.1 and b/deploy/linux_aarch64/libpkcs11-helper.so.1 differ diff --git a/deploy/linux_aarch64/libssl.so.1.1 b/deploy/linux_aarch64/libssl.so.1.1 index f068f750..5c8d66ec 100644 Binary files a/deploy/linux_aarch64/libssl.so.1.1 and b/deploy/linux_aarch64/libssl.so.1.1 differ diff --git a/deploy/linux_aarch64/openvpn b/deploy/linux_aarch64/openvpn index c8c4b7df..878e2d3a 100644 Binary files a/deploy/linux_aarch64/openvpn and b/deploy/linux_aarch64/openvpn differ diff --git a/deploy/linux_armv7l/libcrypto.so.1.1 b/deploy/linux_armv7l/libcrypto.so.1.1 index a85cc1ee..593244c0 100644 Binary files a/deploy/linux_armv7l/libcrypto.so.1.1 and b/deploy/linux_armv7l/libcrypto.so.1.1 differ diff --git a/deploy/linux_armv7l/liblzo2.so.2 b/deploy/linux_armv7l/liblzo2.so.2 index 0df86008..691dd9f5 100644 Binary files a/deploy/linux_armv7l/liblzo2.so.2 and b/deploy/linux_armv7l/liblzo2.so.2 differ diff --git a/deploy/linux_armv7l/libpkcs11-helper.so.1 b/deploy/linux_armv7l/libpkcs11-helper.so.1 index fd688a81..a98ebfa9 100644 Binary files a/deploy/linux_armv7l/libpkcs11-helper.so.1 and b/deploy/linux_armv7l/libpkcs11-helper.so.1 differ diff --git a/deploy/linux_armv7l/libssl.so.1.1 b/deploy/linux_armv7l/libssl.so.1.1 index f1ab6cc2..529ff6dd 100644 Binary files a/deploy/linux_armv7l/libssl.so.1.1 and b/deploy/linux_armv7l/libssl.so.1.1 differ diff --git a/deploy/linux_armv7l/openvpn b/deploy/linux_armv7l/openvpn index be068750..04393be1 100644 Binary files a/deploy/linux_armv7l/openvpn and b/deploy/linux_armv7l/openvpn differ diff --git a/deploy/linux_x64/libcrypto.so.1.1 b/deploy/linux_x64/libcrypto.so.1.1 index 4f5a540b..b7a39c11 100644 Binary files a/deploy/linux_x64/libcrypto.so.1.1 and b/deploy/linux_x64/libcrypto.so.1.1 differ diff --git a/deploy/linux_x64/liblzo2.so.2 b/deploy/linux_x64/liblzo2.so.2 index 49066e7d..efc57956 100644 Binary files a/deploy/linux_x64/liblzo2.so.2 and b/deploy/linux_x64/liblzo2.so.2 differ diff --git a/deploy/linux_x64/libpkcs11-helper.so.1 b/deploy/linux_x64/libpkcs11-helper.so.1 index 54c8d3ae..05eb7acc 100644 Binary files a/deploy/linux_x64/libpkcs11-helper.so.1 and b/deploy/linux_x64/libpkcs11-helper.so.1 differ diff --git a/deploy/linux_x64/libssl.so.1.1 b/deploy/linux_x64/libssl.so.1.1 index 835f5cf0..9ab07963 100644 Binary files a/deploy/linux_x64/libssl.so.1.1 and b/deploy/linux_x64/libssl.so.1.1 differ diff --git a/deploy/linux_x64/openvpn b/deploy/linux_x64/openvpn index 05bd01d8..f0d59d37 100644 Binary files a/deploy/linux_x64/openvpn and b/deploy/linux_x64/openvpn differ diff --git a/deploy/linux_x86/libcrypto.so.1.1 b/deploy/linux_x86/libcrypto.so.1.1 index fe5c7281..78cb6800 100644 Binary files a/deploy/linux_x86/libcrypto.so.1.1 and b/deploy/linux_x86/libcrypto.so.1.1 differ diff --git a/deploy/linux_x86/libpkcs11-helper.so.1 b/deploy/linux_x86/libpkcs11-helper.so.1 index 91ccf9f8..e890fd32 100644 Binary files a/deploy/linux_x86/libpkcs11-helper.so.1 and b/deploy/linux_x86/libpkcs11-helper.so.1 differ diff --git a/deploy/linux_x86/libssl.so.1.1 b/deploy/linux_x86/libssl.so.1.1 index b4ffdd07..72bac487 100644 Binary files a/deploy/linux_x86/libssl.so.1.1 and b/deploy/linux_x86/libssl.so.1.1 differ diff --git a/deploy/linux_x86/openvpn b/deploy/linux_x86/openvpn index 47c4b288..e3bb950b 100644 Binary files a/deploy/linux_x86/openvpn and b/deploy/linux_x86/openvpn differ diff --git a/deploy/macos_arm64/hummingbird b/deploy/macos_arm64/hummingbird new file mode 100644 index 00000000..66f9ee5f Binary files /dev/null and b/deploy/macos_arm64/hummingbird differ diff --git a/deploy/macos_arm64/libcrypto.1.1.dylib b/deploy/macos_arm64/libcrypto.1.1.dylib new file mode 100644 index 00000000..96f8a2cf Binary files /dev/null and b/deploy/macos_arm64/libcrypto.1.1.dylib differ diff --git a/deploy/macos_arm64/liblzo2.2.dylib b/deploy/macos_arm64/liblzo2.2.dylib new file mode 100644 index 00000000..2bf9e65c Binary files /dev/null and b/deploy/macos_arm64/liblzo2.2.dylib differ diff --git a/deploy/macos_arm64/libpkcs11-helper.1.dylib b/deploy/macos_arm64/libpkcs11-helper.1.dylib new file mode 100644 index 00000000..63629bec Binary files /dev/null and b/deploy/macos_arm64/libpkcs11-helper.1.dylib differ diff --git a/deploy/macos_arm64/libssl.1.1.dylib b/deploy/macos_arm64/libssl.1.1.dylib new file mode 100644 index 00000000..8fa6c75e Binary files /dev/null and b/deploy/macos_arm64/libssl.1.1.dylib differ diff --git a/deploy/macos_arm64/openvpn b/deploy/macos_arm64/openvpn new file mode 100644 index 00000000..e623f52c Binary files /dev/null and b/deploy/macos_arm64/openvpn differ diff --git a/deploy/macos_arm64/stunnel b/deploy/macos_arm64/stunnel new file mode 100644 index 00000000..12af91fa Binary files /dev/null and b/deploy/macos_arm64/stunnel differ diff --git a/deploy/macos_x64/libcrypto.1.1.dylib b/deploy/macos_x64/libcrypto.1.1.dylib index 8446d812..6144c8fc 100644 Binary files a/deploy/macos_x64/libcrypto.1.1.dylib and b/deploy/macos_x64/libcrypto.1.1.dylib differ diff --git a/deploy/macos_x64/liblzo2.2.dylib b/deploy/macos_x64/liblzo2.2.dylib index 92bd6352..af415acb 100644 Binary files a/deploy/macos_x64/liblzo2.2.dylib and b/deploy/macos_x64/liblzo2.2.dylib differ diff --git a/deploy/macos_x64/libpkcs11-helper.1.dylib b/deploy/macos_x64/libpkcs11-helper.1.dylib index 451328b7..c8dc2e46 100644 Binary files a/deploy/macos_x64/libpkcs11-helper.1.dylib and b/deploy/macos_x64/libpkcs11-helper.1.dylib differ diff --git a/deploy/macos_x64/libssl.1.1.dylib b/deploy/macos_x64/libssl.1.1.dylib index f5528d4a..74591795 100644 Binary files a/deploy/macos_x64/libssl.1.1.dylib and b/deploy/macos_x64/libssl.1.1.dylib differ diff --git a/deploy/macos_x64/openvpn b/deploy/macos_x64/openvpn index 7b71042c..b636b971 100755 Binary files a/deploy/macos_x64/openvpn and b/deploy/macos_x64/openvpn differ diff --git a/deploy/windows-10_x64/libcrypto-1_1-x64.dll b/deploy/windows-10_x64/libcrypto-1_1-x64.dll index ca9ec78d..10118a61 100644 Binary files a/deploy/windows-10_x64/libcrypto-1_1-x64.dll and b/deploy/windows-10_x64/libcrypto-1_1-x64.dll differ diff --git a/deploy/windows-10_x64/liblzo2-2.dll b/deploy/windows-10_x64/liblzo2-2.dll index 77fa2437..7f25de93 100644 Binary files a/deploy/windows-10_x64/liblzo2-2.dll and b/deploy/windows-10_x64/liblzo2-2.dll differ diff --git a/deploy/windows-10_x64/libpkcs11-helper-1.dll b/deploy/windows-10_x64/libpkcs11-helper-1.dll index bcb5eb06..ec9a47aa 100644 Binary files a/deploy/windows-10_x64/libpkcs11-helper-1.dll and b/deploy/windows-10_x64/libpkcs11-helper-1.dll differ diff --git a/deploy/windows-10_x64/libssl-1_1-x64.dll b/deploy/windows-10_x64/libssl-1_1-x64.dll index 8c49c6c8..0b498d7b 100644 Binary files a/deploy/windows-10_x64/libssl-1_1-x64.dll and b/deploy/windows-10_x64/libssl-1_1-x64.dll differ diff --git a/deploy/windows-10_x64/openvpn.exe b/deploy/windows-10_x64/openvpn.exe index 26576366..3f5746dd 100644 Binary files a/deploy/windows-10_x64/openvpn.exe and b/deploy/windows-10_x64/openvpn.exe differ diff --git a/deploy/windows-10_x64/tapctl.exe b/deploy/windows-10_x64/tapctl.exe index 4aff283b..2b1cd36a 100644 Binary files a/deploy/windows-10_x64/tapctl.exe and b/deploy/windows-10_x64/tapctl.exe differ diff --git a/deploy/windows-10_x86/libcrypto-1_1.dll b/deploy/windows-10_x86/libcrypto-1_1.dll index 3ce169c2..8f51d6db 100644 Binary files a/deploy/windows-10_x86/libcrypto-1_1.dll and b/deploy/windows-10_x86/libcrypto-1_1.dll differ diff --git a/deploy/windows-10_x86/liblzo2-2.dll b/deploy/windows-10_x86/liblzo2-2.dll index e88d1766..5f4cf0b4 100644 Binary files a/deploy/windows-10_x86/liblzo2-2.dll and b/deploy/windows-10_x86/liblzo2-2.dll differ diff --git a/deploy/windows-10_x86/libpkcs11-helper-1.dll b/deploy/windows-10_x86/libpkcs11-helper-1.dll index 5cfddebe..8a2063cb 100644 Binary files a/deploy/windows-10_x86/libpkcs11-helper-1.dll and b/deploy/windows-10_x86/libpkcs11-helper-1.dll differ diff --git a/deploy/windows-10_x86/libssl-1_1.dll b/deploy/windows-10_x86/libssl-1_1.dll index d28402fe..ff27b49a 100644 Binary files a/deploy/windows-10_x86/libssl-1_1.dll and b/deploy/windows-10_x86/libssl-1_1.dll differ diff --git a/deploy/windows-10_x86/openvpn.exe b/deploy/windows-10_x86/openvpn.exe index f9f8314c..90a6be05 100644 Binary files a/deploy/windows-10_x86/openvpn.exe and b/deploy/windows-10_x86/openvpn.exe differ diff --git a/deploy/windows-10_x86/tapctl.exe b/deploy/windows-10_x86/tapctl.exe index 9bfa320d..3c5d9ccd 100644 Binary files a/deploy/windows-10_x86/tapctl.exe and b/deploy/windows-10_x86/tapctl.exe differ diff --git a/deploy/windows-7_x64/libcrypto-1_1-x64.dll b/deploy/windows-7_x64/libcrypto-1_1-x64.dll index ca9ec78d..10118a61 100644 Binary files a/deploy/windows-7_x64/libcrypto-1_1-x64.dll and b/deploy/windows-7_x64/libcrypto-1_1-x64.dll differ diff --git a/deploy/windows-7_x64/liblzo2-2.dll b/deploy/windows-7_x64/liblzo2-2.dll index 77fa2437..7f25de93 100644 Binary files a/deploy/windows-7_x64/liblzo2-2.dll and b/deploy/windows-7_x64/liblzo2-2.dll differ diff --git a/deploy/windows-7_x64/libpkcs11-helper-1.dll b/deploy/windows-7_x64/libpkcs11-helper-1.dll index bcb5eb06..ec9a47aa 100644 Binary files a/deploy/windows-7_x64/libpkcs11-helper-1.dll and b/deploy/windows-7_x64/libpkcs11-helper-1.dll differ diff --git a/deploy/windows-7_x64/libssl-1_1-x64.dll b/deploy/windows-7_x64/libssl-1_1-x64.dll index 8c49c6c8..0b498d7b 100644 Binary files a/deploy/windows-7_x64/libssl-1_1-x64.dll and b/deploy/windows-7_x64/libssl-1_1-x64.dll differ diff --git a/deploy/windows-7_x64/openvpn.exe b/deploy/windows-7_x64/openvpn.exe index 26576366..3f5746dd 100644 Binary files a/deploy/windows-7_x64/openvpn.exe and b/deploy/windows-7_x64/openvpn.exe differ diff --git a/deploy/windows-7_x64/tapctl.exe b/deploy/windows-7_x64/tapctl.exe index 4aff283b..2b1cd36a 100644 Binary files a/deploy/windows-7_x64/tapctl.exe and b/deploy/windows-7_x64/tapctl.exe differ diff --git a/deploy/windows-7_x86/libcrypto-1_1.dll b/deploy/windows-7_x86/libcrypto-1_1.dll index 3ce169c2..8f51d6db 100644 Binary files a/deploy/windows-7_x86/libcrypto-1_1.dll and b/deploy/windows-7_x86/libcrypto-1_1.dll differ diff --git a/deploy/windows-7_x86/liblzo2-2.dll b/deploy/windows-7_x86/liblzo2-2.dll index e88d1766..5f4cf0b4 100644 Binary files a/deploy/windows-7_x86/liblzo2-2.dll and b/deploy/windows-7_x86/liblzo2-2.dll differ diff --git a/deploy/windows-7_x86/libpkcs11-helper-1.dll b/deploy/windows-7_x86/libpkcs11-helper-1.dll index 5cfddebe..8a2063cb 100644 Binary files a/deploy/windows-7_x86/libpkcs11-helper-1.dll and b/deploy/windows-7_x86/libpkcs11-helper-1.dll differ diff --git a/deploy/windows-7_x86/libssl-1_1.dll b/deploy/windows-7_x86/libssl-1_1.dll index d28402fe..ff27b49a 100644 Binary files a/deploy/windows-7_x86/libssl-1_1.dll and b/deploy/windows-7_x86/libssl-1_1.dll differ diff --git a/deploy/windows-7_x86/openvpn.exe b/deploy/windows-7_x86/openvpn.exe index f9f8314c..90a6be05 100644 Binary files a/deploy/windows-7_x86/openvpn.exe and b/deploy/windows-7_x86/openvpn.exe differ diff --git a/deploy/windows-7_x86/tapctl.exe b/deploy/windows-7_x86/tapctl.exe index 9bfa320d..3c5d9ccd 100644 Binary files a/deploy/windows-7_x86/tapctl.exe and b/deploy/windows-7_x86/tapctl.exe differ diff --git a/repository/build_macos.sh b/repository/build_macos.sh index faab0105..ca2081fe 100644 --- a/repository/build_macos.sh +++ b/repository/build_macos.sh @@ -2,11 +2,19 @@ set -e + +# Currently 2021-02-03 "VS for Mac" works under Rosetta, and for example App.CLI.MacOS.Elevated will be build (because called from VS prebuild) in x86_64 even on Apple M1 (arm64). +# This avoid the issue. Can be cleaned when "VS for Mac" will be released for arm64. +# The below file it's checked in /src/App.CLI.MacOS.Elevated/build.sh +# The below file it's checked in /src/eddie.macos.prebuild.sh to allow pick the right deploy folder for whitelist hashing +uname -m >/tmp/eddie_deploy_arch_native.txt + # rm -f files/* + + # Note: first, ensure deploy files signature. Normally are done by building script, this is an exception. # Otherwise, openvpn will be signed after the compilation of Elevated, that will contain a mismatch sha256. - macos_common/presign.sh # CLI edition exists, but Xamarin build an .app bundle and @@ -26,13 +34,16 @@ macos_common/presign.sh # Mojave works witn 10.9, don't work with 10.15 (throw a SystemNetworkInformation exception, due libc.dylib link issue) # High Sierra works with 10.15 AND 10.9. -macos_portable/build.sh ui x64 macos-10.9 -macos_portable/build.sh ui x64 macos-10.15 - -macos_pkg/build.sh ui x64 macos-10.9 -macos_pkg/build.sh ui x64 macos-10.15 - -macos_dmg/build.sh ui x64 macos-10.9 -macos_dmg/build.sh ui x64 macos-10.15 +# Need arch diff +VARARCH=$(cat /tmp/eddie_deploy_arch_native.txt) +if [ ${VARARCH} = "x86_64" ]; then + macos_portable/build.sh ui macos-10.9 + macos_pkg/build.sh ui macos-10.9 + macos_dmg/build.sh ui macos-10.9 +fi + +macos_portable/build.sh ui macos-10.15 +macos_pkg/build.sh ui macos-10.15 +macos_dmg/build.sh ui macos-10.15 echo "Done." diff --git a/repository/linux_arch/build.sh b/repository/linux_arch/build.sh index a00dc01f..8286cef2 100644 --- a/repository/linux_arch/build.sh +++ b/repository/linux_arch/build.sh @@ -22,7 +22,8 @@ CONFIG=Release SCRIPTDIR=$(dirname $(realpath -s $0)) ARCH=$($SCRIPTDIR/../linux_common/get-arch.sh) VERSION=$($SCRIPTDIR/../linux_common/get-version.sh) -VERSIONSTABLE="2.18.9" +#VERSIONSTABLE="2.18.9" +VERSIONSTABLE=$(curl --silent "https://api.github.com/repos/AirVPN/Eddie/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")') TARGETDIR=/tmp/eddie_deploy/eddie-${PROJECT}_${VERSION}_linux_${ARCH}_arch DEPLOYPATH=${SCRIPTDIR}/../files/eddie-${PROJECT}_${VERSION}_linux_${ARCH}_arch.tar.zst @@ -99,7 +100,9 @@ function arch_env() { sed -i "s|{@pkgdepends}|(mono openvpn sudo desktop-file-utils libnotify libappindicator-gtk2)|g" PKGBUILD fi sed -i "s|{@source}|https://github.com/AirVPN/Eddie/archive/${VERSIONSTABLE}.tar.gz|g" PKGBUILD - echo Enter AUR passphrase if requested + if test -f "${SCRIPTDIR}/../signing/aur.key.password.txt"; then # Staff AirVPN + echo if requested, enter $(cat "${SCRIPTDIR}/../signing/aur.key.password.txt") as passphrase + fi git clone ssh://aur@aur.archlinux.org/eddie-${PROJECT}.git cd eddie-${PROJECT} cp ../PKGBUILD . diff --git a/repository/macos_common/compile.sh b/repository/macos_common/compile.sh index 66b9a59c..777b0a1d 100644 --- a/repository/macos_common/compile.sh +++ b/repository/macos_common/compile.sh @@ -36,6 +36,7 @@ fi RULESETPATH="${SCRIPTDIR}/../../src/ruleset/norules.ruleset" ARCHCOMPILE=${ARCH} +ARCHCOMPILE=x64 # Unlike other platform, the pre-build / post-build script are already in .vcproj, managed by msbuild correctly diff --git a/repository/macos_common/deploy.sh b/repository/macos_common/deploy.sh index 3602be11..4c6050af 100644 --- a/repository/macos_common/deploy.sh +++ b/repository/macos_common/deploy.sh @@ -7,9 +7,13 @@ realpath() { } SCRIPTDIR=$(dirname $(realpath "$0")) +REMOTEDIR=$2 +if [[ ${REMOTEDIR} == "internal" ]]; then + REMOTEDIR=/home/www/repository/eddie/internal +fi if test -f "${SCRIPTDIR}/../signing/eddie.website_deploy.key"; then # Staff AirVPN chmod 600 "${SCRIPTDIR}/../signing/eddie.website_deploy.key" echo Send to eddie.website server: $1 - scp -P 46333 -i "${SCRIPTDIR}/../signing/eddie.website_deploy.key" "$1" deploy@eddie.website:/home/www/repository/eddie/internal + scp -P 46333 -i "${SCRIPTDIR}/../signing/eddie.website_deploy.key" "$1" deploy@eddie.website:${REMOTEDIR} fi diff --git a/repository/macos_common/notarize.sh b/repository/macos_common/notarize.sh index 9be63815..184fc6a1 100644 --- a/repository/macos_common/notarize.sh +++ b/repository/macos_common/notarize.sh @@ -1,7 +1,7 @@ #!/bin/bash # First argument must be file package -# Second argument must be project (cli/ui) +# Second argument must be bundle id # set -euo pipefail @@ -10,7 +10,7 @@ realpath() { } FILENOTARIZE=$1 -PROJECT=$2 +APPLE_NOTARIZE_BUNDLE_ID=$2 SCRIPTDIR=$(dirname $(realpath "$0")) @@ -21,7 +21,6 @@ if test -f "${SCRIPTDIR}/../signing/apple-dev-id.txt"; then APPLE_NOTARIZE_USERNAME=$(cat ${SCRIPTDIR}/../signing/apple-notarize-username.txt) APPLE_NOTARIZE_PASSWORD=$(cat ${SCRIPTDIR}/../signing/apple-notarize-password.txt) - APPLE_NOTARIZE_BUNDLE_ID="org.airvpn.eddie.${PROJECT}" APPLE_NOTARIZE_ASC_PROVIDER=$(cat ${SCRIPTDIR}/../signing/apple-notarize-asc-provider.txt) echo "Notarization Upload..." @@ -33,6 +32,7 @@ if test -f "${SCRIPTDIR}/../signing/apple-dev-id.txt"; then echo 2- if fail with 'You must first sign the relevant contracts online. (1048)', goto https://developer.apple.com/account/ , login and accept the new TOS. echo ---- + echo xcrun altool --notarize-app --primary-bundle-id "$APPLE_NOTARIZE_BUNDLE_ID" --username "$APPLE_NOTARIZE_USERNAME" --password "$APPLE_NOTARIZE_PASSWORD" --asc-provider "$APPLE_NOTARIZE_ASC_PROVIDER" --file "${FILENOTARIZE}" 2>&1 | awk '/RequestUUID/ { print $NF; }' requestUUID=$(xcrun altool --notarize-app --primary-bundle-id "$APPLE_NOTARIZE_BUNDLE_ID" --username "$APPLE_NOTARIZE_USERNAME" --password "$APPLE_NOTARIZE_PASSWORD" --asc-provider "$APPLE_NOTARIZE_ASC_PROVIDER" --file "${FILENOTARIZE}" 2>&1 | awk '/RequestUUID/ { print $NF; }') echo "Notarization RequestUUID: $requestUUID" diff --git a/repository/macos_common/presign.sh b/repository/macos_common/presign.sh index 2541cdba..065530c9 100644 --- a/repository/macos_common/presign.sh +++ b/repository/macos_common/presign.sh @@ -7,13 +7,14 @@ realpath() { } SCRIPTDIR=$(dirname $(realpath "$0")) +ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/openvpn" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/libcrypto.1.1.dylib" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/liblzo2.2.dylib" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/libpkcs11-helper.1.dylib" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/libssl.1.1.dylib" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/hummingbird" no yes -${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_x64/stunnel" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/openvpn" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/libcrypto.1.1.dylib" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/liblzo2.2.dylib" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/libpkcs11-helper.1.dylib" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/libssl.1.1.dylib" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/hummingbird" no yes +${SCRIPTDIR}/sign.sh "${SCRIPTDIR}/../../deploy/macos_${ARCH}/stunnel" no yes echo "Pre-sign done." diff --git a/repository/macos_common/sign.sh b/repository/macos_common/sign.sh index f93b7a19..e36689e5 100644 --- a/repository/macos_common/sign.sh +++ b/repository/macos_common/sign.sh @@ -41,8 +41,15 @@ if [ ${VARSTAFF} = "yes" ]; then if [ ${DOSIGN} = "no" ]; then set +e codesign --verify -v "${VARPATH}" - if [ $? -eq 0 ]; then - echo "Signing, already: ${VARPATH}" + if [ $? -eq 0 ]; then + # Files with 'Signature=adhoc' pass verify, ensure there is an Authority + VARAUTHORITY=$(codesign -dv --verbose=4 "${VARPATH}" 2>&1 | grep Authority) + if [ -z "$VARAUTHORITY" ]; then + echo "Detected signed without Authority, resign" + DOSIGN="yes" + else + echo "Signing, already: ${VARPATH}" + fi else DOSIGN="yes" fi diff --git a/repository/macos_dmg/build.sh b/repository/macos_dmg/build.sh index 9bae8b92..3349dce0 100644 --- a/repository/macos_dmg/build.sh +++ b/repository/macos_dmg/build.sh @@ -13,18 +13,12 @@ if [ "$1" == "" ]; then fi if [ "$2" == "" ]; then - echo Second arg must be Architecture: x64 - exit 1 -fi - -if [ "$3" == "" ]; then - echo Third arg must be OS: 10.9,10.15 + echo Second arg must be OS: 10.9,10.15 exit 1 fi PROJECT=$1 -ARCH=$2 -VAROS=$3 +VAROS=$2 CONFIG=Release VARSTAFF="no" @@ -32,7 +26,7 @@ if test -f "${SCRIPTDIR}/../signing/apple-dev-id.txt"; then # Staff AirVPN VARSTAFF="yes" fi -# ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) +ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) VERSION=$($SCRIPTDIR/../macos_common/get-version.sh) TARGETDIR=/tmp/eddie_deploy/eddie-${PROJECT}_${VERSION}_${VAROS}_${ARCH}_disk_temp.dmg @@ -96,12 +90,12 @@ fi # Notarization - Not need # if [ ${VARSTAFF} = "yes" ]; then -# "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "${PROJECT}" +# "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "org.airvpn.eddie.${PROJECT}" # fi # Deploy to eddie.website -${SCRIPTDIR}/../macos_common/deploy.sh ${FINALPATH} +${SCRIPTDIR}/../macos_common/deploy.sh ${FINALPATH} "internal" # End diff --git a/repository/macos_pkg/build.sh b/repository/macos_pkg/build.sh index 2a9a1918..d5a757be 100644 --- a/repository/macos_pkg/build.sh +++ b/repository/macos_pkg/build.sh @@ -13,18 +13,12 @@ if [ "$1" == "" ]; then fi if [ "$2" == "" ]; then - echo Second arg must be Architecture: x64 - exit 1 -fi - -if [ "$3" == "" ]; then - echo Third arg must be OS: 10.9,10.15 + echo Second arg must be OS: 10.9,10.15 exit 1 fi PROJECT=$1 -ARCH=$2 -VAROS=$3 +VAROS=$2 CONFIG=Release VARSTAFF="no" @@ -32,7 +26,7 @@ if test -f "${SCRIPTDIR}/../signing/apple-dev-id.txt"; then # Staff AirVPN VARSTAFF="yes" fi -# ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) +ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) VERSION=$($SCRIPTDIR/../macos_common/get-version.sh) TARGETDIR=/tmp/eddie_deploy/eddie-${PROJECT}_${VERSION}_${VAROS}_${ARCH}_installer_temp.pkg @@ -85,7 +79,7 @@ fi if [ ${VARSTAFF} = "yes" ]; then if [ ${VARHARDENING} = "yes" ]; then - "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "${PROJECT}" + "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "org.airvpn.eddie.${PROJECT}" fi fi @@ -95,7 +89,7 @@ mv ${FINALPATH} ${DEPLOYPATH} # Deploy to eddie.website -"${SCRIPTDIR}/../macos_common/deploy.sh" "${DEPLOYPATH}" +"${SCRIPTDIR}/../macos_common/deploy.sh" "${DEPLOYPATH}" "internal" # Cleanup diff --git a/repository/macos_portable/build.sh b/repository/macos_portable/build.sh index 4a72ef22..ddc07545 100644 --- a/repository/macos_portable/build.sh +++ b/repository/macos_portable/build.sh @@ -16,12 +16,7 @@ if [ "$1" == "" ]; then fi if [ "$2" == "" ]; then - echo Second arg must be Architecture: x64 - exit 1 -fi - -if [ "$3" == "" ]; then - echo Third arg must be OS: 10.9,10.15 + echo Second arg must be OS: 10.9,10.15 exit 1 fi @@ -37,8 +32,7 @@ if ! [ -x "$(command -v msbuild)" ]; then fi PROJECT=$1 -ARCH=$2 -VAROS=$3 +VAROS=$2 CONFIG=Release VARSTAFF="no" @@ -46,8 +40,7 @@ if test -f "${SCRIPTDIR}/../signing/apple-dev-id.txt"; then # Staff AirVPN VARSTAFF="yes" fi -# ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) - +ARCH=$($SCRIPTDIR/../macos_common/get-arch.sh) VERSION=$($SCRIPTDIR/../macos_common/get-version.sh) TARGETDIR=/tmp/eddie_deploy/eddie-${PROJECT}_${VERSION}_${VAROS}_${ARCH}_portable @@ -69,7 +62,8 @@ rm -rf /tmp/eddie_deploy echo Step: Compile -ARCHCOMPILE=${ARCH} +# ARCHCOMPILE=${ARCH} +ARCHCOMPILE=x64 "${SCRIPTDIR}/../macos_common/compile.sh" ${PROJECT} @@ -215,15 +209,14 @@ fi if [ ${VARSTAFF} = "yes" ]; then if [ ${VARHARDENING} = "yes" ]; then - "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "${PROJECT}" - echo "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "${PROJECT}" + "${SCRIPTDIR}/../macos_common/notarize.sh" "${FINALPATH}" "org.airvpn.eddie.${PROJECT}" fi fi # Deploy to eddie.website if [ ${VARSTAFF} = "yes" ]; then - "${SCRIPTDIR}/../macos_common/deploy.sh" "${FINALPATH}" + "${SCRIPTDIR}/../macos_common/deploy.sh" "${FINALPATH}" "internal" fi # End diff --git a/src/App.CLI.Common.Elevated/hashes.h b/src/App.CLI.Common.Elevated/hashes.h index ff2a4b15..0e72edfc 100644 --- a/src/App.CLI.Common.Elevated/hashes.h +++ b/src/App.CLI.Common.Elevated/hashes.h @@ -16,5 +16,5 @@ // along with Eddie. If not, see . // -const std::string expectedOpenvpnHash = "6cf2dae78cf4bee2c5f03ddf1e0bed922ac426d4fa672760d68a4253eef5db1c"; -const std::string expectedHummingbirdHash = "facd09b146b7c41758a9105f1c2415c482e7c24816cc9f3e15d72551495955ae"; +const std::string expectedOpenvpnHash = "60a130c2d465b162b158e96ad8907b8cc1cc51f881e5cd33d141821a3d08df38"; +const std::string expectedHummingbirdHash = "6734448c4b02adde44d8f5f1d6164015266ce6e2e03d254499a44c9d2972cc3a"; diff --git a/src/App.CLI.Common.Elevated/ibase.cpp b/src/App.CLI.Common.Elevated/ibase.cpp index bec98c45..83159f58 100644 --- a/src/App.CLI.Common.Elevated/ibase.cpp +++ b/src/App.CLI.Common.Elevated/ibase.cpp @@ -599,12 +599,15 @@ void IBase::Do(const std::string& commandId, const std::string& command, std::ma std::vector paths; AddTorCookiePaths(processPath, username, paths); + + LogRemote("pazzo tor search"); for (std::vector::const_iterator i = paths.begin(); i != paths.end(); ++i) { std::string path = *i; if (FsFileExists(path)) { + LogRemote("pazzo tor found:" + path); std::vector chars = FsFileReadBytes(path); if (chars.size() > 0) { diff --git a/src/App.CLI.Common.Elevated/iposix.cpp b/src/App.CLI.Common.Elevated/iposix.cpp index 16646dc5..5751e009 100644 --- a/src/App.CLI.Common.Elevated/iposix.cpp +++ b/src/App.CLI.Common.Elevated/iposix.cpp @@ -276,6 +276,8 @@ void IPosix::AddTorCookiePaths(const std::string& torPath, const std::string& us result.push_back("/var/run/tor/control.authcookie"); result.push_back("/var/lib/tor/control_auth_cookie"); + result.push_back("/run/tor/control.authcookie"); // Default Ubuntu 20.04.1 LTS tor from official repo + result.push_back("/run/tor/control_auth_cookie"); // Variant of above } // -------------------------- @@ -334,20 +336,16 @@ std::string IPosix::GetCmdlineOfProcessId(pid_t pid) std::string result; FILE *f; - char ch; f = fopen(path.c_str(), "rb"); if(f == NULL) return ""; for(;;) { - ch = fgetc(f); - if(ch == EOF) + int chI = fgetc(f); + if(chI == EOF) break; - - #ifdef __arm__ - // Workaround. The if(ch == EOF) above never match under raspbian (at least Buster) EOF==-1. The if(ch == 255) below throw a warning constant-out-of-range under macOS. Need investigation. - if(ch == 255) break; - #endif + + unsigned char ch = (unsigned char) chI; if(ch == 0) result += " "; diff --git a/src/App.CLI.MacOS.Elevated/build.sh b/src/App.CLI.MacOS.Elevated/build.sh index f10d7b02..0e6b65db 100644 --- a/src/App.CLI.MacOS.Elevated/build.sh +++ b/src/App.CLI.MacOS.Elevated/build.sh @@ -14,8 +14,11 @@ fi BASEPATH=$(dirname $(realpath "$0")) mkdir -p "$BASEPATH/bin" +# See comment in /repository/build_macos.sh +VARARCH=$(cat /tmp/eddie_deploy_arch_native.txt) + # Dynamic edition -g++ -mmacosx-version-min=10.9 -o "$BASEPATH/bin/eddie-cli-elevated" "$BASEPATH/src/main.cpp" "$BASEPATH/src/impl.cpp" "$BASEPATH/../App.CLI.Common.Elevated/iposix.cpp" "$BASEPATH/../App.CLI.Common.Elevated/ibase.cpp" "$BASEPATH/../App.CLI.Common.Elevated/sha256.cpp" -Wall -std=c++11 -O3 -pthread -lpthread -D$1 +g++ -mmacosx-version-min=10.9 -arch ${VARARCH} -o "$BASEPATH/bin/eddie-cli-elevated" "$BASEPATH/src/main.cpp" "$BASEPATH/src/impl.cpp" "$BASEPATH/../App.CLI.Common.Elevated/iposix.cpp" "$BASEPATH/../App.CLI.Common.Elevated/ibase.cpp" "$BASEPATH/../App.CLI.Common.Elevated/sha256.cpp" -Wall -std=c++11 -O3 -pthread -lpthread -D$1 chmod a+x "$BASEPATH/bin/eddie-cli-elevated" echo Done diff --git a/src/App.Cocoa.MacOS/App.Cocoa.macOS.csproj b/src/App.Cocoa.MacOS/App.Cocoa.macOS.csproj index 8b8e91fe..eb14308e 100644 --- a/src/App.Cocoa.MacOS/App.Cocoa.macOS.csproj +++ b/src/App.Cocoa.MacOS/App.Cocoa.macOS.csproj @@ -65,7 +65,7 @@ - ..\..\..\..\..\..\Library\Frameworks\Xamarin.Mac.framework\Versions\6.18.2.1\lib\reference\full\Xamarin.Mac.dll + ..\..\..\..\..\..\Library\Frameworks\Xamarin.Mac.framework\Versions\Current\lib\reference\full\Xamarin.Mac.dll diff --git a/src/App.Cocoa.MacOS/Info.plist b/src/App.Cocoa.MacOS/Info.plist index 32a6ae74..57b56ba2 100644 --- a/src/App.Cocoa.MacOS/Info.plist +++ b/src/App.Cocoa.MacOS/Info.plist @@ -17,7 +17,7 @@ LSApplicationCategoryType public.app-category.utilities CFBundleShortVersionString - 2.19.7 + 2.20.0 CFBundleIdentifier org.airvpn.eddie.ui CFBundleDisplayName diff --git a/src/App.Cocoa.MacOS/MainWindow.xib b/src/App.Cocoa.MacOS/MainWindow.xib index ebcf79cf..b6d2f1b3 100644 --- a/src/App.Cocoa.MacOS/MainWindow.xib +++ b/src/App.Cocoa.MacOS/MainWindow.xib @@ -1,8 +1,7 @@ - + - - + @@ -105,18 +104,18 @@ - + - + - + @@ -126,7 +125,7 @@ - + @@ -136,14 +135,14 @@ - + - + @@ -158,7 +157,7 @@ - + @@ -170,7 +169,7 @@ - - + - + - + @@ -200,7 +199,7 @@ - - - - + @@ -236,7 +235,7 @@ - + @@ -245,7 +244,7 @@ - + @@ -254,7 +253,7 @@ - + @@ -274,11 +273,11 @@ - + - + @@ -287,7 +286,7 @@ - + @@ -296,7 +295,7 @@ - - + - + @@ -336,7 +335,7 @@ - + @@ -345,7 +344,7 @@ - + @@ -354,7 +353,7 @@ - + @@ -363,7 +362,7 @@ - + @@ -372,7 +371,7 @@ - + @@ -381,7 +380,7 @@ - + @@ -390,7 +389,7 @@ - + @@ -399,7 +398,7 @@ - + @@ -408,7 +407,7 @@ - + @@ -417,7 +416,7 @@ - + @@ -426,7 +425,7 @@ - + @@ -441,7 +440,7 @@ - + @@ -450,7 +449,7 @@ - - - - + - + - - + + @@ -513,7 +512,6 @@ - @@ -522,7 +520,6 @@ - @@ -535,7 +532,6 @@ - @@ -548,7 +544,6 @@ - @@ -561,7 +556,6 @@ - @@ -580,16 +574,16 @@ - @@ -601,16 +595,16 @@ - + - + - - + + @@ -618,7 +612,6 @@ - @@ -627,7 +620,6 @@ - @@ -636,7 +628,6 @@ - @@ -649,7 +640,6 @@ - @@ -658,7 +648,6 @@ - @@ -671,7 +660,6 @@ - @@ -684,7 +672,6 @@ - @@ -693,7 +680,6 @@ - @@ -706,7 +692,6 @@ - @@ -725,20 +710,20 @@ - - + + - - - - - - - - + @@ -815,7 +800,7 @@ - - + @@ -832,7 +817,7 @@ - - - - - - - -