Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
afe2bfcdf5 | ||
|
|
2e5e311f00 | ||
|
|
f64a4991f0 | ||
|
|
650b910e7d | ||
|
|
6b6ae896fd | ||
|
|
3a3f040524 | ||
|
|
418bbe586c | ||
|
|
c274c6082c | ||
|
|
54ad6a70d2 | ||
|
|
61ccbaec85 | ||
|
|
9bd689a1f3 | ||
|
|
ce3dcf4c06 | ||
|
|
572b33a765 | ||
|
|
77742886c4 | ||
|
|
236957ce0c | ||
|
|
5ca4dc6dc7 | ||
|
|
de5235f8b2 | ||
|
|
275bb49624 | ||
|
|
690fc9038d | ||
|
|
3724e78ab2 | ||
|
|
dd3b6a2aa7 | ||
|
|
455ee1dbcb | ||
|
|
b036e93a6a | ||
|
|
73ca3e136f | ||
|
|
11640d3038 | ||
|
|
af6b2485ae | ||
|
|
b1e4f1a064 | ||
|
|
cf513f4745 | ||
|
|
12eff619cc | ||
|
|
065c93519e | ||
|
|
da8a4c2b55 | ||
|
|
18310fd607 | ||
|
|
128ee7809f | ||
|
|
76462a39b3 | ||
|
|
1e5cc145e3 | ||
|
|
e5d8a9f579 | ||
|
|
89e8c923fa | ||
|
|
fb416bf21e | ||
|
|
20b40f8cd9 | ||
|
|
917aa0034b | ||
|
|
c4c2aa4a9f | ||
|
|
2896256872 | ||
|
|
e226cba2f4 | ||
|
|
a430afe4c9 | ||
|
|
16039bf898 |
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.utilities</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 416 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 762 B |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 243 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 455 B |
@@ -0,0 +1,267 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="34"
|
||||
height="34"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.2 r9819"
|
||||
sodipodi:docname="icon-dnscrypt.inkscape.svg"
|
||||
inkscape:export-filename="/Users/avh4/workspace/dnscrypt-osxclient/DNSCrypt-Menubar/DNSCrypt-Menubar/icon-dnscrypt-active.png"
|
||||
inkscape:export-xdpi="45"
|
||||
inkscape:export-ydpi="45"
|
||||
style="enable-background:new">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="10.351258"
|
||||
inkscape:cx="17.323754"
|
||||
inkscape:cy="16.37179"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="g4162"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1191"
|
||||
inkscape:window-height="822"
|
||||
inkscape:window-x="9"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:snap-object-midpoints="true">
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="-3.8642648,37.386762"
|
||||
id="guide4115" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer4"
|
||||
inkscape:label="Reference no network"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true"
|
||||
transform="translate(0,-2)">
|
||||
<image
|
||||
style="display:inline"
|
||||
y="0"
|
||||
x="0"
|
||||
id="image4031"
|
||||
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAANtJREFU OI2d1DFKBDEYxfFfZo2QERSbRVjZo3gKK1sPIHoEGyvBWgStPIAH8DCiN9h+bLIyO86MiQ8CX76Q //fyioSU2n3c4RxrdfrCC24XMcZ7XOOoEgKHOENscJGbb1giFK5lvgOXIaW2y5vTbLVGK3xCHxQq IVt10MwcdhX9SdDOtJG6GNR/5tDFaARzjsYuTOb419OKNQeaCrsKNMxkmFmVoy1krP6lvQJASX/H 0Wpu4oR+fosGm1w/q/tG1njK9Sak1D7g6h9u+npcxBjfcYATHFcCPvCKm291ZyCHBno2ewAAAABJ RU5ErkJggg== "
|
||||
height="36"
|
||||
width="36" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer5"
|
||||
inkscape:label="Reference failed"
|
||||
sodipodi:insensitive="true"
|
||||
style="display:none"
|
||||
transform="translate(0,-2)">
|
||||
<image
|
||||
y="0"
|
||||
x="0"
|
||||
id="image4099"
|
||||
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAARZJREFU OI2V1DFKA0EYBeBvEzewURQRg6DEJp138BRWth5AvICFCIKgWFkpeAZbwUoQrGysFEVR7FIFrCQW DsmyTHazP/zwZub9jzeP2U2yrN3CEbbQVa++cIWDZpqmJ9jDQk0RmMcm0ga2w+Y1Okim7E6YgZ0k y9rDsFgLVuvUKj6hkduMiRziO/Rx5Hw0k3eURIjP6AXcx1KEMyw6itVjDt+VEauEHibg2kL3OXxT RqzKqInXgNcnaAxhpsLRLy4xqOBVOoLlINgvc1SVURfveMJcGbFKqOU/p1boiZXPqIuPwvkLNvAj frXR36JhHOSF8SsuisU+n16YgUGSZe0z7JbZnqJOm2ma3mIWK1isKfCGc+z/AeH3MRrXRYDWAAAA AElFTkSuQmCC "
|
||||
height="36"
|
||||
width="36" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="Reference active"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-1018.3622)"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<image
|
||||
y="1016.3622"
|
||||
x="0"
|
||||
id="image3079"
|
||||
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAAXxJREFU OI2Vk79LXEEUhb/duCv3jD8QG0MKERTBzsbSTnB7BUkVEIRUqVUwELYIFmIlCApWVoKVWCn+B4K1 aCNsICBavAkKMin2PXwOszF74RYz3PvNuYc7FTPVgQ3gC/CJ7uIWOAS+f6jVak1gDRjoEgIwBMwC L1VgOVHwCPwApr3PKsAw0AB+An8S9V8rZgrR5Tmw5H32OyVBcuPADjBXfriagDQ6QQC8z65zdYfl +7Kie2DC++y+EyRSVgcugalY0VYZIjmT3K7kWpK7k9x23lwoe6btIwA9JdBJ9OgmsFI6f6Nt9Gqq pzxab/5KoagFjETwX95nH1Ojxma/G5Ibl9yF5J4kdya5sRg0GfUcJDj7wB7tfeoHjoFdAMwU8lwP IVCkmepmaprpJs9mfvcU1fgQwhtQy0x9ZVgqzRRS53izj7zPFjt4Mwg8dPIuNntBcqeFgd1EFYi/ wzxwJbkNyc38L6hipiaw/k7dIzDKP0br4XXNPwNdj1TEX4ehms1FM7oVAAAAAElFTkSuQmCC "
|
||||
height="36"
|
||||
width="36" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer2"
|
||||
inkscape:label="Scratch - Target"
|
||||
style="display:none"
|
||||
transform="translate(0,-2)"
|
||||
sodipodi:insensitive="true">
|
||||
<path
|
||||
style="fill:#1a1a1a;fill-opacity:1;stroke:none;display:inline"
|
||||
d="M 5.6666667,2 C 2.5273333,2 0,4.5273333 0,7.6666667 L 0,30.333333 C 0,33.472667 2.5273333,36 5.6666667,36 L 28.333333,36 C 31.472667,36 34,33.472667 34,30.333333 L 34,7.6666667 C 34,4.5273333 31.472667,2 28.333333,2 L 5.6666667,2 z M 17.029514,5.8958333 c 7.409335,0 13.428819,5.9899707 13.428819,13.3993057 0,7.409335 -6.019484,13.428819 -13.428819,13.428819 -7.4093349,0 -13.3993057,-6.019484 -13.3993057,-13.428819 0,-7.409335 5.9899708,-13.3993057 13.3993057,-13.3993057 z"
|
||||
id="rect3854"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#1a1a1a;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline"
|
||||
id="path3082"
|
||||
sodipodi:cx="18.035715"
|
||||
sodipodi:cy="18.321428"
|
||||
sodipodi:rx="5.7142859"
|
||||
sodipodi:ry="5.7142859"
|
||||
d="m 23.750001,18.321428 a 5.7142859,5.7142859 0 1 1 -11.428572,0 5.7142859,5.7142859 0 1 1 11.428572,0 z"
|
||||
transform="matrix(1.0329861,0,0,1.0329861,-1.5969123,0.37782222)" />
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="Scratch - Large Lock"
|
||||
id="g4144"
|
||||
inkscape:groupmode="layer"
|
||||
transform="translate(0,-2)"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
y="17.409853"
|
||||
x="7.7394609"
|
||||
height="13.229342"
|
||||
width="18.521078"
|
||||
id="rect4146"
|
||||
style="fill:#1a1a1a;fill-opacity:1;stroke:none" />
|
||||
<path
|
||||
inkscape:label="#path3884"
|
||||
sodipodi:nodetypes="csscc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4148"
|
||||
d="m 11.487773,20.507275 0,-6.153827 c 0,-3.044319 2.467909,-5.5122266 5.512226,-5.5122266 3.044319,0 5.512668,2.4679076 5.512668,5.5122266 l 0,5.748148"
|
||||
style="fill:none;stroke:#1a1a1a;stroke-width:2.96083331;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
style="display:none"
|
||||
inkscape:label="No Network"
|
||||
id="g4162"
|
||||
inkscape:groupmode="layer"
|
||||
transform="translate(0,-2)"
|
||||
sodipodi:insensitive="true">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4164"
|
||||
d="M 5.6666667,2 C 2.5273333,2 0,4.5273333 0,7.6666667 L 0,30.333333 C 0,33.472667 2.5273333,36 5.6666667,36 L 28.333333,36 C 31.472667,36 34,33.472667 34,30.333333 L 34,7.6666667 C 34,4.5273333 31.472667,2 28.333333,2 L 5.6666667,2 z M 17.029514,5.8958333 c 7.409335,0 13.428819,5.9899707 13.428819,13.3993057 0,7.409335 -6.019484,13.428819 -13.428819,13.428819 -7.4093349,0 -13.3993057,-6.019484 -13.3993057,-13.428819 0,-7.409335 5.9899708,-13.3993057 13.3993057,-13.3993057 z"
|
||||
style="fill:#808080;fill-opacity:1;stroke:none;display:inline"
|
||||
inkscape:export-filename="/Users/avh4/workspace/dnscrypt-osxclient/DNSCrypt-Menubar/DNSCrypt-Menubar/icon-no-network@2x.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90" />
|
||||
<path
|
||||
transform="matrix(1.0329861,0,0,1.0329861,-1.5969123,0.37782222)"
|
||||
d="m 23.750001,18.321428 a 5.7142859,5.7142859 0 1 1 -11.428572,0 5.7142859,5.7142859 0 1 1 11.428572,0 z"
|
||||
sodipodi:ry="5.7142859"
|
||||
sodipodi:rx="5.7142859"
|
||||
sodipodi:cy="18.321428"
|
||||
sodipodi:cx="18.035715"
|
||||
id="path4166"
|
||||
style="fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline"
|
||||
sodipodi:type="arc"
|
||||
inkscape:export-filename="/Users/avh4/workspace/dnscrypt-osxclient/DNSCrypt-Menubar/DNSCrypt-Menubar/icon-no-network@2x.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer7"
|
||||
inkscape:label="Inactive"
|
||||
style="display:none"
|
||||
transform="translate(0,-2)"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
style="font-size:30.8449707px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#d40000;fill-opacity:1;stroke:none;font-family:Georgia;-inkscape-font-specification:Georgia Bold"
|
||||
id="text4108"
|
||||
transform="matrix(0.94444444,0,0,0.94444444,0.03393364,2)"
|
||||
inkscape:export-filename="/Users/avh4/workspace/dnscrypt-osxclient/DNSCrypt-Menubar/DNSCrypt-Menubar/g4124.png"
|
||||
inkscape:export-xdpi="45"
|
||||
inkscape:export-ydpi="45">
|
||||
<path
|
||||
d="m 18.843,21.718332 -1.76,0 c -0.27253,-1.907467 -2.121054,-7.471109 -2.049557,-10.033756 0.06071,-2.175835 0.826587,-4.8119882 2.921838,-4.80135 2.15386,0.010936 3.012254,2.384064 2.936899,4.80135 -0.07535,2.417286 -1.739851,8.209756 -2.04918,10.033756 z"
|
||||
style="fill:#d40000;fill-opacity:1"
|
||||
id="path4113"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccsszc" />
|
||||
</g>
|
||||
<g
|
||||
id="g4124"
|
||||
style="font-size:30.8449707px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#d40000;fill-opacity:1;stroke:none;font-family:Georgia;-inkscape-font-specification:Georgia Bold"
|
||||
transform="matrix(0.85003413,0,0,0.85003413,1.7309954,4.4841187)"
|
||||
inkscape:export-xdpi="45"
|
||||
inkscape:export-ydpi="45">
|
||||
<path
|
||||
sodipodi:nodetypes="ccscscccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4126"
|
||||
style="fill:#d40000;fill-opacity:1"
|
||||
d="m 20.86206,26.327004 c -9e-6,0.763093 -0.291188,1.420757 -0.873539,1.972994 -0.572326,0.542196 -1.245051,0.813294 -2.018177,0.813295 -0.783178,-10e-7 -1.465944,-0.271099 -2.048299,-0.813295 -0.572322,-0.552237 -0.858481,-1.209901 -0.858478,-1.972994 -3e-6,-0.763089 0.286156,-1.420753 0.858478,-1.972994 0.582355,-0.562273 1.265121,-0.843412 2.048299,-0.843417 0.773126,5e-6 1.445851,0.281144 2.018177,0.843417 0.582351,0.552241 0.87353,1.209905 0.873539,1.972994" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:none;stroke:#808080;stroke-width:3.77777767;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
id="rect4105"
|
||||
width="30.222221"
|
||||
height="30.222221"
|
||||
x="1.8888888"
|
||||
y="3.8888888"
|
||||
rx="3.7311382"
|
||||
ry="3.7311382"
|
||||
inkscape:export-filename="/Users/avh4/workspace/dnscrypt-osxclient/DNSCrypt-Menubar/DNSCrypt-Menubar/icon-dnscrypt-inactive.png"
|
||||
inkscape:export-xdpi="45"
|
||||
inkscape:export-ydpi="45" />
|
||||
</g>
|
||||
<g
|
||||
style="display:inline"
|
||||
inkscape:label="Active"
|
||||
id="g3056"
|
||||
inkscape:groupmode="layer"
|
||||
transform="translate(0,-2)"
|
||||
sodipodi:insensitive="true">
|
||||
<path
|
||||
style="fill:#1a1a1a;fill-opacity:1;stroke:none;display:inline"
|
||||
d="M 5.6666667,2 C 2.5273333,2 0,4.5273333 0,7.6666667 L 0,30.333333 C 0,33.472667 2.5273333,36 5.6666667,36 l 13.2222223,0 0,-3.423611 c -0.611523,0.08547 -1.224534,0.147569 -1.859375,0.147569 -7.4093349,0 -13.3993057,-6.019484 -13.3993057,-13.428819 0,-7.409335 5.9899708,-13.3993057 13.3993057,-13.3993057 6.846362,0 12.519739,5.1238497 13.340278,11.7465277 1.779019,0.868614 3.125286,2.504502 3.630208,4.456597 L 34,7.6666667 C 34,4.5273333 31.472667,2 28.333333,2 L 5.6666667,2 z"
|
||||
id="path3058"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
transform="matrix(1.0329861,0,0,1.0329861,-1.5969123,0.37782222)"
|
||||
d="m 23.750001,18.321428 a 5.7142859,5.7142859 0 1 1 -11.428572,0 5.7142859,5.7142859 0 1 1 11.428572,0 z"
|
||||
sodipodi:ry="5.7142859"
|
||||
sodipodi:rx="5.7142859"
|
||||
sodipodi:cy="18.321428"
|
||||
sodipodi:cx="18.035715"
|
||||
id="path3060"
|
||||
style="fill:#1a1a1a;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline"
|
||||
sodipodi:type="arc" />
|
||||
<rect
|
||||
style="fill:#1a1a1a;fill-opacity:1;stroke:none;display:inline"
|
||||
id="rect3863"
|
||||
width="13.222222"
|
||||
height="9.4444447"
|
||||
x="20.777779"
|
||||
y="26.555555" />
|
||||
<path
|
||||
style="fill:none;stroke:#1a1a1a;stroke-width:1.57407403;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 23.453703,28.115447 0,-4.393225 c 0,-2.173342 1.761844,-3.935185 3.935186,-3.935185 2.173343,0 3.9355,1.761843 3.9355,3.935185 l 0,4.103611"
|
||||
id="locktop"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="csscc"
|
||||
inkscape:label="#path3884" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 355 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 663 B |
@@ -829,7 +829,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.4.0</string>
|
||||
<string>1.4.0.1</string>
|
||||
</dict>
|
||||
<key>UUID</key>
|
||||
<string>7F7D70AB-F7A2-4027-8304-3063C7B9532F</string>
|
||||
@@ -1436,7 +1436,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
@@ -1929,7 +1929,7 @@
|
||||
<key>USE_HFS+_COMPRESSION</key>
|
||||
<true/>
|
||||
<key>VERSION</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
</dict>
|
||||
<key>TYPE</key>
|
||||
<integer>0</integer>
|
||||
|
||||
@@ -2,14 +2,24 @@
|
||||
|
||||
exec 2>/dev/null
|
||||
|
||||
/bin/launchctl stop com.opendns.osx.RoamingClientMenubar
|
||||
/bin/launchctl remove com.opendns.osx.RoamingClientMenubar
|
||||
/bin/launchctl remove com.opendns.osx.RoamingClientConfigUpdater
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.Roaming*.plist
|
||||
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptMenuBar
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptMenuBar.plist
|
||||
/bin/launchctl stop com.opendns.osx.RoamingClientConfigUpdater
|
||||
/bin/launchctl remove com.opendns.osx.RoamingClientConfigUpdater
|
||||
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.Roaming*.plist
|
||||
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptMenuBar
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptMenuBar
|
||||
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptMenuBar
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptMenuBar
|
||||
|
||||
killall 'DNSCrypt-Menubar'
|
||||
killall 'DNSCrypt Menubar'
|
||||
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptMenuBar.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptMenuBar.plist
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -2,29 +2,46 @@
|
||||
|
||||
exec 2>/dev/null
|
||||
|
||||
if [ -x /usr/bin/pkill ]; then
|
||||
/usr/bin/pkill -f '/Applications/System Preferences.app'
|
||||
fi
|
||||
killall 'System Preferences'
|
||||
|
||||
/bin/rm -rf '/Library/Application Support/DNSCrypt Updater'
|
||||
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptConfigUpdater
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptConfigUpdater
|
||||
/bin/rm -f '/Library/LaunchDaemons/com.opendns.osx.DNSCryptConfigUpdater.plist'
|
||||
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptAfterboot
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptConsoleChange
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptControlChange
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptNetworkChange
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCrypt*.plist
|
||||
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptConfigUpdater
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptConfigUpdater
|
||||
/bin/rm -f '/Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptConfigUpdater.plist'
|
||||
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptAfterboot
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptAfterboot
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptConsoleChange
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptConsoleChange
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptControlChange
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptControlChange
|
||||
/bin/launchctl stop com.opendns.osx.DNSCryptNetworkChange
|
||||
/bin/launchctl remove com.opendns.osx.DNSCryptNetworkChange
|
||||
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptAfterboot.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptConsoleChange.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptControlChange.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.opendns.osx.DNSCryptNetworkChange.plist
|
||||
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptAfterboot
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptAfterboot
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptConsoleChange
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptConsoleChange
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptControlChange
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptControlChange
|
||||
/bin/launchctl stop com.github.dnscrypt-osxclient.DNSCryptNetworkChange
|
||||
/bin/launchctl remove com.github.dnscrypt-osxclient.DNSCryptNetworkChange
|
||||
|
||||
/bin/rm -f /Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptAfterboot.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptConsoleChange.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptControlChange.plist
|
||||
/bin/rm -f /Library/LaunchDaemons/com.github.dnscrypt-osxclient.DNSCryptNetworkChange.plist
|
||||
|
||||
/bin/rm -f /var/run/dnscrypt*.lock
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
|
||||
VERSION='1.0.0'
|
||||
VERSION='1.0.3'
|
||||
|
||||
cd build || exit 1
|
||||
[ -d DNSCrypt.mpkg ] || exit 1
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0.0</string>
|
||||
<string>1.0.3</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>BSD</string>
|
||||
<key>NSMainNibFile</key>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#import <WebKit/WebKit.h>
|
||||
#import "CHCSVParser/CHCSVParser.h"
|
||||
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.0"
|
||||
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.3"
|
||||
|
||||
#define kDNSCRYPT_PREFPANE_APP_PATH @"/Library/PreferencePanes/DNSCrypt.prefPane"
|
||||
#define kDNSCRYPT_USR_BASE_DIR kDNSCRYPT_PREFPANE_APP_PATH @"/Contents/Resources/usr"
|
||||
|
||||
@@ -36,3 +36,13 @@
|
||||
still be useful against passive attackers and in order to bypass
|
||||
DNS censorship. Don't enable it unless you are frequently
|
||||
roaming and you don't want to manually disable/enable DNSCrypt.
|
||||
%li
|
||||
Using Little Snitch? There are 4 rules you need to establish,
|
||||
which Little Snitch should prompt for when trying to
|
||||
activate this application:
|
||||
%ol
|
||||
%li Allow any outgoing connection for system processes (dnscrypt-proxy)
|
||||
%li Allow any incoming connection for system process (dnscrypt-proxy)
|
||||
%li Allow any outgoing connection for system processes (dig)
|
||||
%li Allow outgoing TCP connections on port 80( http) of www.apple.com for system process (curl)
|
||||
(Thanks to @cavemandaveman)
|
||||
|
||||
@@ -42,6 +42,18 @@
|
||||
DNS censorship. Don't enable it unless you are frequently
|
||||
roaming and you don't want to manually disable/enable DNSCrypt.
|
||||
</li>
|
||||
<li>
|
||||
Using Little Snitch? There are 4 rules you need to establish,
|
||||
which Little Snitch should prompt for when trying to
|
||||
activate this application:
|
||||
<ol>
|
||||
<li>Allow any outgoing connection for system processes (dnscrypt-proxy)</li>
|
||||
<li>Allow any incoming connection for system process (dnscrypt-proxy)</li>
|
||||
<li>Allow any outgoing connection for system processes (dig)</li>
|
||||
<li>Allow outgoing TCP connections on port 80( http) of www.apple.com for system process (curl)</li>
|
||||
</ol>
|
||||
(Thanks to @cavemandaveman)
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
</body>
|
||||
|
||||
@@ -103,4 +103,3 @@
|
||||
domains.
|
||||
%p
|
||||
Use actual apps, or even a command like ping(8).
|
||||
|
||||
|
||||
@@ -22,7 +22,44 @@
|
||||
%h1 Release Notes for DNSCrypt-OSXclient by AlterStep
|
||||
|
||||
%article
|
||||
%h2 Version 1.0 by AlterStep
|
||||
%h2 Version 1.0.3 by AlterStep
|
||||
%time Thu, 18 Jun 2014
|
||||
%p
|
||||
Runs on OSX 10.8 (Snow Leopard), 10.9 (Mavericks) and 10.10 (Yosemite)
|
||||
%p
|
||||
New set of icons, contributed by Aaron VonderHaar
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.2 by AlterStep
|
||||
%time Thu, 05 Jun 2014
|
||||
%p
|
||||
Improved installation scripts
|
||||
%p
|
||||
LDNS has been downgraded in order to work on systems without
|
||||
Homebrew.
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.1 by AlterStep
|
||||
%time Mon, 28 Apr 2014
|
||||
%p
|
||||
Include the release version of dnscrypt-proxy 1.4, with a new
|
||||
OpenNIC resolver.
|
||||
%p
|
||||
Wait after dnscrypt-proxy has been turned on before sending a
|
||||
query. This actually makes state changes faster.
|
||||
%p
|
||||
Debug log, turned off by default and deleted after every
|
||||
reboot. In order to enable it, create an empty file named
|
||||
%code debug.enabled
|
||||
in
|
||||
%code /Library/Application Support/DNSCrypt/control
|
||||
and the debug log file itself is
|
||||
%code /var/log/dnscrypt-osxclient-debug.log
|
||||
%p
|
||||
Thanks a lot for your feedback on the first version!
|
||||
|
||||
%article
|
||||
%h2 Version 1.0.0 by AlterStep
|
||||
%time Thu, 21 Apr 2014
|
||||
%p
|
||||
This is my first release, based on the source code of the beta
|
||||
|
||||
@@ -26,7 +26,52 @@
|
||||
<body>
|
||||
<h1>Release Notes for DNSCrypt-OSXclient by AlterStep</h1>
|
||||
<article>
|
||||
<h2>Version 1.0 by AlterStep</h2>
|
||||
<h2>Version 1.0.3 by AlterStep</h2>
|
||||
<time>Thu, 18 Jun 2014</time>
|
||||
<p>
|
||||
Runs on OSX 10.8 (Snow Leopard), 10.9 (Mavericks) and 10.10 (Yosemite)
|
||||
</p>
|
||||
<p>
|
||||
New set of icons, contributed by Aaron VonderHaar
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.2 by AlterStep</h2>
|
||||
<time>Thu, 05 Jun 2014</time>
|
||||
<p>
|
||||
Improved installation scripts
|
||||
</p>
|
||||
<p>
|
||||
LDNS has been downgraded in order to work on systems without
|
||||
Homebrew.
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.1 by AlterStep</h2>
|
||||
<time>Mon, 28 Apr 2014</time>
|
||||
<p>
|
||||
Include the release version of dnscrypt-proxy 1.4, with a new
|
||||
OpenNIC resolver.
|
||||
</p>
|
||||
<p>
|
||||
Wait after dnscrypt-proxy has been turned on before sending a
|
||||
query. This actually makes state changes faster.
|
||||
</p>
|
||||
<p>
|
||||
Debug log, turned off by default and deleted after every
|
||||
reboot. In order to enable it, create an empty file named
|
||||
<code>debug.enabled</code>
|
||||
in
|
||||
<code>/Library/Application Support/DNSCrypt/control</code>
|
||||
and the debug log file itself is
|
||||
<code>/var/log/dnscrypt-osxclient-debug.log</code>
|
||||
</p>
|
||||
<p>
|
||||
Thanks a lot for your feedback on the first version!
|
||||
</p>
|
||||
</article>
|
||||
<article>
|
||||
<h2>Version 1.0.0 by AlterStep</h2>
|
||||
<time>Thu, 21 Apr 2014</time>
|
||||
<p>
|
||||
This is my first release, based on the source code of the beta
|
||||
|
||||
@@ -38,9 +38,9 @@
|
||||
<key>name</key>
|
||||
<string>ScriptWindowState</string>
|
||||
<key>positionOfDivider</key>
|
||||
<real>333</real>
|
||||
<real>370</real>
|
||||
<key>savedFrame</key>
|
||||
<string>60 149 1053 597 0 0 1366 746 </string>
|
||||
<string>85 77 1202 655 0 0 1366 746 </string>
|
||||
<key>selectedTabView</key>
|
||||
<string>result</string>
|
||||
</dict>
|
||||
|
||||
|
Before Width: | Height: | Size: 362 B After Width: | Height: | Size: 362 B |
@@ -1 +1 @@
|
||||
libsodium.4.dylib
|
||||
libsodium.10.dylib
|
||||
@@ -3,6 +3,7 @@
|
||||
. ./common.inc
|
||||
|
||||
rm -f "$QUERY_LOG_FILE"
|
||||
rm -f "$DEBUG_LOG_FILE"
|
||||
|
||||
./clear-fw.sh
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
. ./common.inc
|
||||
|
||||
try_resolution() {
|
||||
exec alarmer 5 dig +tries=2 +time=3 +short resolver1.opendns.com \
|
||||
| egrep '^208[.]67[.]' > /dev/null 2>&1
|
||||
exec alarmer 5 dig +tries=2 +time=3 +short google-public-dns-a.google.com \
|
||||
| egrep '^8[.]8[.]8[.]8' > /dev/null 2>&1
|
||||
}
|
||||
|
||||
try_http_query() {
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
. ./common.inc
|
||||
|
||||
try_local_resolution() {
|
||||
exec dig +tries=2 +time=3 +short resolver1.opendns.com @$INTERFACE_PROXY \
|
||||
| egrep '^208[.]67[.]' > /dev/null 2>&1
|
||||
exec dig +tries=2 +time=3 +short google-public-dns-a.google.com @$INTERFACE_PROXY \
|
||||
| egrep '^8[.]8[.]8[.]8' > /dev/null 2>&1
|
||||
}
|
||||
|
||||
try_local_resolution
|
||||
|
||||
@@ -1,27 +1,33 @@
|
||||
|
||||
DNSCRYPT_USR_BASE_DIR='/Library/PreferencePanes/DNSCrypt.prefPane/Contents/Resources/usr'
|
||||
DNSCRYPT_VAR_BASE_DIR='/Library/Application Support/DNSCrypt'
|
||||
DNSCRYPT_LOG_BASE_DIR='/var/log'
|
||||
DNSCRYPT_VAR_RUN_BASE_DIR='/var/run'
|
||||
|
||||
cd -- "${DNSCRYPT_USR_BASE_DIR}/scripts" || exit 1
|
||||
|
||||
CONTROL_DIR="${DNSCRYPT_VAR_BASE_DIR}/control"
|
||||
TICKETS_DIR="${DNSCRYPT_VAR_BASE_DIR}/tickets"
|
||||
DNSCRYPT_PROXY_BASE_DIR="${DNSCRYPT_VAR_BASE_DIR}/dnscrypt-proxy"
|
||||
PROXY_PID_FILE="/var/run/dnscrypt-proxy.pid"
|
||||
PROXY_PID_FILE="${DNSCRYPT_VAR_RUN_BASE_DIR}/dnscrypt-proxy.pid"
|
||||
STATES_DIR="${DNSCRYPT_VAR_BASE_DIR}/states"
|
||||
|
||||
DNSCRYPT_RESOLVER_NAME_FILE="${CONTROL_DIR}/dnscrypt-resolver-name"
|
||||
DNSCRYPT_FILE="${CONTROL_DIR}/dnscrypt"
|
||||
FALLBACK_FILE="${CONTROL_DIR}/fallback"
|
||||
HANDLERS_LOCK_FILE="/var/run/dnscrypt-handlers.lock"
|
||||
HANDLERS_LOCK_FILE="${DNSCRYPT_VAR_RUN_BASE_DIR}/dnscrypt-handlers.lock"
|
||||
DNSCRYPT_PROXY_PLUGINS_BASE_FILE="${CONTROL_DIR}/plugin"
|
||||
STATIC_RESOLVERS_FILE="${CONTROL_DIR}/static-resolvers"
|
||||
|
||||
DEBUG_ENABLED_FILE="${CONTROL_DIR}/debug.enabled"
|
||||
|
||||
PLUGINS_ENABLED_FILE="${CONTROL_DIR}/plugins.enabled"
|
||||
QUERY_LOGGING_FILE="${CONTROL_DIR}/plugin-query-logging.enabled"
|
||||
BLOCKING_FILE="${CONTROL_DIR}/plugin-blocking.enabled"
|
||||
|
||||
QUERY_LOG_FILE="/var/log/dnscrypt-query.log"
|
||||
QUERY_LOG_FILE="${DNSCRYPT_LOG_BASE_DIR}/dnscrypt-query.log"
|
||||
DEBUG_LOG_FILE="${DNSCRYPT_LOG_BASE_DIR}/dnscrypt-osxclient-debug.log"
|
||||
DEBUG_LOG_FILE_LOCK="${DEBUG_LOG_FILE}.lock"
|
||||
|
||||
BLACKLIST_IPS_FILE="${CONTROL_DIR}/blacklist-ips"
|
||||
BLACKLIST_IPS_TMP_FILE="${BLACKLIST_IPS_FILE}.tmp"
|
||||
BLACKLIST_DOMAINS_FILE="${CONTROL_DIR}/blacklist-domains"
|
||||
@@ -47,7 +53,14 @@ DISABLE_IPV6='no'
|
||||
export PATH="${DNSCRYPT_USR_BASE_DIR}/bin:${DNSCRYPT_USR_BASE_DIR}/scripts:$PATH"
|
||||
|
||||
init_interfaces() {
|
||||
sudo ifconfig lo0 alias ${INTERFACE_UNBOUND}/${INTERFACE_UNBOUND_MASK}
|
||||
sudo ifconfig lo0 alias ${INTERFACE_PROXY}/${INTERFACE_PROXY_MASK}
|
||||
sudo ifconfig lo0 alias ${INTERFACE_PROBES}/${INTERFACE_PROBES_MASK}
|
||||
/sbin/ifconfig lo0 alias ${INTERFACE_UNBOUND}/${INTERFACE_UNBOUND_MASK}
|
||||
/sbin/ifconfig lo0 alias ${INTERFACE_PROXY}/${INTERFACE_PROXY_MASK}
|
||||
/sbin/ifconfig lo0 alias ${INTERFACE_PROBES}/${INTERFACE_PROBES_MASK}
|
||||
}
|
||||
|
||||
logger_debug() {
|
||||
[ -f "$DEBUG_ENABLED_FILE" ] || return
|
||||
lockfile -1 -r 1 "$DEBUG_LOG_FILE_LOCK" > /dev/null 2>&1
|
||||
echo "$(date) - $1" >> "$DEBUG_LOG_FILE"
|
||||
rm -f "$DEBUG_LOG_FILE_LOCK" 2> /dev/null
|
||||
}
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
. ./common.inc
|
||||
|
||||
eval $(stat -s '/dev/console') || exit 1
|
||||
|
||||
logger_debug "OSX console ownership changed"
|
||||
|
||||
wanted_uid="$st_uid"
|
||||
if [ ! -d "$DNSCRYPT_VAR_BASE_DIR" ]; then
|
||||
mkdir -p "$DNSCRYPT_VAR_BASE_DIR" || exit 1
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
PROCESSED_TICKETS_FILE="${STATES_DIR}/processed-tickets"
|
||||
|
||||
update() {
|
||||
lockfile -1 -r 30 -l 60 "$HANDLERS_LOCK_FILE" || exit 1
|
||||
lockfile -1 -r 30 "$HANDLERS_LOCK_FILE" || exit 1
|
||||
|
||||
if [ -e "$DNSCRYPT_FILE" ]; then
|
||||
./switch-to-dnscrypt-if-required.sh
|
||||
@@ -19,6 +19,8 @@ update() {
|
||||
|
||||
touch "${STATES_DIR}/updating"
|
||||
|
||||
logger_debug "DNSCrypt-OSXClient configuration changed"
|
||||
|
||||
updated='no'
|
||||
while :; do
|
||||
find "$TICKETS_DIR" -type f -name 'ticket-*' > "$PROCESSED_TICKETS_FILE"
|
||||
|
||||
@@ -10,7 +10,10 @@ if [ x"$1" != 'x--boot' ]; then
|
||||
./check-network-change.sh || exit 0
|
||||
fi
|
||||
|
||||
lockfile -1 -r 30 -l 60 "$HANDLERS_LOCK_FILE" || exit 1
|
||||
logger_debug "Network configuration changed"
|
||||
|
||||
|
||||
lockfile -1 -r 30 "$HANDLERS_LOCK_FILE" || exit 1
|
||||
./set-dns-to-dhcp.sh
|
||||
if [ ! -e "$DNSCRYPT_FILE" ]; then
|
||||
rm -f "$HANDLERS_LOCK_FILE"
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
|
||||
servers='empty'
|
||||
|
||||
logger_debug "Changing the DNS configuration to use the default DNS resolvers"
|
||||
|
||||
if [ -r "$STATIC_RESOLVERS_FILE" ]; then
|
||||
servers=''
|
||||
while read server; do
|
||||
@@ -12,12 +14,16 @@ if [ -r "$STATIC_RESOLVERS_FILE" ]; then
|
||||
esac
|
||||
done < "$STATIC_RESOLVERS_FILE"
|
||||
[ -z "$servers" ] && servers='empty'
|
||||
logger_debug "Static list of DNS resolvers: [$servers]"
|
||||
fi
|
||||
|
||||
exec networksetup -listallnetworkservices 2>/dev/null | \
|
||||
fgrep -v '*' | while read x ; do
|
||||
networksetup -setdnsservers "$x" $servers
|
||||
networksetup -setdnsservers "$x" $servers > /dev/null
|
||||
done
|
||||
|
||||
logger_debug "Flushing the local DNS cache"
|
||||
|
||||
dscacheutil -flushcache 2> /dev/null
|
||||
killall -HUP mDNSResponder 2> /dev/null
|
||||
exit 0
|
||||
|
||||
@@ -5,10 +5,16 @@
|
||||
servers="$*"
|
||||
|
||||
[ $# -lt 1 ] && exit 1
|
||||
|
||||
logger_debug "Setting DNS resolvers to [$servers]"
|
||||
|
||||
exec networksetup -listallnetworkservices 2>/dev/null | \
|
||||
fgrep -v '*' | while read x ; do
|
||||
networksetup -setdnsservers "$x" $servers
|
||||
done
|
||||
|
||||
logger_debug "Flushing local DNS cache"
|
||||
|
||||
dscacheutil -flushcache 2> /dev/null
|
||||
killall -HUP mDNSResponder 2> /dev/null
|
||||
exit 0
|
||||
|
||||
@@ -32,6 +32,7 @@ try_resolver() {
|
||||
local args="$*"
|
||||
local pid_file="${PID_DIR}/${priority}.pid"
|
||||
|
||||
logger_debug "Running a test dnscrypt proxy for [$description]"
|
||||
rm -f "${RES_DIR}/${priority}"
|
||||
exec alarmer 3 dnscrypt-proxy --pid="$pid_file" \
|
||||
--resolver-name="$RESOLVER_NAME" \
|
||||
@@ -39,11 +40,13 @@ try_resolver() {
|
||||
while read line; do
|
||||
case "$line" in
|
||||
*Proxying\ from\ *)
|
||||
logger_debug "Proxy for [$description] is up"
|
||||
answers=$(exec dig +time=1 +short +tries=2 -p $priority \
|
||||
@"$INTERFACE_PROBES" www.apple.com. 2> /dev/null | \
|
||||
egrep -ic '^[0-9.:]+$')
|
||||
[ -r "$pid_file" ] && kill $(cat -- "$pid_file")
|
||||
if [ $answers -gt 0 ]; then
|
||||
logger_debug "Proxy for [$description] can be used"
|
||||
echo "$args" > "${RES_DIR}/${priority}"
|
||||
echo "$description" > "${DESCRIPTIONS_DIR}/${priority}"
|
||||
fi
|
||||
@@ -63,16 +66,24 @@ get_plugin_args() {
|
||||
libdcplugin_*) plugin_args="${plugin_args} --plugin=${line}" ;;
|
||||
esac
|
||||
done
|
||||
logger_debug "Plugins to be used: [$plugin_args]"
|
||||
echo "$plugin_args"
|
||||
}
|
||||
}
|
||||
|
||||
logger_debug "dnscrypt-proxy should be (re)started, stopping previous instance if needed"
|
||||
./stop-dnscrypt-proxy.sh
|
||||
|
||||
ipv6_supported="no"
|
||||
if [ x"$DISABLE_IPV6" = "xno" ]; then
|
||||
logger_debug "Testing IPv6 connectivity"
|
||||
ping6 -c 1 2620:0:ccc::2 > /dev/null 2>&1
|
||||
[ $? = 0 ] && ipv6_supported="yes"
|
||||
if [ $? = 0 ]; then
|
||||
ipv6_supported="yes"
|
||||
logger_debug "IPv6 connectivity detected"
|
||||
else
|
||||
logger_debug "IPv6 connectivity is not available"
|
||||
fi
|
||||
fi
|
||||
|
||||
wait_pids=""
|
||||
@@ -91,7 +102,10 @@ for pid in $wait_pids; do
|
||||
[ x"$best_file" != "x" ] && break
|
||||
done
|
||||
|
||||
[ x"$best_file" = "x" ] && exit 1
|
||||
if [ x"$best_file" = "x" ]; then
|
||||
logger_debug "No usable proxy configuration has been found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
plugins_args=''
|
||||
if [ -r "${DNSCRYPT_PROXY_PLUGINS_BASE_FILE}s.enabled" ]; then
|
||||
@@ -102,12 +116,14 @@ fi
|
||||
|
||||
best_args=$(cat "${RES_DIR}/${best_file}")
|
||||
|
||||
logger_debug "Starting dnscrypt-proxy $best_args"
|
||||
eval dnscrypt-proxy $best_args --local-address="$INTERFACE_PROXY" \
|
||||
--resolver-name="$RESOLVER_NAME" \
|
||||
--pidfile="$PROXY_PID_FILE" --user=daemon --daemonize $plugin_args
|
||||
|
||||
if [ $? != 0 ]; then
|
||||
[ -r "$PROXY_PID_FILE" ] && kill $(cat -- "$PROXY_PID_FILE")
|
||||
logger_debug "dnscrypt-proxy $best_args command failed, retrying"
|
||||
sleep 1
|
||||
killall dnscrypt-proxy
|
||||
sleep 1
|
||||
@@ -118,8 +134,11 @@ if [ $? != 0 ]; then
|
||||
--resolver-name="$RESOLVER_NAME" \
|
||||
--pidfile="$PROXY_PID_FILE" --user=daemon --daemonize $plugin_args || \
|
||||
exit 1
|
||||
logger_debug "dnscrypt-proxy $best_args worked after a retry"
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
logger_debug "Checking if the current configuration hijacks all DNS queries"
|
||||
i=0
|
||||
while [ $i -lt 30 ]; do
|
||||
./check-local-dns.sh && break
|
||||
@@ -128,8 +147,12 @@ while [ $i -lt 30 ]; do
|
||||
done
|
||||
|
||||
if [ $i -ge 30 ]; then
|
||||
logger_debug "Current configuration hijacks all DNS queries, disabling DNSCrypt"
|
||||
./switch-to-dhcp.sh
|
||||
exit 1
|
||||
fi
|
||||
|
||||
logger_debug "Current configuration doesn't seem to hijack all DNS queries"
|
||||
|
||||
mv "${DESCRIPTIONS_DIR}/${best_file}" \
|
||||
"${STATES_DIR}/dnscrypt-proxy-description" 2>/dev/null || exit 0
|
||||
|
||||
@@ -2,12 +2,17 @@
|
||||
|
||||
. ./common.inc
|
||||
|
||||
logger_debug "Stopping dnscrypt-proxy"
|
||||
|
||||
if [ -x /usr/bin/pgrep ]; then
|
||||
pgrep -x dnscrypt-proxy | egrep '[0-9]+' > /dev/null || exit 0
|
||||
fi
|
||||
|
||||
[ ! -r "$PROXY_PID_FILE" ] && exit 0
|
||||
pid=$(cat "$PROXY_PID_FILE")
|
||||
[ $pid -lt 2 ] && exit 0
|
||||
|
||||
logger_debug "Trying to stop dnscrypt-proxy by killing pid [$pid]"
|
||||
kill $pid
|
||||
|
||||
i=0
|
||||
@@ -19,3 +24,5 @@ done
|
||||
|
||||
rm -f "$PROXY_PID_FILE"
|
||||
kill -9 $pid
|
||||
|
||||
logger_debug "Killed dnscrypt-proxy with kill -9 pid [$pid]"
|
||||
|
||||
@@ -7,30 +7,42 @@ PAUSE_INCREMENT=0.1
|
||||
|
||||
[ ! -e "$DNSCRYPT_FILE" ] && exit 0
|
||||
|
||||
logger_debug "DNSCrypt has been requested"
|
||||
|
||||
./set-dns-to-dhcp.sh
|
||||
|
||||
pause=0
|
||||
while [ -e "$DNSCRYPT_FILE" ]; do
|
||||
logger_debug "Switching to dnscrypt if required (pause=$pause)"
|
||||
current_resolvers=$(./get-current-resolvers.sh)
|
||||
if [ "$current_resolvers" = "$INTERFACE_PROXY" ]; then
|
||||
if [ ! -e "$PROXY_PID_FILE" ]; then
|
||||
./start-dnscrypt-proxy.sh || ./switch-to-dhcp.sh
|
||||
logger_debug "The proxy should be running but it isn't."
|
||||
./switch-to-dhcp.sh
|
||||
fi
|
||||
fi
|
||||
if [ $pause -lt $PAUSE_MAX ]; then
|
||||
pause=$((pause + $PAUSE_INCREMENT))
|
||||
fi
|
||||
sleep $pause
|
||||
./check-hijacking.sh || continue
|
||||
./start-dnscrypt-proxy.sh || continue
|
||||
logger_debug "Checking if the router hijacks HTTP queries"
|
||||
if ./check-hijacking.sh; then
|
||||
logger_debug "The router doesn't hijack HTTP queries"
|
||||
else
|
||||
logger_debug "The router hijacks HTTP queries - DNSCrypt is likely to be blocked"
|
||||
continue
|
||||
fi
|
||||
./start-dnscrypt-proxy.sh
|
||||
./check-local-dns.sh || continue
|
||||
./set-dns.sh "$INTERFACE_PROXY"
|
||||
if [ $? != 0 ]; then
|
||||
logger_debug "Setting the DNS to [$INTERFACE_PROXY] didn't work"
|
||||
./set-dns-to-dhcp.sh
|
||||
continue
|
||||
fi
|
||||
./check-hijacking.sh
|
||||
if [ $? != 0 ]; then
|
||||
logger_debug "Current configuration seems to be hijacking HTTP queries. Reverting to default resolvers."
|
||||
./set-dns-to-dhcp.sh
|
||||
continue
|
||||
fi
|
||||
|
||||
@@ -3,3 +3,15 @@ OSX client for managing the DNSCrypt Proxy
|
||||
|
||||
The purpose of this application is to allow the user to have a better
|
||||
experience controlling the DNSCrypt Proxy on OSX.
|
||||
|
||||
[Download dnscrypt-osxclient-1.0.2.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.2/dnscrypt-osxclient-1.0.2.dmg)
|
||||
for OSX 10.9 (Mavericks) and OSX 10.10 (Yosemite).
|
||||
|
||||
Compatible with:
|
||||
* CloudNS
|
||||
* d0wn
|
||||
* DNSCrypt.eu
|
||||
* okTurtles
|
||||
* OpenDNS
|
||||
* OpenNIC
|
||||
* Soltysiak
|
||||
|
||||