Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c03ffce707 | ||
|
|
22fac25b52 | ||
|
|
d75b291e71 | ||
|
|
66efa12e24 | ||
|
|
90a3558751 | ||
|
|
5cd2147527 | ||
|
|
08af88b591 | ||
|
|
23bef375ef | ||
|
|
079a08db64 | ||
|
|
409cfa07c6 | ||
|
|
4d2c1e80b6 |
@@ -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.6</string>
|
||||
<string>1.0.8</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.6</string>
|
||||
<string>1.0.8</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</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.6</string>
|
||||
<string>1.0.8</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
@@ -1862,7 +1926,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.0.6</string>
|
||||
<string>1.0.8</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
|
||||
VERSION='1.0.6'
|
||||
VERSION='1.0.8'
|
||||
|
||||
cd build || exit 1
|
||||
[ -e DNSCrypt.pkg ] || exit 1
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.6</string>
|
||||
<string>1.0.8</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.6</string>
|
||||
<string>1.0.8</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.6"
|
||||
#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.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
|
||||
%p
|
||||
Fixed a bug in the automatic updater for the resolvers list
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.6 by AlterStep
|
||||
%time Tue, 10 Jun 2015
|
||||
|
||||
@@ -25,6 +25,20 @@
|
||||
</head>
|
||||
<body>
|
||||
<h1>Release Notes for DNSCrypt-OSXclient by AlterStep</h1>
|
||||
<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>
|
||||
<p>
|
||||
Fixed a bug in the automatic updater for the resolvers list
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.6 by AlterStep</h2>
|
||||
<time>Tue, 10 Jun 2015</time>
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
|
||||
rm -f "$QUERY_LOG_FILE"
|
||||
rm -f "$DEBUG_LOG_FILE"
|
||||
find -X -x "$RESOLVERS_LIST_STATE" -type f -mtime +1 -exec rm -f {} \; 2>/dev/null
|
||||
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=1
|
||||
|
||||
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"
|
||||
@@ -48,7 +56,7 @@ INTERFACE_PROBES="127.0.0.55"
|
||||
INTERFACE_PROBES_MASK="24"
|
||||
|
||||
DOMAINS_EXCEPTIONS='
|
||||
freebox.fr fritz.box intranet lan localdomain nowtv.com private routerlogin.net l
|
||||
belkin corp domain example home host invalid lan local localdomain test freebox.fr fritz.box nowtv.com routerlogin.net l
|
||||
'
|
||||
|
||||
DISABLE_IPV6='no'
|
||||
|
||||
@@ -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,49 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
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\""
|
||||
+7
-4
@@ -4,18 +4,21 @@ 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.
|
||||
|
||||
[Download dnscrypt-osxclient-1.0.6.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.6/dnscrypt-osxclient-1.0.6.dmg)
|
||||
[Download dnscrypt-osxclient-1.0.7.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.7/dnscrypt-osxclient-1.0.7.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
|
||||
|
||||
@@ -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