Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
024ed9d287 | ||
|
|
cbe7f394ee | ||
|
|
b83a2f514c | ||
|
|
362c2043eb | ||
|
|
6602c4ab5d | ||
|
|
c4c4748352 | ||
|
|
7ed00f4a7a | ||
|
|
8aa0f90f16 | ||
|
|
07c8f437b4 | ||
|
|
07900f384b | ||
|
|
ebfd2eead8 | ||
|
|
43bc6e81d4 | ||
|
|
263d24c5e6 | ||
|
|
a664db7d22 | ||
|
|
bf7c7534cf | ||
|
|
9234cd2362 | ||
|
|
85277fd597 | ||
|
|
1ddd8d28d6 | ||
|
|
8ab74b6406 | ||
|
|
bf0d5a0eb5 | ||
|
|
6285a75499 | ||
|
|
9ee80347f5 | ||
|
|
63e6052caf | ||
|
|
2647aadad8 | ||
|
|
6020eb8505 | ||
|
|
d5f551de8a | ||
|
|
1c8e2e4fa1 | ||
|
|
093ab54300 | ||
|
|
d15252db40 | ||
|
|
50dc9a9382 | ||
|
|
75d3983289 | ||
|
|
24227488db | ||
|
|
cbfa42cb3a | ||
|
|
2f6ab604fc |
@@ -60,19 +60,19 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
_opendnsMenuItem.state = 0;
|
||||
_fallbackMenuItem.state = 0;
|
||||
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-dnscrypt-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-dnscrypt-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_dnscryptMenuItem setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-familyshield-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-familyshield-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_familyShieldMenuItem setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-insecure-opendns-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-insecure-opendns-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_opendnsMenuItem setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-fallback-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-fallback-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_fallbackMenuItem setState: 1];
|
||||
}
|
||||
@@ -119,7 +119,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) updateStatusWithCurrentConfig
|
||||
{
|
||||
NSString *stateDescription = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-resolvers-description.sh", nil]];
|
||||
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: @"FamilyShield"]) {
|
||||
currentState = kDNS_CONFIGURATION_OPENDNS;
|
||||
} else if ([stateDescription isEqualToString: @"DNSCrypt"]) {
|
||||
@@ -136,11 +136,11 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
}
|
||||
[self updateLedStatus];
|
||||
|
||||
NSString *currentResolvers = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-upstream-resolvers.sh", nil]];
|
||||
NSString *currentResolvers = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-upstream-resolvers.sh", nil]];
|
||||
_statusConfigurationMenuItem.title = stateDescription;
|
||||
_statusResolversMenuItem.title = currentResolvers;
|
||||
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-pop-conf-change.sh menubar", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-pop-conf-change.sh menubar", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[self initState];
|
||||
}
|
||||
@@ -159,7 +159,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
NSString *res;
|
||||
static unsigned int tries;
|
||||
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-tickets-count.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-tickets-count.sh", nil]];
|
||||
if (res.length <= 0 || [res isEqualToString: @"0"] || tries > kMAX_TRIES_AFTER_CHANGE) {
|
||||
tries = 0U;
|
||||
[self periodicallyUpdateStatusWithCurrentConfig];
|
||||
@@ -179,7 +179,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
_statusItem.image = led;
|
||||
[led release];
|
||||
|
||||
[self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-push-conf-change.sh prefpane", nil]];
|
||||
[self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-push-conf-change.sh prefpane", nil]];
|
||||
|
||||
[NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(periodicallyUpdateStatusWithCurrentConfig) object: nil];
|
||||
[NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(waitForUpdate) object: nil];
|
||||
@@ -223,56 +223,56 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) setDNSCryptOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dnscrypt.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dnscrypt.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setDNSCryptOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dhcp.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dhcp.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFamilyShieldOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFamilyShieldOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setInsecureOpenDNSOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setInsecureOpenDNSOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFallbackOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFallbackOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.17 (beta)</string>
|
||||
<string>0.19 (beta)</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>0.17</string>
|
||||
<string>0.19</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.utilities</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
|
||||
+652
@@ -0,0 +1,652 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PROJECT</key>
|
||||
<dict>
|
||||
<key>PACKAGE_FILES</key>
|
||||
<dict>
|
||||
<key>DEFAULT_INSTALL_LOCATION</key>
|
||||
<string>/</string>
|
||||
<key>HIERARCHY</key>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Utilities</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Applications</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>509</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Application Support</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Documentation</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Filesystems</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Frameworks</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Internet Plug-Ins</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>LaunchAgents</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>LaunchDaemons</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>PreferencePanes</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Preferences</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Printers</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>PrivilegedHelperTools</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>QuickTime</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Screen Savers</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Scripts</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Services</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Widgets</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Library</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Extensions</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Library</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>System</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>Shared</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>1023</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>80</integer>
|
||||
<key>PATH</key>
|
||||
<string>Users</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>/</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>493</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<key>PAYLOAD_TYPE</key>
|
||||
<integer>0</integer>
|
||||
<key>VERSION</key>
|
||||
<integer>2</integer>
|
||||
</dict>
|
||||
<key>PACKAGE_SCRIPTS</key>
|
||||
<dict>
|
||||
<key>PREINSTALL_PATH</key>
|
||||
<dict>
|
||||
<key>PATH</key>
|
||||
<string>install.sh</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>3</integer>
|
||||
</dict>
|
||||
<key>RESOURCES</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CHILDREN</key>
|
||||
<array/>
|
||||
<key>GID</key>
|
||||
<integer>0</integer>
|
||||
<key>PATH</key>
|
||||
<string>pkg.tgz</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>PERMISSIONS</key>
|
||||
<integer>420</integer>
|
||||
<key>TYPE</key>
|
||||
<integer>3</integer>
|
||||
<key>UID</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
<key>PACKAGE_SETTINGS</key>
|
||||
<dict>
|
||||
<key>AUTHENTICATION</key>
|
||||
<false/>
|
||||
<key>CONCLUSION_ACTION</key>
|
||||
<integer>0</integer>
|
||||
<key>IDENTIFIER</key>
|
||||
<string>osx.org.pureftpd.pkg.DNSCrypt-Meta-Installer</string>
|
||||
<key>OVERWRITE_PERMISSIONS</key>
|
||||
<false/>
|
||||
<key>VERSION</key>
|
||||
<string>0.19</string>
|
||||
</dict>
|
||||
<key>PROJECT_COMMENTS</key>
|
||||
<dict>
|
||||
<key>NOTES</key>
|
||||
<data>
|
||||
PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1M
|
||||
IDQuMDEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQv
|
||||
c3RyaWN0LmR0ZCI+CjxodG1sPgo8aGVhZD4KPG1ldGEgaHR0cC1l
|
||||
cXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7
|
||||
IGNoYXJzZXQ9VVRGLTgiPgo8bWV0YSBodHRwLWVxdWl2PSJDb250
|
||||
ZW50LVN0eWxlLVR5cGUiIGNvbnRlbnQ9InRleHQvY3NzIj4KPHRp
|
||||
dGxlPjwvdGl0bGU+CjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29u
|
||||
dGVudD0iQ29jb2EgSFRNTCBXcml0ZXIiPgo8bWV0YSBuYW1lPSJD
|
||||
b2NvYVZlcnNpb24iIGNvbnRlbnQ9IjExODcuMzQiPgo8c3R5bGUg
|
||||
dHlwZT0idGV4dC9jc3MiPgo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5
|
||||
Pgo8L2JvZHk+CjwvaHRtbD4K
|
||||
</data>
|
||||
</dict>
|
||||
<key>PROJECT_SETTINGS</key>
|
||||
<dict>
|
||||
<key>BUILD_PATH</key>
|
||||
<dict>
|
||||
<key>PATH</key>
|
||||
<string>build</string>
|
||||
<key>PATH_TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
<key>EXCLUDED_FILES</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>PATTERNS_ARRAY</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>.DS_Store</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>PROTECTED</key>
|
||||
<true/>
|
||||
<key>PROXY_NAME</key>
|
||||
<string>Remove .DS_Store files</string>
|
||||
<key>PROXY_TOOLTIP</key>
|
||||
<string>Remove ".DS_Store" files created by the Finder.</string>
|
||||
<key>STATE</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>PATTERNS_ARRAY</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>.pbdevelopment</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>PROTECTED</key>
|
||||
<true/>
|
||||
<key>PROXY_NAME</key>
|
||||
<string>Remove .pbdevelopment files</string>
|
||||
<key>PROXY_TOOLTIP</key>
|
||||
<string>Remove ".pbdevelopment" files created by ProjectBuilder or Xcode.</string>
|
||||
<key>STATE</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>PATTERNS_ARRAY</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>CVS</string>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>.cvsignore</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>.cvspass</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>.svn</string>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>PROTECTED</key>
|
||||
<true/>
|
||||
<key>PROXY_NAME</key>
|
||||
<string>Remove SCM metadata</string>
|
||||
<key>PROXY_TOOLTIP</key>
|
||||
<string>Remove helper files and folders used by the CVS and SVN Source Code Management systems.</string>
|
||||
<key>STATE</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>PATTERNS_ARRAY</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>classes.nib</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>designable.db</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>info.nib</string>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>PROTECTED</key>
|
||||
<true/>
|
||||
<key>PROXY_NAME</key>
|
||||
<string>Optimize nib files</string>
|
||||
<key>PROXY_TOOLTIP</key>
|
||||
<string>Remove "classes.nib", "info.nib" and "designable.nib" files within .nib bundles.</string>
|
||||
<key>STATE</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>PATTERNS_ARRAY</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>REGULAR_EXPRESSION</key>
|
||||
<false/>
|
||||
<key>STRING</key>
|
||||
<string>Resources Disabled</string>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>PROTECTED</key>
|
||||
<true/>
|
||||
<key>PROXY_NAME</key>
|
||||
<string>Remove Resources Disabled folders</string>
|
||||
<key>PROXY_TOOLTIP</key>
|
||||
<string>Remove "Resources Disabled" folders.</string>
|
||||
<key>STATE</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>SEPARATOR</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</array>
|
||||
<key>NAME</key>
|
||||
<string>DNSCrypt</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>1</integer>
|
||||
<key>VERSION</key>
|
||||
<integer>2</integer>
|
||||
</dict>
|
||||
</plist>
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
#! /bin/sh
|
||||
|
||||
env > /tmp/a
|
||||
tdir=$(mktemp -d /tmp/XXXXXXXXXXXXXXXX)
|
||||
chmod 755 "$tdir"
|
||||
tar x -z -C "$tdir" -f pkg.tgz
|
||||
(sleep 10 ; cd "$tdir" ; exec open -W -b 'com.apple.installer' ./DNSCrypt.mpkg) &
|
||||
@@ -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_ldns_aaaa_blocking.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_aaaa_blocking.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/>
|
||||
@@ -479,6 +511,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_forward_after_nxdomain.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_forward_after_nxdomain.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/>
|
||||
@@ -511,70 +575,6 @@
|
||||
<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_parental_control.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_parental_control.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/>
|
||||
<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/>
|
||||
@@ -828,7 +828,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.1.0.4</string>
|
||||
<string>1.2.0</string>
|
||||
</dict>
|
||||
<key>UUID</key>
|
||||
<string>7F7D70AB-F7A2-4027-8304-3063C7B9532F</string>
|
||||
@@ -1435,7 +1435,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>0.17</string>
|
||||
<string>0.19</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
@@ -1928,7 +1928,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>0.17</string>
|
||||
<string>0.19</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
|
||||
@@ -7,8 +7,14 @@ exec 2>/dev/null
|
||||
/bin/mkdir -p '/Library/Application Support/DNSCrypt/probes'
|
||||
/bin/mkdir -p '/Library/Application Support/DNSCrypt/states'
|
||||
/bin/mkdir -p '/Library/Application Support/DNSCrypt/tickets'
|
||||
/usr/sbin/chown -R 0:0 '/Library/Application Support/DNSCrypt'
|
||||
/bin/chmod 755 '/Library/Application Support/DNSCrypt'
|
||||
/bin/chmod 755 '/usr/local/bin/hostip'
|
||||
/bin/chmod 755 '/usr/local/sbin/dnscrypt-proxy'
|
||||
/bin/chmod -R 755 '/usr/local/lib/dnscrypt-proxy'
|
||||
/usr/sbin/chown -R 0:0 '/Library/Application Support/DNSCrypt'
|
||||
/usr/sbin/chown 0:0 '/usr/local/bin/hostip'
|
||||
/usr/sbin/chown 0:0 '/usr/local/lib/dnscrypt-proxy'
|
||||
/usr/sbin/chown -R 0:0 '/usr/local/sbin/dnscrypt-proxy'
|
||||
|
||||
eval $(/usr/bin/stat -s '/dev/console')
|
||||
if [ $? != 0 ]; then
|
||||
@@ -19,6 +25,9 @@ if [ $? != 0 ]; then
|
||||
'/Library/Application Support/DNSCrypt/tickets'
|
||||
fi
|
||||
|
||||
rm -f '/Library/Application Support/DNSCrypt/control/plugin-parental-controls.enabled'
|
||||
rm -f '/Library/Application Support/DNSCrypt/control/plugin-lockin.enabled'
|
||||
|
||||
for service in com.opendns.osx.DNSCryptAfterboot \
|
||||
com.opendns.osx.DNSCryptConsoleChange \
|
||||
com.opendns.osx.DNSCryptControlChange \
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
#! /bin/sh
|
||||
|
||||
VERSION='0.17'
|
||||
VERSION='0.19'
|
||||
|
||||
cd build || exit 1
|
||||
[ -d DNSCrypt.mpkg ] || exit 1
|
||||
|
||||
(
|
||||
cd DNSCrypt.mpkg/Contents/Packages || exit 1
|
||||
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.17</string>
|
||||
<string>0.19</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>0.17</string>
|
||||
<string>0.19</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright © 2011-2012 OpenDNS Inc. All rights reserved.</string>
|
||||
<key>NSMainNibFile</key>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#import <PreferencePanes/PreferencePanes.h>
|
||||
#import <WebKit/WebKit.h>
|
||||
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"0.17"
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"0.19"
|
||||
|
||||
#define kDNSCRYPT_PREFPANE_APP_PATH @"/Library/PreferencePanes/DNSCrypt.prefPane"
|
||||
#define kDNSCRYPT_USR_BASE_DIR kDNSCRYPT_PREFPANE_APP_PATH @"/Contents/Resources/usr"
|
||||
@@ -55,13 +55,12 @@ typedef enum {
|
||||
@property (nonatomic, retain) IBOutlet WebView *feedbackWebView;
|
||||
@property (nonatomic, retain) IBOutlet WebView *aboutWebView;
|
||||
@property (nonatomic, retain) IBOutlet NSTextFieldCell *staticResolversTextField;
|
||||
@property (nonatomic, retain) IBOutlet NSButton *parentalControlsButton;
|
||||
@property (nonatomic, retain) IBOutlet NSButtonCell *queryLoggingButton;
|
||||
@property (nonatomic, retain) IBOutlet NSButton *lockinButton;
|
||||
@property (nonatomic, retain) IBOutlet NSTextField *blacklistIPsTextField;
|
||||
@property (nonatomic, retain) IBOutlet NSTextField *blacklistDomainsTextField;
|
||||
@property (nonatomic, retain) IBOutlet NSTextField *exceptionsTextField;
|
||||
@property (nonatomic, retain) IBOutlet WebView *helpWebView;
|
||||
@property (nonatomic, retain) IBOutlet NSButton *viewLogButton;
|
||||
@property (nonatomic, retain) IBOutlet NSButton *queryLoggingButton;
|
||||
|
||||
- (void) mainViewDidLoad;
|
||||
|
||||
@@ -73,10 +72,8 @@ typedef enum {
|
||||
- (IBAction)openDNSLinkPushed:(NSButton *)sender;
|
||||
- (IBAction)uninstallPushed:(NSButton *)sender;
|
||||
- (IBAction)staticResolversTextFieldChanged:(NSTextField *)sender;
|
||||
- (IBAction)parentalControlsButtonPressed:(NSButtonCell *)sender;
|
||||
- (IBAction)queryLoggingButtonPressed:(NSButtonCell *)sender;
|
||||
- (IBAction)viewLogButtonPushed:(NSButton *)sender;
|
||||
- (IBAction)lockinButtonPressed:(NSButton *)sender;
|
||||
- (IBAction)blacklistIPsUpdated:(NSTextField *)sender;
|
||||
- (IBAction)blacklistDomainsUpdated:(NSTextField *)sender;
|
||||
- (IBAction)exceptionsUpdated:(NSTextField *)sender;
|
||||
|
||||
@@ -17,12 +17,11 @@
|
||||
@synthesize feedbackWebView = _feedbackWebView;
|
||||
@synthesize aboutWebView = _aboutWebView;
|
||||
@synthesize staticResolversTextField = _staticResolversTextField;
|
||||
@synthesize parentalControlsButton = _parentalControlsButton;
|
||||
@synthesize queryLoggingButton = _queryLoggingButton;
|
||||
@synthesize lockinButton = _lockinButton;
|
||||
@synthesize blacklistIPsTextField = _blacklistIPsTextField;
|
||||
@synthesize blacklistDomainsTextField = _blacklistDomainsTextField;
|
||||
@synthesize helpWebView = _helpWebView;
|
||||
@synthesize viewLogButton = _viewLogButton;
|
||||
@synthesize queryLoggingButton = _queryLoggingButton;
|
||||
@synthesize exceptionsTextField = _exceptionsTextField;
|
||||
@synthesize dnscryptButton = _dnscryptButton;
|
||||
@synthesize opendnsButton = _opendnsButton;
|
||||
@@ -72,36 +71,28 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
_opendnsButton.state = 0;
|
||||
_fallbackButton.state = 0;
|
||||
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-dnscrypt-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-dnscrypt-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_dnscryptButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-familyshield-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-familyshield-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_familyShieldButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-insecure-opendns-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-insecure-opendns-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_opendnsButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-fallback-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-fallback-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_fallbackButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-static-resolvers.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-static-resolvers.sh", nil]];
|
||||
[_staticResolversTextField setStringValue: res];
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-parental-controls-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_parentalControlsButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-query-logging-status.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-query-logging-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_queryLoggingButton setState: 1];
|
||||
}
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-lockin-status.sh", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[_lockinButton setState: 1];
|
||||
}
|
||||
NSString *fileContent;
|
||||
fileContent = [NSString stringWithContentsOfFile: kDNSCRYPT_BLACKLIST_IPS_TMP_FILE encoding:NSUTF8StringEncoding error: nil];
|
||||
if (fileContent != nil) {
|
||||
@@ -144,7 +135,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) updateStatusWithCurrentConfig
|
||||
{
|
||||
NSString *stateDescription = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-resolvers-description.sh", nil]];
|
||||
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: @"FamilyShield"]) {
|
||||
currentState = kDNS_CONFIGURATION_OPENDNS;
|
||||
} else if ([stateDescription isEqualToString: @"DNSCrypt"]) {
|
||||
@@ -161,10 +152,10 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
}
|
||||
[self updateLedStatus];
|
||||
|
||||
NSString *currentResolvers = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-upstream-resolvers.sh", nil]];
|
||||
NSString *currentResolvers = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./get-current-resolvers.sh | ./get-upstream-resolvers.sh", nil]];
|
||||
_currentResolverTextField.stringValue = currentResolvers;
|
||||
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-pop-conf-change.sh prefpane", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-pop-conf-change.sh prefpane", nil]];
|
||||
if ([res isEqualToString: @"yes"]) {
|
||||
[self initState];
|
||||
}
|
||||
@@ -187,7 +178,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
_statusImageView.image = [[[NSImage alloc] initWithContentsOfFile: [bundle pathForImageResource: @"ajax-loader.gif"]] autorelease];
|
||||
_currentResolverTextField.stringValue = @"";
|
||||
|
||||
[self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-push-conf-change.sh menubar", nil]];
|
||||
[self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./gui-push-conf-change.sh menubar", nil]];
|
||||
|
||||
[NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(periodicallyUpdateStatusWithCurrentConfig) object: nil];
|
||||
[NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(waitForUpdate) object: nil];
|
||||
@@ -196,56 +187,56 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) setDNSCryptOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dnscrypt.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dnscrypt.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setDNSCryptOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dhcp.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-to-dhcp.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFamilyShieldOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFamilyShieldOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-familyshield-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setInsecureOpenDNSOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setInsecureOpenDNSOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-insecure-opendns-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFallbackOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setFallbackOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-fallback-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -290,7 +281,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
NSString *res;
|
||||
static unsigned int tries;
|
||||
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-tickets-count.sh", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./get-tickets-count.sh", nil]];
|
||||
if (res.length <= 0 || [res isEqualToString: @"0"] || tries > kMAX_TRIES_AFTER_CHANGE) {
|
||||
tries = 0U;
|
||||
[self periodicallyUpdateStatusWithCurrentConfig];
|
||||
@@ -306,10 +297,10 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
return;
|
||||
}
|
||||
NSString *res;
|
||||
res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"/usr/local/sbin/dnscrypt-proxy --version | head -n 1", nil]];
|
||||
res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"/usr/local/sbin/dnscrypt-proxy --version | head -n 1", nil]];
|
||||
NSCharacterSet *charset = [NSCharacterSet characterSetWithCharactersInString: @"\r\n<>'"];
|
||||
res = [[res componentsSeparatedByCharactersInSet: charset] componentsJoinedByString: @" "];
|
||||
NSString *script = [NSString stringWithFormat: @"document.querySelector('textarea[name=feedback]').value='\\n\\n\\n--\\nOpenDNS user interface for OSX " kDNSCRYPT_PACKAGE_VERSION "\\n%@'", res];;
|
||||
NSString *script = [NSString stringWithFormat: @"document.querySelector('textarea[name=feedback]').value='\\n\\n\\n--\\nOpenDNS user interface for OSX " kDNSCRYPT_PACKAGE_VERSION "\\n%@'", res];
|
||||
[sender stringByEvaluatingJavaScriptFromString: script];
|
||||
}
|
||||
|
||||
@@ -400,7 +391,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
}
|
||||
|
||||
- (IBAction)uninstallPushed:(NSButton *)sender {
|
||||
[self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_BIN_BASE_DIR @"' && /usr/bin/open ./Uninstall.app", nil]];
|
||||
[self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_BIN_BASE_DIR @"' && /usr/bin/open ./Uninstall.app", nil]];
|
||||
}
|
||||
|
||||
- (IBAction)staticResolversTextFieldChanged:(NSTextField *)sender {
|
||||
@@ -409,41 +400,19 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
staticResolvers = [[staticResolvers componentsSeparatedByCharactersInSet: charset] componentsJoinedByString: @" "];
|
||||
sender.stringValue = staticResolvers;
|
||||
setenv("STATIC_RESOLVERS", [staticResolvers UTF8String], 1);
|
||||
[self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./set-static-resolvers.sh \"$STATIC_RESOLVERS\"", staticResolvers, nil]];
|
||||
}
|
||||
|
||||
- (BOOL) setParentalControlsOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-parental-controls-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setParentalControlsOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-parental-controls-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (IBAction)parentalControlsButtonPressed:(NSButtonCell *)sender {
|
||||
if (sender.state != 0) {
|
||||
[self setParentalControlsOn];
|
||||
} else {
|
||||
[self setParentalControlsOff];
|
||||
}
|
||||
[self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && exec ./set-static-resolvers.sh \"$STATIC_RESOLVERS\"", staticResolvers, nil]];
|
||||
}
|
||||
|
||||
- (BOOL) setQueryLoggingOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-query-logging-on.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-query-logging-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setQueryLoggingOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-query-logging-off.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-query-logging-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -457,34 +426,12 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
}
|
||||
|
||||
- (IBAction)viewLogButtonPushed:(NSButton *)sender {
|
||||
[self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"open /Applications/Utilities/Console.app " kDNSCRYPT_QUERY_LOG_FILE " || open " kDNSCRYPT_QUERY_LOG_FILE, nil]];
|
||||
}
|
||||
|
||||
- (BOOL) setLockinOn {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-lockin-on.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (BOOL) setLockinOff {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./switch-lockin-off.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
- (IBAction)lockinButtonPressed:(NSButton *)sender {
|
||||
if (sender.state != 0) {
|
||||
[self setLockinOn];
|
||||
} else {
|
||||
[self setLockinOff];
|
||||
}
|
||||
[self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"open /Applications/Utilities/Console.app " kDNSCRYPT_QUERY_LOG_FILE " || open " kDNSCRYPT_QUERY_LOG_FILE, nil]];
|
||||
}
|
||||
|
||||
- (BOOL) updateBlacklistIPs {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-blacklist-ips.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-blacklist-ips.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -499,7 +446,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) updateBlacklistDomains {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-blacklist-domains.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-blacklist-domains.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -514,7 +461,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (BOOL) updateExceptions {
|
||||
[self showSpinners];
|
||||
NSString *res = [self fromCommand: @"/bin/ksh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-exceptions.sh", nil]];
|
||||
NSString *res = [self fromCommand: @"/bin/csh" withArguments: [NSArray arrayWithObjects: @"-c", @"cd '" kDNSCRIPT_SCRIPTS_BASE_DIR @"' && ./create-ticket.sh && ./update-exceptions.sh", nil]];
|
||||
(void) res;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -529,12 +476,17 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
|
||||
|
||||
- (IBAction)helpButtonPressed:(NSButton *)sender {
|
||||
if (_helpWebView.isHidden) {
|
||||
[_helpWebView.window makeFirstResponder: nil];
|
||||
[_helpWebView setHidden: NO];
|
||||
[_helpWebView setAlphaValue: 0.0];
|
||||
[_helpWebView.animator setAlphaValue: 1.0];
|
||||
[_helpWebView setDrawsBackground: TRUE];
|
||||
[_viewLogButton setHidden: YES];
|
||||
[_queryLoggingButton setHidden: YES];
|
||||
} else {
|
||||
[_helpWebView.window makeFirstResponder: nil];
|
||||
[_helpWebView setHidden: YES];
|
||||
[_queryLoggingButton setHidden: NO];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1070</int>
|
||||
<string key="IBDocument.SystemVersion">12C54</string>
|
||||
<string key="IBDocument.SystemVersion">12C60</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2840</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.34</string>
|
||||
<string key="IBDocument.HIToolboxVersion">625.00</string>
|
||||
@@ -65,13 +65,13 @@
|
||||
<string key="NSFrame">{{13, 10}, {563, 359}}</string>
|
||||
<reference key="NSSuperview" ref="1037298196"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="42710935"/>
|
||||
<reference key="NSNextKeyView" ref="1025762247"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:461</string>
|
||||
<array class="NSMutableArray" key="NSTabViewItems">
|
||||
<object class="NSTabViewItem" id="19707695">
|
||||
<string key="NSIdentifier">1</string>
|
||||
<object class="NSView" key="NSView" id="1025762247">
|
||||
<nil key="NSNextResponder"/>
|
||||
<reference key="NSNextResponder" ref="821865429"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSButton" id="894789954">
|
||||
@@ -79,6 +79,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{15, 238}, {204, 22}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="300098131"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:239</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -114,13 +115,14 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{15, 212}, {245, 24}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="891532389"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:239</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="555340075">
|
||||
<int key="NSCellFlags">67108864</int>
|
||||
<int key="NSCellFlags2">0</int>
|
||||
<string key="NSContents">Enable OpenDNS</string>
|
||||
<string key="NSContents">Always use OpenDNS</string>
|
||||
<reference key="NSSupport" ref="176030688"/>
|
||||
<string key="NSCellIdentifier">_NS:239</string>
|
||||
<reference key="NSControlView" ref="300098131"/>
|
||||
@@ -140,13 +142,14 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{15, 157}, {244, 22}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="384170040"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:239</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="446412441">
|
||||
<int key="NSCellFlags">67108864</int>
|
||||
<int key="NSCellFlags2">0</int>
|
||||
<string key="NSContents">Enable Familyshield</string>
|
||||
<string key="NSContents">Always use Familyshield</string>
|
||||
<object class="NSFont" key="NSSupport" id="1059912458">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">14</double>
|
||||
@@ -170,6 +173,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{15, 133}, {204, 22}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="240318099"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:239</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -196,6 +200,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{14, 96}, {173, 19}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="496861916"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:3936</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -236,6 +241,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{54, 284}, {72, 19}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="908408940"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:3936</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -260,6 +266,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{14, -3}, {240, 83}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="855319081"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:3596</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -289,6 +296,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{115, 283}, {125, 19}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="894789954"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:3596</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -326,6 +334,7 @@
|
||||
</set>
|
||||
<string key="NSFrame">{{302, 222}, {224, 88}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="487940586"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSImageCell" key="NSCell" id="107747299">
|
||||
@@ -356,6 +365,7 @@
|
||||
</set>
|
||||
<string key="NSFrame">{{17, 277}, {32.395949255088134, 32.395949255088134}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="372048088"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSImageCell" key="NSCell" id="336811923">
|
||||
@@ -378,6 +388,7 @@
|
||||
<int key="NSvFlags">12</int>
|
||||
<string key="NSFrame">{{269.5, 2}, {4, 300}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="429164099"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1557</string>
|
||||
<string key="NSOffsets">{0, 0}</string>
|
||||
@@ -414,6 +425,7 @@
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{323, 190}, {183, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="821865429"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:2419</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -460,6 +472,7 @@
|
||||
</set>
|
||||
<string key="NSFrame">{{302, 2}, {224, 192}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:51</string>
|
||||
<string key="FrameName"/>
|
||||
@@ -474,7 +487,7 @@
|
||||
<boolean value="NO" key="WebKitDisplayImagesKey"/>
|
||||
<boolean value="NO" key="WebKitJavaEnabled"/>
|
||||
<boolean value="NO" key="WebKitJavaScriptCanOpenWindowsAutomatically"/>
|
||||
<boolean value="NO" key="WebKitJavaScriptEnabled"/>
|
||||
<boolean value="YES" key="WebKitJavaScriptEnabled"/>
|
||||
<integer value="1" key="WebKitMinimumFontSize"/>
|
||||
<boolean value="NO" key="WebKitPluginsEnabled"/>
|
||||
</dictionary>
|
||||
@@ -487,6 +500,7 @@
|
||||
<int key="NSvFlags">12</int>
|
||||
<string key="NSFrame">{{17, 193}, {240, 5}}</string>
|
||||
<reference key="NSSuperview" ref="1025762247"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="410495287"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:2411</string>
|
||||
<string key="NSOffsets">{0, 0}</string>
|
||||
@@ -508,6 +522,8 @@
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{10, 33}, {543, 313}}</string>
|
||||
<reference key="NSSuperview" ref="821865429"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="423755939"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:463</string>
|
||||
</object>
|
||||
@@ -518,15 +534,14 @@
|
||||
<object class="NSTabViewItem" id="359976024">
|
||||
<string key="NSIdentifier">2</string>
|
||||
<object class="NSView" key="NSView" id="42710935">
|
||||
<reference key="NSNextResponder" ref="821865429"/>
|
||||
<nil key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTextField" id="826224678">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{5, 293}, {406, 17}}</string>
|
||||
<string key="NSFrame">{{5, 236}, {406, 17}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1038497103"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1535</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -545,10 +560,9 @@
|
||||
<object class="NSTextField" id="1038497103">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{8, 270}, {526, 22}}</string>
|
||||
<string key="NSFrame">{{8, 206}, {526, 22}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="763894061"/>
|
||||
<reference key="NSNextKeyView" ref="11113535"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="684654118">
|
||||
@@ -577,69 +591,12 @@
|
||||
</object>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
</object>
|
||||
<object class="NSButton" id="6419610">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{6, 215}, {455, 18}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="30650809"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="402685960">
|
||||
<int key="NSCellFlags">67108864</int>
|
||||
<int key="NSCellFlags2">268435456</int>
|
||||
<string key="NSContents">Lock-in the current network settings and use them even on roaming</string>
|
||||
<reference key="NSSupport" ref="831984564"/>
|
||||
<string key="NSCellIdentifier">_NS:9</string>
|
||||
<reference key="NSControlView" ref="6419610"/>
|
||||
<int key="NSButtonFlags">1211912448</int>
|
||||
<int key="NSButtonFlags2">2</int>
|
||||
<reference key="NSNormalImage" ref="338365942"/>
|
||||
<reference key="NSAlternateImage" ref="875688652"/>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
</object>
|
||||
<object class="NSButton" id="763894061">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{6, 242}, {195, 18}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="679502487"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="931675753">
|
||||
<int key="NSCellFlags">67108864</int>
|
||||
<int key="NSCellFlags2">268435456</int>
|
||||
<string key="NSContents">Advanced parental controls</string>
|
||||
<reference key="NSSupport" ref="831984564"/>
|
||||
<string key="NSCellIdentifier">_NS:9</string>
|
||||
<reference key="NSControlView" ref="763894061"/>
|
||||
<int key="NSButtonFlags">1211912448</int>
|
||||
<int key="NSButtonFlags2">2</int>
|
||||
<reference key="NSNormalImage" ref="338365942"/>
|
||||
<reference key="NSAlternateImage" ref="875688652"/>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
</object>
|
||||
<object class="NSButton" id="679502487">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{284, 242}, {126, 18}}</string>
|
||||
<string key="NSFrame">{{7, 281}, {126, 18}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="985341605"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -665,10 +622,9 @@
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{446, 234}, {94, 32}}</string>
|
||||
<string key="NSFrame">{{161, 273}, {94, 32}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="6419610"/>
|
||||
<reference key="NSNextKeyView" ref="960794720"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="252019693">
|
||||
@@ -690,9 +646,8 @@
|
||||
<object class="NSTextField" id="25489948">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{9, 26}, {169, 141}}</string>
|
||||
<string key="NSFrame">{{10, 7}, {169, 141}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="583617410"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
@@ -722,9 +677,8 @@ LjQzLjEwCjo6MQ</string>
|
||||
<object class="NSTextField" id="583617410">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{187, 26}, {169, 141}}</string>
|
||||
<string key="NSFrame">{{188, 7}, {169, 141}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="902108600"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
@@ -750,10 +704,9 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSTextField" id="902108600">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{365, 26}, {169, 141}}</string>
|
||||
<string key="NSFrame">{{366, 7}, {169, 141}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="960794720"/>
|
||||
<reference key="NSNextKeyView" ref="821865429"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -777,9 +730,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSTextField" id="11113535">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{6, 170}, {175, 34}}</string>
|
||||
<string key="NSFrame">{{7, 156}, {175, 34}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="546014897"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
@@ -804,9 +756,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSTextField" id="546014897">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{185, 170}, {175, 34}}</string>
|
||||
<string key="NSFrame">{{186, 156}, {175, 34}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="567741681"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
@@ -827,9 +778,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSTextField" id="567741681">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{362, 170}, {175, 34}}</string>
|
||||
<string key="NSFrame">{{363, 156}, {175, 34}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="25489948"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||
@@ -851,10 +801,9 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{511, 0}, {25, 25}}</string>
|
||||
<string key="NSFrame">{{503, 277}, {25, 25}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<reference key="NSNextKeyView" ref="228385556"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1598</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="933364045">
|
||||
@@ -876,9 +825,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSTextField" id="960794720">
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{477, 6}, {33, 17}}</string>
|
||||
<string key="NSFrame">{{467, 284}, {33, 17}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="988915282"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1535</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
@@ -898,10 +846,9 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="NSNextResponder" ref="42710935"/>
|
||||
<int key="NSvFlags">12</int>
|
||||
<array class="NSMutableArray" key="NSSubviews"/>
|
||||
<string key="NSFrame">{{8, 206}, {526, 5}}</string>
|
||||
<string key="NSFrame">{{9, 265}, {526, 5}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="11113535"/>
|
||||
<reference key="NSNextKeyView" ref="826224678"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="NSOffsets">{0, 0}</string>
|
||||
<object class="NSTextFieldCell" key="NSTitleCell">
|
||||
@@ -940,9 +887,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string>public.url</string>
|
||||
<string>public.url-name</string>
|
||||
</set>
|
||||
<string key="NSFrame">{{3, 26}, {536, 284}}</string>
|
||||
<string key="NSFrame">{{3, -3}, {536, 278}}</string>
|
||||
<reference key="NSSuperview" ref="42710935"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<string key="FrameName"/>
|
||||
@@ -967,9 +913,7 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{10, 33}, {543, 313}}</string>
|
||||
<reference key="NSSuperview" ref="821865429"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="228385556"/>
|
||||
<reference key="NSNextKeyView" ref="679502487"/>
|
||||
</object>
|
||||
<string key="NSLabel">Advanced</string>
|
||||
<reference key="NSColor" ref="281676087"/>
|
||||
@@ -1014,8 +958,9 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<object class="NSButton" id="231106999">
|
||||
<reference key="NSNextResponder" ref="521420514"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{11, -3}, {95, 32}}</string>
|
||||
<string key="NSFrame">{{437, -5}, {95, 32}}</string>
|
||||
<reference key="NSSuperview" ref="521420514"/>
|
||||
<reference key="NSNextKeyView" ref="821865429"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="132642450">
|
||||
@@ -1135,13 +1080,13 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="NSTabView" ref="821865429"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="NSSelectedTabViewItem" ref="359976024"/>
|
||||
<reference key="NSSelectedTabViewItem" ref="19707695"/>
|
||||
<reference key="NSFont" ref="604491631"/>
|
||||
<int key="NSTvFlags">0</int>
|
||||
<bool key="NSAllowTruncatedLabels">YES</bool>
|
||||
<bool key="NSDrawsBackground">YES</bool>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<reference ref="42710935"/>
|
||||
<reference ref="1025762247"/>
|
||||
</array>
|
||||
</object>
|
||||
</array>
|
||||
@@ -1345,30 +1290,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
</object>
|
||||
<int key="connectionID">433</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">parentalControlsButton</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="763894061"/>
|
||||
</object>
|
||||
<int key="connectionID">434</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">parentalControlsButtonPressed:</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="931675753"/>
|
||||
</object>
|
||||
<int key="connectionID">436</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">queryLoggingButton</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="164894774"/>
|
||||
</object>
|
||||
<int key="connectionID">437</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">viewLogButtonPushed:</string>
|
||||
@@ -1377,22 +1298,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
</object>
|
||||
<int key="connectionID">441</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">lockinButton</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="6419610"/>
|
||||
</object>
|
||||
<int key="connectionID">442</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">lockinButtonPressed:</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="6419610"/>
|
||||
</object>
|
||||
<int key="connectionID">443</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">blacklistIPsTextField</string>
|
||||
@@ -1465,6 +1370,22 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
</object>
|
||||
<int key="connectionID">453</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">viewLogButton</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="985341605"/>
|
||||
</object>
|
||||
<int key="connectionID">457</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">queryLoggingButton</string>
|
||||
<reference key="source" ref="294453543"/>
|
||||
<reference key="destination" ref="679502487"/>
|
||||
</object>
|
||||
<int key="connectionID">458</int>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<array key="orderedObjects">
|
||||
@@ -1803,20 +1724,18 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="object" ref="42710935"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="25489948"/>
|
||||
<reference ref="583617410"/>
|
||||
<reference ref="902108600"/>
|
||||
<reference ref="1038497103"/>
|
||||
<reference ref="826224678"/>
|
||||
<reference ref="679502487"/>
|
||||
<reference ref="985341605"/>
|
||||
<reference ref="988915282"/>
|
||||
<reference ref="960794720"/>
|
||||
<reference ref="30650809"/>
|
||||
<reference ref="11113535"/>
|
||||
<reference ref="546014897"/>
|
||||
<reference ref="567741681"/>
|
||||
<reference ref="988915282"/>
|
||||
<reference ref="1038497103"/>
|
||||
<reference ref="6419610"/>
|
||||
<reference ref="763894061"/>
|
||||
<reference ref="679502487"/>
|
||||
<reference ref="826224678"/>
|
||||
<reference ref="960794720"/>
|
||||
<reference ref="30650809"/>
|
||||
<reference ref="902108600"/>
|
||||
<reference ref="583617410"/>
|
||||
<reference ref="985341605"/>
|
||||
<reference ref="228385556"/>
|
||||
</array>
|
||||
<reference key="parent" ref="359976024"/>
|
||||
@@ -1847,19 +1766,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="object" ref="684654118"/>
|
||||
<reference key="parent" ref="1038497103"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">396</int>
|
||||
<reference key="object" ref="6419610"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="402685960"/>
|
||||
</array>
|
||||
<reference key="parent" ref="42710935"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">397</int>
|
||||
<reference key="object" ref="402685960"/>
|
||||
<reference key="parent" ref="6419610"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">398</int>
|
||||
<reference key="object" ref="679502487"/>
|
||||
@@ -1964,19 +1870,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<reference key="object" ref="1022329366"/>
|
||||
<reference key="parent" ref="567741681"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">414</int>
|
||||
<reference key="object" ref="763894061"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="931675753"/>
|
||||
</array>
|
||||
<reference key="parent" ref="42710935"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">415</int>
|
||||
<reference key="object" ref="931675753"/>
|
||||
<reference key="parent" ref="763894061"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">416</int>
|
||||
<reference key="object" ref="988915282"/>
|
||||
@@ -2118,8 +2011,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<string key="393.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="396.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="397.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="398.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="399.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="400.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
@@ -2136,8 +2027,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="411.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="412.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="413.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="414.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="415.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="416.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="417.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="423.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
@@ -2163,7 +2052,7 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">453</int>
|
||||
<int key="maxID">458</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
@@ -2178,10 +2067,8 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="fallbackButtonPressed:">NSButton</string>
|
||||
<string key="familyShieldButtonPressed:">NSButton</string>
|
||||
<string key="helpButtonPressed:">NSButton</string>
|
||||
<string key="lockinButtonPressed:">NSButton</string>
|
||||
<string key="openDNSLinkPushed:">NSButton</string>
|
||||
<string key="opendnsButtonPressed:">NSButton</string>
|
||||
<string key="parentalControlsButtonPressed:">NSButtonCell</string>
|
||||
<string key="queryLoggingButtonPressed:">NSButtonCell</string>
|
||||
<string key="staticResolversTextFieldChanged:">NSTextField</string>
|
||||
<string key="uninstallPushed:">NSButton</string>
|
||||
@@ -2216,10 +2103,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="name">helpButtonPressed:</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="lockinButtonPressed:">
|
||||
<string key="name">lockinButtonPressed:</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="openDNSLinkPushed:">
|
||||
<string key="name">openDNSLinkPushed:</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
@@ -2228,10 +2111,6 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="name">opendnsButtonPressed:</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="parentalControlsButtonPressed:">
|
||||
<string key="name">parentalControlsButtonPressed:</string>
|
||||
<string key="candidateClassName">NSButtonCell</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="queryLoggingButtonPressed:">
|
||||
<string key="name">queryLoggingButtonPressed:</string>
|
||||
<string key="candidateClassName">NSButtonCell</string>
|
||||
@@ -2261,17 +2140,16 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="familyShieldButton">NSButton</string>
|
||||
<string key="feedbackWebView">WebView</string>
|
||||
<string key="helpWebView">WebView</string>
|
||||
<string key="lockinButton">NSButton</string>
|
||||
<string key="opendnsButton">NSButton</string>
|
||||
<string key="parentalControlsButton">NSButton</string>
|
||||
<string key="previewNotesWebView">WebView</string>
|
||||
<string key="queryLoggingButton">NSButtonCell</string>
|
||||
<string key="queryLoggingButton">NSButton</string>
|
||||
<string key="releaseNotesTabViewItem">NSTabViewItem</string>
|
||||
<string key="releaseNotesWebView">WebView</string>
|
||||
<string key="staticResolversTextField">NSTextFieldCell</string>
|
||||
<string key="statusImageView">NSImageView</string>
|
||||
<string key="statusText">NSTextField</string>
|
||||
<string key="tabView">NSTabView</string>
|
||||
<string key="viewLogButton">NSButton</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<object class="IBToOneOutletInfo" key="aboutTabViewItem">
|
||||
@@ -2318,25 +2196,17 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="name">helpWebView</string>
|
||||
<string key="candidateClassName">WebView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="lockinButton">
|
||||
<string key="name">lockinButton</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="opendnsButton">
|
||||
<string key="name">opendnsButton</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="parentalControlsButton">
|
||||
<string key="name">parentalControlsButton</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="previewNotesWebView">
|
||||
<string key="name">previewNotesWebView</string>
|
||||
<string key="candidateClassName">WebView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="queryLoggingButton">
|
||||
<string key="name">queryLoggingButton</string>
|
||||
<string key="candidateClassName">NSButtonCell</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="releaseNotesTabViewItem">
|
||||
<string key="name">releaseNotesTabViewItem</string>
|
||||
@@ -2362,6 +2232,10 @@ aW91cy5leGFtcGxlLm5ldA</string>
|
||||
<string key="name">tabView</string>
|
||||
<string key="candidateClassName">NSTabView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="viewLogButton">
|
||||
<string key="name">viewLogButton</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
|
||||
@@ -22,17 +22,6 @@
|
||||
of default DNS resolvers, enter their IP addresses in this box.
|
||||
%p
|
||||
Separate them with spaces.
|
||||
%section
|
||||
%h2 Advanced parental controls
|
||||
%p
|
||||
When using DNSCrypt, this will block the following list of OpenDNS
|
||||
categories: lingerie/bikini, adult themes, nudity,
|
||||
pornography, proxy/anonymizer, sexuality and tasteless.
|
||||
%p
|
||||
If you have an OpenDNS account and network settings defined
|
||||
for your current location, the network settings will override the
|
||||
advanced parental controls. Having an OpenDNS account allows
|
||||
finer granularity access controls, building reports and more.
|
||||
%section
|
||||
%h2 Log DNS queries
|
||||
%p
|
||||
@@ -50,26 +39,6 @@
|
||||
%p
|
||||
The "View log" button opens it with the log viewer application
|
||||
so that you can watch it in real time.
|
||||
%section
|
||||
%h2 Lock-in the current network settings
|
||||
%p
|
||||
If you have an OpenDNS account, and OpenDNS network settings
|
||||
defined for your current location, you can make these
|
||||
persistent.
|
||||
%p
|
||||
Checking this box will make the user interface remember what
|
||||
your current network is.
|
||||
%p
|
||||
If you are roaming, the settings for this network will still be
|
||||
used, no matter what actual network you are connected to.
|
||||
%p
|
||||
That way, you can stay protected from botnets, malware,
|
||||
phishing and block unwanted content, even when using public
|
||||
Wi-Fi hotspots.
|
||||
%p
|
||||
This feature is currently not compatible with the OpenDNS IP
|
||||
updater. If your ISP assigns dynamic IP addresses, use either
|
||||
the OpenDNS IP updater or the DNSCrypt lock-in feature, but not both.
|
||||
%section
|
||||
%h2 IP addresses blocking
|
||||
%p
|
||||
@@ -121,3 +90,20 @@
|
||||
%p
|
||||
Domains listed here will bypass DNSCrypt in order to be sent
|
||||
to the default resolvers.
|
||||
%p
|
||||
Do
|
||||
%strong not
|
||||
use a tool like hostip(8), drill(1), unbound-host(1), dig(1) or host(1)
|
||||
in order to check that an exception rule works.
|
||||
%p
|
||||
These tools use their own resolution mechanisms that have nothing
|
||||
to do with how others apps on your system are resolving names.
|
||||
%p
|
||||
They don't use the OSX-specific stub resolver, they don't use
|
||||
the system-wide DNS cache, they have bugs and limitations that the OS
|
||||
doesn't have (and the opposite is also true), and they don't know a
|
||||
thing about specific resolvers that have to be used for specific
|
||||
domains.
|
||||
%p
|
||||
Use actual apps, or even a command like ping(8).
|
||||
|
||||
|
||||
@@ -27,20 +27,6 @@
|
||||
Separate them with spaces.
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Advanced parental controls</h2>
|
||||
<p>
|
||||
When using DNSCrypt, this will block the following list of OpenDNS
|
||||
categories: lingerie/bikini, adult themes, nudity,
|
||||
pornography, proxy/anonymizer, sexuality and tasteless.
|
||||
</p>
|
||||
<p>
|
||||
If you have an OpenDNS account and network settings defined
|
||||
for your current location, the network settings will override the
|
||||
advanced parental controls. Having an OpenDNS account allows
|
||||
finer granularity access controls, building reports and more.
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Log DNS queries</h2>
|
||||
<p>
|
||||
@@ -63,32 +49,6 @@
|
||||
so that you can watch it in real time.
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Lock-in the current network settings</h2>
|
||||
<p>
|
||||
If you have an OpenDNS account, and OpenDNS network settings
|
||||
defined for your current location, you can make these
|
||||
persistent.
|
||||
</p>
|
||||
<p>
|
||||
Checking this box will make the user interface remember what
|
||||
your current network is.
|
||||
</p>
|
||||
<p>
|
||||
If you are roaming, the settings for this network will still be
|
||||
used, no matter what actual network you are connected to.
|
||||
</p>
|
||||
<p>
|
||||
That way, you can stay protected from botnets, malware,
|
||||
phishing and block unwanted content, even when using public
|
||||
Wi-Fi hotspots.
|
||||
</p>
|
||||
<p>
|
||||
This feature is currently not compatible with the OpenDNS IP
|
||||
updater. If your ISP assigns dynamic IP addresses, use either
|
||||
the OpenDNS IP updater or the DNSCrypt lock-in feature, but not both.
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>IP addresses blocking</h2>
|
||||
<p>
|
||||
@@ -156,6 +116,26 @@
|
||||
Domains listed here will bypass DNSCrypt in order to be sent
|
||||
to the default resolvers.
|
||||
</p>
|
||||
<p>
|
||||
Do
|
||||
<strong>not</strong>
|
||||
use a tool like hostip(8), drill(1), unbound-host(1), dig(1) or host(1)
|
||||
in order to check that an exception rule works.
|
||||
</p>
|
||||
<p>
|
||||
These tools use their own resolution mechanisms that have nothing
|
||||
to do with how others apps on your system are resolving names.
|
||||
</p>
|
||||
<p>
|
||||
They don't use the OSX-specific stub resolver, they don't use
|
||||
the system-wide DNS cache, they have bugs and limitations that the OS
|
||||
doesn't have (and the opposite is also true), and they don't know a
|
||||
thing about specific resolvers that have to be used for specific
|
||||
domains.
|
||||
</p>
|
||||
<p>
|
||||
Use actual apps, or even a command like ping(8).
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -21,6 +21,29 @@
|
||||
%body
|
||||
%h1 Release Notes for the user interface
|
||||
|
||||
%article
|
||||
%h2 Version 0.19
|
||||
%time Wed, 10 Oct 2012
|
||||
%ul
|
||||
%li dnscrypt-proxy has been updated to version 1.2.0.
|
||||
%li Detection of IPv6 connectivity is now faster and more reliable.
|
||||
%li
|
||||
AAAA queries are filtered out on networks with no IPv6
|
||||
connectivity in order to significantly reduce latency.
|
||||
%article
|
||||
%h2 Version 0.18
|
||||
%time Wed, 3 Oct 2012
|
||||
%ul
|
||||
%li
|
||||
freebox.fr has been added to the default list of domains
|
||||
for which DNSCrypt should be bypassed.
|
||||
%li
|
||||
If a static resolvers set has been specified, this will now be
|
||||
used for exceptions instead of DHCP-provided servers.
|
||||
%li
|
||||
Minor cosmetic fixes and documentation improvements have been
|
||||
made.
|
||||
|
||||
%article
|
||||
%h2 Version 0.17
|
||||
%time Fri, 28 Sep 2012
|
||||
@@ -30,15 +53,9 @@
|
||||
%li
|
||||
Static default DNS resolvers can now be used instead of
|
||||
having them provided by a DHCP server.
|
||||
%li Advanced parental controls.
|
||||
%li
|
||||
Logging: outgoing queries can now be logged and displayed in
|
||||
real time.
|
||||
%li
|
||||
OpenDNS networks settings lock-in: use your own network
|
||||
settings no matter what actual network you are connected to.
|
||||
Now, you can stay protected from botnets, malware, phishing, and
|
||||
block unwanted content, even when using public Wi-Fi hotspots.
|
||||
%li
|
||||
IP-based blocking: DNS responses containing IP addresses
|
||||
present in a user-defined set of addresses can be blocked.
|
||||
|
||||
@@ -23,6 +23,36 @@
|
||||
</head>
|
||||
<body>
|
||||
<h1>Release Notes for the user interface</h1>
|
||||
<article>
|
||||
<h2>Version 0.19</h2>
|
||||
<time>Wed, 10 Oct 2012</time>
|
||||
<ul>
|
||||
<li>dnscrypt-proxy has been updated to version 1.2.0.</li>
|
||||
<li>Detection of IPv6 connectivity is now faster and more reliable.</li>
|
||||
<li>
|
||||
AAAA queries are filtered out on networks with no IPv6
|
||||
connectivity in order to significantly reduce latency.
|
||||
</li>
|
||||
</ul>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 0.18</h2>
|
||||
<time>Wed, 3 Oct 2012</time>
|
||||
<ul>
|
||||
<li>
|
||||
freebox.fr has been added to the default list of domains
|
||||
for which DNSCrypt should be bypassed.
|
||||
</li>
|
||||
<li>
|
||||
If a static resolvers set has been specified, this will now be
|
||||
used for exceptions instead of DHCP-provided servers.
|
||||
</li>
|
||||
<li>
|
||||
Minor cosmetic fixes and documentation improvements have been
|
||||
made.
|
||||
</li>
|
||||
</ul>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 0.17</h2>
|
||||
<time>Fri, 28 Sep 2012</time>
|
||||
@@ -33,17 +63,10 @@
|
||||
Static default DNS resolvers can now be used instead of
|
||||
having them provided by a DHCP server.
|
||||
</li>
|
||||
<li>Advanced parental controls.</li>
|
||||
<li>
|
||||
Logging: outgoing queries can now be logged and displayed in
|
||||
real time.
|
||||
</li>
|
||||
<li>
|
||||
OpenDNS networks settings lock-in: use your own network
|
||||
settings no matter what actual network you are connected to.
|
||||
Now, you can stay protected from botnets, malware, phishing, and
|
||||
block unwanted content, even when using public Wi-Fi hotspots.
|
||||
</li>
|
||||
<li>
|
||||
IP-based blocking: DNS responses containing IP addresses
|
||||
present in a user-defined set of addresses can be blocked.
|
||||
|
||||
Binary file not shown.
@@ -8,7 +8,8 @@ try_resolution() {
|
||||
}
|
||||
|
||||
try_http_query() {
|
||||
exec alarmer 5 curl -m 5 http://www.opendns.com 2>/dev/null | \
|
||||
exec alarmer 5 curl -L --max-redirs 5 -4 -m 5 \
|
||||
http://guide.opendns.com/main 2>/dev/null | \
|
||||
fgrep -ic OpenDNS > /dev/null 2>&1
|
||||
}
|
||||
|
||||
|
||||
@@ -19,9 +19,7 @@ DNSCRYPT_PROXY_PLUGINS_BASE_FILE="${CONTROL_DIR}/plugin"
|
||||
STATIC_RESOLVERS_FILE="${CONTROL_DIR}/static-resolvers"
|
||||
|
||||
PLUGINS_ENABLED_FILE="${CONTROL_DIR}/plugins.enabled"
|
||||
PARENTAL_CONTROLS_FILE="${CONTROL_DIR}/plugin-parental-controls.enabled"
|
||||
QUERY_LOGGING_FILE="${CONTROL_DIR}/plugin-query-logging.enabled"
|
||||
LOCKIN_FILE="${CONTROL_DIR}/plugin-lockin.enabled"
|
||||
BLOCKING_FILE="${CONTROL_DIR}/plugin-blocking.enabled"
|
||||
|
||||
QUERY_LOG_FILE="/var/log/dnscrypt-query.log"
|
||||
@@ -40,7 +38,7 @@ INTERFACE_PROBES="127.0.0.55"
|
||||
INTERFACE_PROBES_MASK="24"
|
||||
|
||||
DOMAINS_EXCEPTIONS='
|
||||
fritz.box intranet lan localdomain nowtv.com private routerlogin.net
|
||||
freebox.fr fritz.box intranet lan localdomain nowtv.com private routerlogin.net
|
||||
'
|
||||
|
||||
export PATH="${DNSCRYPT_USR_BASE_DIR}/bin:${DNSCRYPT_USR_BASE_DIR}/scripts:$PATH"
|
||||
|
||||
@@ -39,8 +39,7 @@ remove_old_exceptions() {
|
||||
}
|
||||
}
|
||||
|
||||
name_servers=$(get_dhcp_dns || get_gw)
|
||||
|
||||
name_servers=$(./get-static-resolvers.sh || get_dhcp_dns || get_gw)
|
||||
[ x"$name_servers" = 'x' ] && exit 0
|
||||
|
||||
default_domain=$(./get-current-default-domain.sh)
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
if [ -e "$LOCKIN_FILE" ]; then
|
||||
echo 'yes'
|
||||
else
|
||||
echo 'no'
|
||||
fi
|
||||
@@ -1,9 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
if [ -e "$PARENTAL_CONTROLS_FILE" ]; then
|
||||
echo 'yes'
|
||||
else
|
||||
echo 'no'
|
||||
fi
|
||||
@@ -2,4 +2,6 @@
|
||||
|
||||
. ./common.inc
|
||||
|
||||
[ -r "$STATIC_RESOLVERS_FILE" ] && cat "$STATIC_RESOLVERS_FILE"
|
||||
[ -r "$STATIC_RESOLVERS_FILE" ] && cat "$STATIC_RESOLVERS_FILE" && exit 0
|
||||
exit 1
|
||||
|
||||
|
||||
@@ -66,8 +66,8 @@ get_plugin_args() {
|
||||
|
||||
./stop-dnscrypt-proxy.sh
|
||||
|
||||
ping6 -c 1 2620:0:ccc::2 > /dev/null 2>&1
|
||||
ipv6_supported="no"
|
||||
ping6 -c 1 2620:0:ccc::2 > /dev/null 2>&1
|
||||
[ $? = 0 ] && ipv6_supported="yes"
|
||||
|
||||
familyshield_wanted="no"
|
||||
@@ -127,6 +127,9 @@ plugins_args=''
|
||||
if [ -r "${DNSCRYPT_PROXY_PLUGINS_BASE_FILE}s.enabled" ]; then
|
||||
plugin_args=$(get_plugin_args)
|
||||
fi
|
||||
[ "$ipv6_supported" = "no" ] && \
|
||||
plugin_args="${plugin_args} --plugin=libdcplugin_example_ldns_aaaa_blocking.la"
|
||||
|
||||
best_args=$(cat "${RES_DIR}/${best_file}")
|
||||
|
||||
eval dnscrypt-proxy $best_args --local-address="$INTERFACE_PROXY" \
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
rm -f "$LOCKIN_FILE"
|
||||
|
||||
touch "$LOCKIN_ENABLED_FILE"
|
||||
@@ -1,42 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
get_opendns_config() {
|
||||
exec dig +tries=3 +time=3 +short txt debug.opendns.com @208.67.222.222
|
||||
}
|
||||
|
||||
get_client_ip() {
|
||||
local client_ip=''
|
||||
local has_thing_id='false'
|
||||
|
||||
while read line; do
|
||||
case "$line" in
|
||||
\"id\ *) has_thing_id='true' ;;
|
||||
\"source\ *) client_ip=$(echo "$line" | cut -d' ' -f2 | cut -d ':' -f1) ;;
|
||||
esac
|
||||
done
|
||||
[ x"$client_ip" != 'x' ] && echo "$client_ip" | egrep '^[0-9.]{1,15}$'
|
||||
}
|
||||
|
||||
hex_ip() {
|
||||
local dec="$1"
|
||||
local hex=''
|
||||
local OIFS="$IFS"
|
||||
local p
|
||||
|
||||
IFS='.'
|
||||
for p in $dec; do
|
||||
hex="${hex}$(printf '%02x' $p)"
|
||||
done
|
||||
IFS="$OIFS"
|
||||
echo "$hex"
|
||||
}
|
||||
|
||||
client_ip=$(get_opendns_config | get_client_ip) || exit 1
|
||||
client_ip_hex=$(hex_ip "$client_ip")
|
||||
|
||||
echo "libdcplugin_example_ldns_opendns_set_client_ip.la,${client_ip_hex}" > \
|
||||
"$LOCKIN_FILE"
|
||||
|
||||
touch "$PLUGINS_ENABLED_FILE"
|
||||
@@ -1,7 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
rm -f "$PARENTAL_CONTROLS_FILE"
|
||||
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. ./common.inc
|
||||
|
||||
echo 'libdcplugin_example_ldns_opendns_parental_control.la' > \
|
||||
"$PARENTAL_CONTROLS_FILE"
|
||||
touch "$PLUGINS_ENABLED_FILE"
|
||||
|
||||
+2
-2
@@ -12,7 +12,7 @@ PAUSE_INCREMENT=0.1
|
||||
pause=0
|
||||
while [ -e "$DNSCRYPT_FILE" ]; do
|
||||
current_resolvers=$(./get-current-resolvers.sh)
|
||||
if [ "$current_resolvers" = '127.0.0.54' ]; then
|
||||
if [ "$current_resolvers" = "$INTERFACE_PROXY" ]; then
|
||||
if [ ! -e "$PROXY_PID_FILE" ]; then
|
||||
./start-dnscrypt-proxy.sh || ./switch-to-dhcp.sh
|
||||
fi
|
||||
@@ -20,7 +20,7 @@ while [ -e "$DNSCRYPT_FILE" ]; do
|
||||
if [ $pause -lt $PAUSE_MAX ]; then
|
||||
pause=$((pause + $PAUSE_INCREMENT))
|
||||
fi
|
||||
sleep $pause
|
||||
sleep $pause
|
||||
./check-hijacking.sh || continue
|
||||
./start-dnscrypt-proxy.sh || continue
|
||||
./check-local-dns.sh || continue
|
||||
|
||||
Reference in New Issue
Block a user