Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eefb31be76 | ||
|
|
1e3a8db2b6 | ||
|
|
531d3e48ab | ||
|
|
edf400d681 | ||
|
|
c03ffce707 | ||
|
|
22fac25b52 | ||
|
|
d75b291e71 | ||
|
|
66efa12e24 | ||
|
|
90a3558751 | ||
|
|
5cd2147527 | ||
|
|
08af88b591 | ||
|
|
23bef375ef |
@@ -10,6 +10,7 @@
|
||||
@synthesize versionMenuItem = _versionMenuItem;
|
||||
|
||||
DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
BOOL appUpdated = FALSE;
|
||||
|
||||
- (void) setCheckBoxesEnabled: (BOOL) enabled
|
||||
{
|
||||
@@ -87,6 +88,10 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
NSString *stateDescription = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-resolvers-description.sh", nil]];
|
||||
if ([stateDescription isEqualToString: @"DNSCrypt"]) {
|
||||
currentState = kDNS_CONFIGURATION_LOCALHOST;
|
||||
if (appUpdated == FALSE) {
|
||||
appUpdated = TRUE;
|
||||
[self appUpdate];
|
||||
}
|
||||
} else if ([stateDescription isEqualToString: @"None"]) {
|
||||
currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
} else if ([stateDescription isEqualToString: @"Updating"]) {
|
||||
@@ -190,6 +195,12 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) appUpdate {
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./update-dnscrypt-app.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
- (IBAction)dnscryptMenuItemPushed:(NSMenuItem *)sender
|
||||
{
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.utilities</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
|
||||
@@ -447,6 +447,38 @@
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>/usr/local/lib/dnscrypt-proxy/libdcplugin_example.la</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>3</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>/usr/local/lib/dnscrypt-proxy/libdcplugin_example.so</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>3</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
@@ -543,6 +575,38 @@
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>/usr/local/lib/dnscrypt-proxy/libdcplugin_example_ldns_opendns_set_client_ip.la</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>3</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>/usr/local/lib/dnscrypt-proxy/libdcplugin_example_ldns_opendns_set_client_ip.so</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>3</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
@@ -829,7 +893,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.5.0.1</string>
|
||||
<string>1.5.0.3</string>
|
||||
</dict>
|
||||
<key>UUID</key>
|
||||
<string>7F7D70AB-F7A2-4027-8304-3063C7B9532F</string>
|
||||
@@ -1369,7 +1433,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
@@ -1862,7 +1926,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
|
||||
VERSION='1.0.7'
|
||||
VERSION='1.0.9'
|
||||
|
||||
cd build || exit 1
|
||||
[ -e DNSCrypt.pkg ] || exit 1
|
||||
@@ -12,7 +12,6 @@ productsign --sign 'Developer ID Installer' DNSCrypt.pkg DNSCrypt-OSX.pkg
|
||||
mv DNSCrypt.pkg DNSCrypt-unsigned.pkg
|
||||
mv DNSCrypt-OSX.pkg DNSCrypt.pkg
|
||||
|
||||
zip -9 -r "dnscrypt-osxclient-${VERSION}.zip" DNSCrypt.pkg
|
||||
rm -fr dnscrypt-pkg
|
||||
rm -f "dnscrypt-osxclient-${VERSION}.dmg"
|
||||
mkdir dnscrypt-pkg
|
||||
@@ -22,3 +21,7 @@ hdiutil create "dnscrypt-osxclient-${VERSION}.dmg" -srcfolder dnscrypt-pkg
|
||||
mv dnscrypt-pkg/DNSCrypt.pkg .
|
||||
rm -fr dnscrypt-pkg
|
||||
rm -fr DNSCrypt-unsigned.pkg
|
||||
|
||||
minisign -S -m "dnscrypt-osxclient-${VERSION}.dmg" \
|
||||
-p ../../minisign.pub -s ../../minisign.key \
|
||||
-t "dnscrypt-osxclient-${VERSION}.dmg"
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.7</string>
|
||||
<string>1.0.9</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>BSD</string>
|
||||
<key>NSMainNibFile</key>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#import <WebKit/WebKit.h>
|
||||
#import "CHCSVParser/CHCSVParser.h"
|
||||
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.7"
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.8"
|
||||
|
||||
#define kDNSCRYPT_PREFPANE_APP_PATH @"/Library/PreferencePanes/DNSCrypt.prefPane"
|
||||
#define kDNSCRYPT_USR_BASE_DIR kDNSCRYPT_PREFPANE_APP_PATH @"/Contents/Resources/usr"
|
||||
|
||||
@@ -21,6 +21,18 @@
|
||||
%body
|
||||
%h1 Release Notes for DNSCrypt-OSXclient by AlterStep
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.9 by AlterStep
|
||||
%time Tue, 12 Jul 2015
|
||||
%p
|
||||
Fixed an issue with libsodium not being found by minisign-verify
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.8 by AlterStep
|
||||
%time Tue, 12 Jul 2015
|
||||
%p
|
||||
New versions are automatically downloaded
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.7 by AlterStep
|
||||
%time Tue, 1 Jul 2015
|
||||
|
||||
@@ -25,6 +25,20 @@
|
||||
</head>
|
||||
<body>
|
||||
<h1>Release Notes for DNSCrypt-OSXclient by AlterStep</h1>
|
||||
<article>
|
||||
<h2>Version 1.0.9 by AlterStep</h2>
|
||||
<time>Tue, 12 Jul 2015</time>
|
||||
<p>
|
||||
Fixed an issue with libsodium not being found by minisign-verify
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.8 by AlterStep</h2>
|
||||
<time>Tue, 12 Jul 2015</time>
|
||||
<p>
|
||||
New versions are automatically downloaded
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.7 by AlterStep</h2>
|
||||
<time>Tue, 1 Jul 2015</time>
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
rm -f "$QUERY_LOG_FILE"
|
||||
rm -f "$DEBUG_LOG_FILE"
|
||||
find -x "$RESOLVERS_LIST_STATE" -type f -mtime +1 -exec rm -f {} \; 2>/dev/null
|
||||
find -x "$APP_UPDATES_STATE" -type f -mtime +1 -exec rm -f {} \; 2>/dev/null
|
||||
|
||||
./clear-fw.sh
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
|
||||
CURRENT_VERSION=2
|
||||
|
||||
DNSCRYPT_USR_BASE_DIR='/Library/PreferencePanes/DNSCrypt.prefPane/Contents/Resources/usr'
|
||||
DNSCRYPT_VAR_BASE_DIR='/Library/Application Support/DNSCrypt'
|
||||
DNSCRYPT_LOG_BASE_DIR='/var/log'
|
||||
@@ -35,6 +38,11 @@ BLACKLIST_DOMAINS_TMP_FILE="${BLACKLIST_DOMAINS_FILE}.tmp"
|
||||
EXCEPTIONS_FILE="${CONTROL_DIR}/exceptions"
|
||||
EXCEPTIONS_TMP_FILE="${EXCEPTIONS_FILE}.tmp"
|
||||
|
||||
APP_UPDATES_BASE_URL="http://updates.dnscrypt.org/updates/dnscrypt-osx-client"
|
||||
APP_UPDATES_DIR="${DNSCRYPT_VAR_BASE_DIR}/updates"
|
||||
APP_UPDATES_PUBLIC_KEY="RWRvw8aArS/yEI3In0/zQSb9+qfWonLxjjEYG17cXt6zct6GLKtEvUfk"
|
||||
APP_UPDATES_STATE="${APP_UPDATES_DIR}/app-updated"
|
||||
|
||||
RESOLVERS_UPDATES_BASE_URL="http://updates.dnscrypt.org/dnscrypt-proxy"
|
||||
RESOLVERS_LIST_BASE_DIR="/usr/local/share/dnscrypt-proxy"
|
||||
RESOLVERS_LIST_PUBLIC_KEY="RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3"
|
||||
|
||||
@@ -15,6 +15,9 @@ fi
|
||||
mkdir -m 755 -p "$TICKETS_DIR" || exit 1
|
||||
chown -R "${wanted_uid}:0" "$TICKETS_DIR"
|
||||
|
||||
mkdir -m 755 -p "$APP_UPDATES_DIR" || exit 1
|
||||
chown -R "${wanted_uid}:0" "$APP_UPDATES_DIR"
|
||||
|
||||
eval $(stat -s "$CONTROL_DIR") || exit 1
|
||||
if [ $? != 0 ]; then
|
||||
mkdir -m 755 -p "$CONTROL_DIR" || exit 1
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
DNSCRYPT_LIB_BASE_DIR="${DNSCRYPT_USR_BASE_DIR}/lib"
|
||||
export DYLD_LIBRARY_PATH="${DNSCRYPT_LIB_BASE_DIR}:${DYLD_LIBRARY_PATH}"
|
||||
|
||||
TARGET_DIR=~/Desktop
|
||||
|
||||
[ -e "$APP_UPDATES_STATE" ] && exit 0
|
||||
touch "$APP_UPDATES_STATE" || exit 1
|
||||
|
||||
[ -d "$TARGET_DIR" ] || exit 1
|
||||
mkdir -p "$APP_UPDATES_DIR" || exit 1
|
||||
|
||||
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
|
||||
"${APP_UPDATES_BASE_URL}/versions.txt" > "${APP_UPDATES_DIR}/versions.txt" || exit 1
|
||||
|
||||
CURRENT_HASH=$(shasum -a 512 "${APP_UPDATES_DIR}/versions.txt")
|
||||
OLD_HASH=$(cat "${APP_UPDATES_DIR}/versions_hash" 2> /dev/null)
|
||||
[ "x$CURRENT_HASH" = "x$OLD_HASH" ] && exit 0
|
||||
|
||||
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
|
||||
"${APP_UPDATES_BASE_URL}/versions.txt.minisig" > "${APP_UPDATES_DIR}/versions.txt.minisig" || exit 1
|
||||
|
||||
minisign-verify -q -V -P "$APP_UPDATES_PUBLIC_KEY" -m "${APP_UPDATES_DIR}/versions.txt" || exit 1
|
||||
rm -f "${APP_UPDATES_DIR}/versions.txt.minisig"
|
||||
|
||||
OS_VERSION=$(sw_vers -productVersion | sed 's/[^0-9.]$//' | cut -d. -f1-2) || exit 0
|
||||
AVAILABLE=$(egrep "^${OS_VERSION} " "${APP_UPDATES_DIR}/versions.txt") || exit 0
|
||||
rm -f "${APP_UPDATES_DIR}/versions.txt"
|
||||
AVAILABLE_VERSION=$(echo "$AVAILABLE" | cut -d' ' -f2 | sed 's/[^0-9]//g')
|
||||
DOWNLOAD_URL=$(echo "$AVAILABLE" | cut -d' ' -f3 | sed 's/ //g')
|
||||
DOWNLOADED_FILE="${TARGET_DIR}/dnscrypt-update-${AVAILABLE_VERSION}.dmg"
|
||||
[ -f "$DOWNLOADED_FILE" ] && exit 0
|
||||
[ -z "$AVAILABLE_VERSION" -o -z "$DOWNLOAD_URL" ] && exit 1
|
||||
[ "$AVAILABLE_VERSION" -gt "$CURRENT_VERSION" ] || exit 0
|
||||
SIG_DOWNLOAD_URL="${DOWNLOAD_URL}.minisig"
|
||||
|
||||
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
|
||||
"$SIG_DOWNLOAD_URL" > "${APP_UPDATES_DIR}/update.tmp.minisig" || exit 1
|
||||
|
||||
curl -L --max-redirs 5 -4 -m 300 --connect-timeout 30 -s --compress \
|
||||
"$DOWNLOAD_URL" > "${APP_UPDATES_DIR}/update.tmp" || exit 1
|
||||
|
||||
minisign-verify -q -V -P "$APP_UPDATES_PUBLIC_KEY" -m "${APP_UPDATES_DIR}/update.tmp" || exit 1
|
||||
rm -f "${APP_UPDATES_DIR}/update.tmp.minisig"
|
||||
|
||||
mv -f "${APP_UPDATES_DIR}/update.tmp" "$DOWNLOADED_FILE" || exit 1
|
||||
echo "$CURRENT_HASH" > "${APP_UPDATES_DIR}/versions_hash"
|
||||
|
||||
osascript -e "display notification \"A new version of DNSCrypt has been downloaded and saved on your desktop. Install it whenever you want!\" with title \"A new version of DNSCrypt is available!\" sound name \"Hero\""
|
||||
@@ -2,6 +2,9 @@
|
||||
|
||||
. ./common.inc
|
||||
|
||||
DNSCRYPT_LIB_BASE_DIR="${DNSCRYPT_USR_BASE_DIR}/lib"
|
||||
export DYLD_LIBRARY_PATH="${DNSCRYPT_LIB_BASE_DIR}:${DYLD_LIBRARY_PATH}"
|
||||
|
||||
logger_debug "Checking if updates to the resolvers list are available"
|
||||
|
||||
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
|
||||
|
||||
+13
-8
@@ -1,21 +1,26 @@
|
||||
OSX client for managing the DNSCrypt Proxy
|
||||
==========================================
|
||||
|
||||
The purpose of this application is to allow the user to have a better
|
||||
experience controlling the DNSCrypt Proxy on OSX.
|
||||
The purpose of this application is to allow the user to have a better experience controlling the DNSCrypt Proxy on OSX.
|
||||
|
||||
[Download dnscrypt-osxclient-1.0.6.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.6/dnscrypt-osxclient-1.0.6.dmg)
|
||||
for OSX 10.8 (Mountain Lion), OSX 10.9 (Mavericks), OSX 10.10 (Yosemite) and
|
||||
OSX 10.11 (El Capitan).
|
||||
[Download dnscrypt-osxclient-1.0.9.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.9/dnscrypt-osxclient-1.0.9.dmg)
|
||||
for OSX 10.8 (Mountain Lion), OSX 10.9 (Mavericks), OSX 10.10 (Yosemite) and OSX 10.11 (El Capitan).
|
||||
|
||||
Compatible with:
|
||||
* Adamas
|
||||
* Cisco (OpenDNS)
|
||||
* CloudNS
|
||||
* Cypherpunk.lu
|
||||
* d0wn
|
||||
* DNSCrypt.eu
|
||||
* DNSCrypt.org
|
||||
* okTurtles
|
||||
* OpenDNS
|
||||
* OVPN
|
||||
* OpenNIC
|
||||
* Proxy.sh
|
||||
* Soltysiak
|
||||
* d0wn
|
||||
* iPredator
|
||||
* okTurtles
|
||||
|
||||
Packages are signed with [Minisign](https://jedisct1.github.io/minisign/) and can be verified with:
|
||||
|
||||
minisign -V -P RWRvw8aArS/yEI3In0/zQSb9+qfWonLxjjEYG17cXt6zct6GLKtEvUfk -m dnscrypt-osxclient-*.dmg
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
untrusted comment: alterstep minisign public key 10F22FAD80C6C36F
|
||||
RWRvw8aArS/yEI3In0/zQSb9+qfWonLxjjEYG17cXt6zct6GLKtEvUfk
|
||||
@@ -0,0 +1,4 @@
|
||||
10.8 1 https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.8/dnscrypt-osxclient-1.0.8.dmg
|
||||
10.9 1 https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.8/dnscrypt-osxclient-1.0.8.dmg
|
||||
10.10 1 https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.8/dnscrypt-osxclient-1.0.8.dmg
|
||||
10.11 1 https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.8/dnscrypt-osxclient-1.0.8.dmg
|
||||
@@ -0,0 +1,4 @@
|
||||
untrusted comment: signature from minisign secret key
|
||||
RWRvw8aArS/yEHYsWWF0s6ueXO4F4Xql7W4QD0TOfRs8ZBSPtjxSgrMPis0k46GPhVkaAFzbWx1jEXCNLgDNlnehWwFEjhD/DQc=
|
||||
trusted comment: timestamp: 1436633664 file: versions.txt
|
||||
O4OxZpRmxNPlsVSeuVO2SpdmzTwnMpvPV9dMMr1W5FtusQ+WZtXVupBYRu15NZ1VsKbY0b4k0Qb1Jjb7loWsAw==
|
||||
Reference in New Issue
Block a user