37 Commits
0.61 ... 0.73

Author SHA1 Message Date
idk
e014619881 Merge pull request #93 from eyedeekay/sed
Sed
2020-03-24 23:05:08 +00:00
idk
677c5c6a68 update changelog 2020-03-24 19:03:26 -04:00
idk
a3217e2bcf Merge branch 'master' of github.com:eyedeekay/I2P-in-Private-Browsing-Mode-Firefox into sed 2020-03-24 18:54:38 -04:00
idk
4ab7069015 fmt && 2020-03-24 18:53:27 -04:00
idk
3a13270479 use includes instead of contains, take the oppourtunity to fix release-time version string 2020-03-24 18:51:47 -04:00
idk
a8eb2b90a2 Merge pull request #89 from eyedeekay/dzf
Dzf
2020-03-24 04:22:27 +00:00
idk
e54754a83a update for release 2020-03-24 00:21:07 -04:00
idk
7f3b6c7359 Fix bug with i2p+ console isolation for danrobi, which also requires creating a contextual identity for MuWire which makes this a pretty good commit to write a blog post about 2020-03-23 18:02:23 -04:00
idk
50ff84111d branch for +fix 2020-03-22 16:08:21 -04:00
idk
984643e1b2 branch for +fix 2020-03-22 16:07:03 -04:00
idk
917fd00771 start cert2 2020-03-18 00:55:13 -04:00
idk
97ee549d40 Add torrent 2020-03-18 00:30:01 -04:00
idk
e0232fa3bc Merge pull request #87 from eyedeekay/settings
Settings
2020-03-18 04:16:34 +00:00
idk
8d23820c65 Also add a console bookmark 2020-03-18 00:15:46 -04:00
idk
8a6d11594f fix some settings that needed to be better 2020-03-18 00:03:35 -04:00
idk
58dadaefc7 Merge pull request #86 from eyedeekay/gh-pages
Update page
2020-03-18 03:46:19 +00:00
idk
eb92f1b275 add the torrent link 2020-03-17 23:36:17 -04:00
idk
4862b0692f add the torrent link 2020-03-17 23:25:17 -04:00
idk
377ab1d6b1 Merge pull request #85 from eyedeekay/certs
update release
2020-03-18 03:15:50 +00:00
idk
cceeb4b613 update release 2020-03-17 23:14:15 -04:00
idk
f109d66ab7 Merge pull request #84 from eyedeekay/certs
Certs
2020-03-18 02:57:36 +00:00
idk
0a447caa82 fix the torrent 2020-03-17 22:53:41 -04:00
idk
1f7be5c9c3 one apptab per app 2020-03-17 04:42:24 -04:00
idk
cd0d55d06f one last tweak to the debian thing 2020-03-06 00:34:12 -05:00
idk
8c40a01b2f start cert viewer 2020-03-05 23:25:08 -05:00
idk
8e6832cf6c add debian postinst 2020-03-05 18:30:43 -05:00
idk
311b837ef4 add debian postinst 2020-03-05 18:27:21 -05:00
idk
d751622d7c fix scripts and simplify Debian install 2020-03-05 17:35:53 -05:00
idk
6406f70824 fix scripts and simplify Debian install 2020-03-05 17:31:36 -05:00
idk
96ee234a17 Start branch for experimenting with certificate stuff 2020-03-05 14:47:12 -05:00
idk
87c52a0931 fix release 2020-03-02 17:59:16 -05:00
idk
d0136f2c6d fix release 2020-03-02 17:56:46 -05:00
idk
d0f4ff9fbb Merge pull request #82 from eyedeekay/containerizers
Containerizers
2020-03-02 22:54:00 +00:00
idk
2d1ae1fab8 Fix other containerizers 2020-03-02 17:35:49 -05:00
idk
f8d99c8fca Fix other containerizers 2020-03-02 17:34:39 -05:00
idk
aeeedc8d4c Start the pageaction branch 2020-02-26 13:03:09 -05:00
idk
e9e3ce085a pageaction 2020-02-26 13:00:51 -05:00
26 changed files with 699 additions and 241 deletions

122
Makefile
View File

@@ -1,52 +1,47 @@
PREFIX:=/usr
PREFIX?=/usr
default: zip
PWD=`pwd`
install: uninstall
mkdir -p $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io \
$(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol \
$(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent \
$(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
cp -r ./icons/ $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp -r ./_locales/ $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp -r ./options/ $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./i2pcontrol/i2pcontrol.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol/i2pcontrol.js
cp ./torrent/*.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/*.html $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/UNLICENSE $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./*.html $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.css $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.md $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.xpi $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.png $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.torrent $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./manifest.json $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./LICENSE $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
ln -s $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io \
$(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
@echo $(PWD)
cp -v ./* $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/; true
cp -vr ./i2pcontrol $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol
cp -vr ./torrent $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent
cp -vr ./_locales $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/_locales
cp -vr ./icons $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/icons
cp -vr ./options $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/options
make link
link:
ln -sf $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io \
$(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/i2ppb@eyedeekay.github.io
uninstall:
rm -rf $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io \
$(PREFIX)/share/webext/i2psetproxy.js@eyedeekay.github.io \
$(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
$(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/i2ppb@eyedeekay.github.io
ls:
ls -lah $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io; \
ls -lah $(PREFIX)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
clean:
rm -fr ../i2psetproxy.js.zip ../i2p_proxy*.xpi ../i2p*.xpi #../i2psetproxy.js_*.*
clean: rc clean-artifacts
rm -fr ../i2psetproxy.js.zip ../i2p_proxy*.xpi ../i2p*.xpi *.torrent #../i2psetproxy.js_*.*
## EVEN RELEASES are AMO RELEASES
## ODD RELEASES are SELFHOSTED RELEASES
MOZ_VERSION=0.58
VERSION=0.59
MOZ_VERSION=0.72
VERSION=0.71
## INCREMENT THIS EVERY TIME YOU DO A RELEASE
LAST_VERSION=0.57
LAST_VERSION=0.69
YELLOW=F7E59A
ORANGE=FFC56D
@@ -97,26 +92,26 @@ torrenthelp:
@echo "</body>" >> torrent/index.html
@echo "</html>" >> torrent/index.html
xpi:
#wget -O ../i2ppb@eyedeekay.github.io.xpi \
#https://addons.mozilla.org/firefox/downloads/file/3419789/i2psetproxyjs-$(MOZ_VERSION)-an+fx.xpi
#cp ../i2ppb@eyedeekay.github.io.xpi ./i2ppb@eyedeekay.github.io.xpi
cp ~/Downloads/i2p_in_private_browsing-$(VERSION)-an+fx.xpi ./i2ppb@eyedeekay.github.io.xpi
xpi: getxpi
version:
sed -i 's|7647|7657|g' *.js* */*.js*
sed -i 's|7647|7657|g' *.js* torrent/*.js*
sed -i 's|$(shell grep "\"version\": " manifest.json)| \"version\": \"$(VERSION)\",|g' manifest.json
sed -i 's|$(shell grep "\"version_name\": " manifest.json)| \"version_name\": \"$(VERSION)\",|g' manifest.json
sed -si 's|$(shell grep $(LAST_VERSION) _locales/en/messages.json)| "message": "$(VERSION)",|g' _locales/en/messages.json; true
sed -si 's|$(shell grep $(MOZ_VERSION) _locales/en/messages.json)| "message": "$(VERSION)",|g' _locales/en/messages.json; true
moz-version:
sed -i 's|7647|7657|g' *.js* */*.js*
sed -i 's|7647|7657|g' *.js* torrent/*.js*
sed -i 's|$(shell grep "\"version\": " manifest.json)| \"version\": \"$(MOZ_VERSION)\",|g' manifest.json
sed -i 's|$(shell grep "\"version_name\": " manifest.json)| \"version_name\": \"$(MOZ_VERSION)\",|g' manifest.json
sed -si 's|$(shell grep $(LAST_VERSION) _locales/en/messages.json)| "message": "$(MOZ_VERSION)",|g' _locales/en/messages.json; true
sed -si 's|$(shell grep $(VERSION) _locales/en/messages.json)| "message": "$(MOZ_VERSION)",|g' _locales/en/messages.json; true
rhz-version:
sed -i 's|$(shell grep "\"version\": " manifest.json)| \"version\": \"$(VERSION)1\",|g' manifest.json
sed -i 's|$(shell grep "\"version_name\": " manifest.json)| \"version_name\": \"$(VERSION)1-rhizome\",|g' manifest.json
sed -i 's|7657|7647|g' *.js* */*.js*
sed -i 's|7657|7647|g' *.js* torrent/*.js*
zip: version
zip --exclude="./i2ppb@eyedeekay.github.io.xpi" \
@@ -135,6 +130,7 @@ zip: version
rc:
@grep "$(VERSION)" debian/changelog
@echo "changelog is prepared"
rm -f *.xpi
rtest: rc index torrenthelp
@@ -151,7 +147,7 @@ recreate-release: delete-release release upload
upload: upload-xpi upload-deb
full-release: release submit deb upload torrent upload-torrent
full-release: release submit upload-xpi torrent upload-torrent deb upload-deb upload-rss seed
WEB_EXT_API_KEY=AMO_KEY
WEB_EXT_API_SECRET=AMO_SECRET
@@ -162,7 +158,7 @@ WEB_EXT_API_SECRET=AMO_SECRET
tk:
echo $(WEB_EXT_API_KEY)
submit: moz-sign rhz-submit moz-submit
submit: moz-submit moz-sign
clean-artifacts:
rm -fr web-ext-artifacts/*
@@ -172,20 +168,23 @@ moz-sign: version clean-artifacts
@echo "Using the 'sign' target to instantly sign an extension for self-distribution"
@echo "requires a JWT API Key and Secret from addons.mozilla.org to be made available"
@echo "to the Makefile under the variables WEB_EXT_API_KEY and WEB_EXT_API_SECRET."
web-ext-submit --channel unlisted --config-discovery false --api-key $(WEB_EXT_API_KEY) --api-secret $(WEB_EXT_API_SECRET); true
web-ext-submit --channel unlisted --config-discovery false --api-key $(WEB_EXT_API_KEY) --api-secret $(WEB_EXT_API_SECRET)
make copyss
sleep 5
copyss:
cp web-ext-artifacts/*.xpi ./i2ppb@eyedeekay.github.io.xpi; true
cp web-ext-artifacts/*.xpi ../i2ppb@eyedeekay.github.io.xpi; true
##EVEN NUMBERED, MOZILLA-DISTRIBUTED VERSIONS HERE!
moz-submit: moz-version
@echo "Using the 'submit' target to instantly sign an extension for Mozilla distribution"
@echo "requires a JWT API Key and Secret from addons.mozilla.org to be made available"
@echo "to the Makefile under the variables WEB_EXT_API_KEY and WEB_EXT_API_SECRET."
mv manifest.json .manifest.json
grep -v update_url .manifest.json > manifest.json
web-ext sign --channel listed --config-discovery false --api-key $(WEB_EXT_API_KEY) --api-secret $(WEB_EXT_API_SECRET); true
sleep 5
mv .manifest.json manifest.json
rhz-submit: rhz-version
@echo "Rhizome releases are disabled while browser is completed."
@@ -197,7 +196,8 @@ rhz-submit: rhz-version
getxpi:
gothub download -t $(VERSION) -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -n i2ppb@eyedeekay.github.io.xpi
cp ./i2ppb@eyedeekay.github.io.xpi ./i2ppb-$(VERSION)@eyedeekay.github.io.xpi
mv ./i2ppb@eyedeekay.github.io.xpi ../i2ppb-$(VERSION)@eyedeekay.github.io.xpi
cp ../i2ppb-$(VERSION)@eyedeekay.github.io.xpi ../i2ppb@eyedeekay.github.io.xpi
torrent: getxpi
rm -f "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent"
@@ -238,7 +238,7 @@ torrent: getxpi
-n "i2ppb-$(VERSION)@eyedeekay.github.io.xpi" \
-o "i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" \
-w https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/$(VERSION)/i2ppb@eyedeekay.github.io.xpi \
i2ppb@eyedeekay.github.io.xpi; true
../i2ppb@eyedeekay.github.io.xpi; true
cp -v "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" "./i2ppb@eyedeekay.github.io.xpi.torrent"
make index
@@ -246,7 +246,7 @@ upload-torrent:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2ppb@eyedeekay.github.io.xpi.torrent" -f "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent"
upload-xpi:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2ppb@eyedeekay.github.io.xpi" -f "./i2ppb@eyedeekay.github.io.xpi"
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2ppb@eyedeekay.github.io.xpi" -f "../i2ppb@eyedeekay.github.io.xpi"
upload-deb:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psetproxy.js_$(VERSION)-1_amd64.deb" -f "../i2psetproxy.js_$(VERSION)-1_amd64.deb"
@@ -261,18 +261,22 @@ upload-docs:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t docs -n "Landing Page Documentation.pdf" -f ../smartlander.pdf
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t docs -n "Browser Design Documentation.pdf" -f ../browser.pdf
fmt:
fmt: fmt-css fmt-html fmt-js
fmt-css:
cleancss -O1 all -O2 all --format beautify home.css -o .home.css && mv .home.css home.css
cleancss -O1 all -O2 all --format beautify info.css -o .info.css && mv .info.css info.css
cleancss -O1 all -O2 all --format beautify search.css -o .search.css && mv .search.css search.css
cleancss -O1 all -O2 all --format beautify sidebar.css -o .sidebar.css && mv .sidebar.css sidebar.css
cleancss -O1 all -O2 all --format beautify options/options.css -o options/.options.css && mv options/.options.css options/options.css
fmt-html:
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes index.html > .index.html; mv .index.html index.html
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes window.html > .window.html; mv .window.html window.html
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes home.html > .home.html; mv .home.html home.html
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes toopie.html > .toopie.html; mv .toopie.html toopie.html
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes security.html > .security.html; mv .security.html security.html
tidy --as-xhtml --drop-empty-elements no --input-xml --tidy-mark no -indent --indent-spaces 4 -wrap 0 --new-blocklevel-tags article,header,footer --new-inline-tags video,audio,canvas,ruby,rt,rp --break-before-br yes --sort-attributes alpha --vertical-space yes options/options.html > options/.options.html; mv options/.options.html options/options.html
make fmt-js
fmt-js:
find . -path ./node_modules -prune -o -name '*.js' -exec prettier --write {} \;
@@ -283,19 +287,15 @@ lint:
gjslint *.js; true
#eslint --color *.js
deborig: fmt version
deborig: version
rm -rf ../i2psetproxy.js-$(VERSION)
cp -r . ../i2psetproxy.js-$(VERSION)
mkdir -p ../i2psetproxy.js-$(VERSION)
cp -r ./* ../i2psetproxy.js-$(VERSION)
cd ../i2psetproxy.js-$(VERSION) && \
rm -rf web-ext-artifacts && \
rm -rf web-ext-artifacts .git node_modules && \
tar \
-cvz \
--exclude=.git \
--exclude=i2psetproxy.js.gif \
--exclude=node_modules \
--exclude=web-ext-artifacts \
--exclude=*.xpi \
--exclude=*/*.xpi \
--exclude=*.pdf \
-f ../i2psetproxy.js_$(VERSION).orig.tar.gz \
.
@@ -310,16 +310,16 @@ dat:
rss: torrent
rm -f releases.diff
grep "$(MAGNET)" .releases.atom && false || true
mv releases.atom .releases.atom
wget https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases.atom
diff releases.atom .releases.atom | tee releases.diff
patch releases.atom <releases.diff
sed -i "s|<title>$(VERSION)</title>|<title>$(VERSION)</title>\n <enclosure url=\"$(MAGNET)\" type=\"application/x-bittorrent\" />|g" releases.atom
upload-rss:
upload-rss: rss
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t docs -n "releases.atom" -f releases.atom
upload-updatemanifest:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t docs -n "updateManifest.json" -f updateManifest.json
webext:
web-ext run -u "about:devtools-toolbox?type=extension&id=i2ppb%40eyedeekay.github.io"
@@ -327,4 +327,12 @@ snark-mirror:
http_proxy=http://127.0.0.1:4444 wget -c -O ../i2psnark-rpc.su3 http://stats.i2p/i2p/plugins/i2psnark-rpc.su3
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psnark-rpc.su3" -f ../i2psnark-rpc.su3
http_proxy=http://127.0.0.1:4444 wget -c -O ../i2psnark-rpc-update.su3 http://stats.i2p/i2p/plugins/i2psnark-rpc-update.su3
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psnark-rpc-update.su3" -f ../i2psnark-rpc-update.su3
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psnark-rpc-update.su3" -f ../i2psnark-rpc-update.su3
seed:
cp -v "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" "$(HOME)/.i2p/i2psnark"
cp -v "../i2ppb-$(VERSION)@eyedeekay.github.io.xpi" "$(HOME)/.i2p/i2psnark"
wire:
cp -v "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" "$(HOME)/i2p/MuWireDownloads/"
cp -v "../i2ppb-$(VERSION)@eyedeekay.github.io.xpi" "$(HOME)/i2p/MuWireDownloads/"

View File

@@ -101,6 +101,9 @@ Usage:
can.
* ![Visiting i2psnark](i2psnark.png)
* ![Monitoring torrents](transmissionrpc.png)
* [Started] Indicate the level of authenticity provided by TLS. TLS is
optional on I2P for now, but some sites offer it anyway. TLS support is
experimental and in the works.
* [barely started] **Isolate** traffic by contextual identity to it's own HTTP
Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The
contextual identities. For now, the contextual identities used to manage

View File

@@ -7,12 +7,16 @@
"message": "toopie.html",
"description": "Name of the sidebar."
},
"toopieTLS": {
"message": "Site Properties",
"description": "Name of the security panel."
},
"extensionDescription": {
"message": "Your browser is now set up to use I2P.",
"description": "Description of the extension."
},
"extensionVersion": {
"message": "0.57",
"message": "0.72",
"description": "Version of the extension."
},
"extensionStatus": {
@@ -199,6 +203,14 @@
"message": "Hidden Services Manager (Private)",
"description": "Preface for the browser titlebar"
},
"muwirePreface": {
"message": "MuWire",
"description": "Preface for the browser titlebar"
},
"muwirePrefacePrivate": {
"message": "MuWire (Private)",
"description": "Preface for the browser titlebar"
},
"resetMessage": {
"message": "Reset Tunnel",
"description": "Message for the Reset Tunnel button"
@@ -255,6 +267,30 @@
"message": "7657",
"description": "Port for the Router Console"
},
"isBase32": {
"message": "I2P Base32-Formatted Address",
"description": "Message for site info panel base32"
},
"isHostName": {
"message": "I2P Jump Hostname",
"description": "Message for the site info panel hostname"
},
"siteLabel": {
"message": "Address/Site Information:",
"description": "Label for i2p site info"
},
"certLabel": {
"message": "Certificate Information:",
"description": "Label for certificate info"
},
"certAbsent": {
"message": "This site is not using HTTPS. It is still verified cryptographically by I2P.",
"description": "Content for certificate info if absent"
},
"certPresent": {
"message": "This site is using HTTPS. HTTPS over I2P is experimental and requires self-signed certificates or alternate root authorites.",
"description": "Content for certificate info if present"
},
"protocolHandlerValue": {
"message": "http://127.0.0.1:7657/i2psnark/?nofilter_newURL=%s&action=Add&foo=Add+torrent",
"description": "Value for the magnet protocol handler"

View File

@@ -13,6 +13,7 @@ var tunnelprefpriv = chrome.i18n.getMessage("i2ptunnelPrefacePrivate");
var localpref = chrome.i18n.getMessage("localPreface");
var localprefpriv = chrome.i18n.getMessage("localPrefacePrivate");
var extensionpref = chrome.i18n.getMessage("extensionPreface");
var muwirepref = chrome.i18n.getMessage("muwirePreface");
function onContextsGot(contexts) {
var ids = [];
@@ -84,6 +85,15 @@ function onContextsGot(contexts) {
})
.then(onCreated, onNotCreated);
}
if (ids.indexOf(localpref) == -1) {
browser.contextualIdentities
.create({
name: muwirepref,
color: "turquoise",
icon: "gift"
})
.then(onCreated, onNotCreated);
}
}
function onContextsError() {
@@ -182,6 +192,12 @@ function themeWindow(window) {
}
});
}
browser.pageAction.setPopup({
tabId: tabInfo[0].id,
popup: "security.html"
});
//console.log("(background) tabinfo", tabInfo[0].id)
browser.pageAction.show(tabInfo[0].id);
} else if (context.name == routerpref) {
console.log("Active in Router Console window");
if (window.incognito) {
@@ -427,3 +443,53 @@ function handleUpdated(updateInfo) {
}
browser.theme.onUpdated.addListener(handleUpdated);
function handleClick() {
console.log("Opening page action");
browser.pageAction.openPopup();
}
browser.pageAction.onClicked.addListener(handleClick);
async function certCheck(details) {
if (details.url.startsWith("https")) {
console.log("(cert) https site", details.url);
} else {
return;
}
if (!details.url.includes(".i2p")) {
return;
}
var tabs = await browser.tabs.query({ active: true });
if (tabs == null) {
return;
}
console.log("(cert) checking cert", tabs);
for (tab in tabs) {
if (details.url == tabs[tab].url) {
console.log("(cert) right tab", tabs[tab].id);
try {
let securityInfo = await browser.webRequest.getSecurityInfo(
details.requestId,
{ certificateChain: true }
);
console.log("(cert) state is complete", securityInfo);
console.log("(cert) certificates", securityInfo.certificates);
} catch (error) {
console.error(error);
}
}
}
}
// Listen for onHeaderReceived for the target page.
// Set "blocking" and "responseHeaders".
browser.webRequest.onHeadersReceived.addListener(
certCheck,
{ urls: ["<all_urls>"] },
["blocking", "responseHeaders"]
);

View File

@@ -10,14 +10,14 @@ gettingInfo.then(got => {
if (port == "7644") {
let createRhizomeBookmark = browser.bookmarks.create({
url: "about:I2p",
title: "I2P Home Page",
title: "Home Page",
parentId: bookmarkToolbar[0].id
});
createRhizomeBookmark.then(onCreated);
} else {
let createBookmark = browser.bookmarks.create({
url: browser.runtime.getURL("home.html"),
title: "I2P Home Page",
title: "Home Page",
parentId: bookmarkToolbar[0].id
});
createBookmark.then(onCreated);
@@ -59,6 +59,33 @@ gettingInfo.then(got => {
gettingProxyInfo.then(gotProxyInfo);
}
}
function bookConsole(bookmarkItems) {
if (!bookmarkItems.length) {
function gotProxyInfo(info) {
let port = info.value.http.split(":")[1];
if (port == "7644") {
let createBookmark = browser.bookmarks.create({
url: "http://localhost:7657/home",
title: "I2P Console",
parentId: bookmarkToolbar[0].id
});
createBookmark.then(onCreated);
} else {
let createRhizomeBookmark = browser.bookmarks.create({
url: "http://" + control_host + ":" + control_port + "/home",
title: "I2P Console",
parentId: bookmarkToolbar[0].id
});
createRhizomeBookmark.then(onCreated);
}
}
console.log(
"(bookmarks) checking if we're running in an I2P Browser"
);
let gettingProxyInfo = browser.proxy.settings.get({});
gettingProxyInfo.then(gotProxyInfo);
}
}
function bookMail(bookmarkItems) {
if (!bookmarkItems.length) {
function gotProxyInfo(info) {
@@ -143,6 +170,11 @@ gettingInfo.then(got => {
title: "Web Mail"
});
b3.then(bookMail, onRejected);
var b4 = browser.bookmarks.search({
title: "I2P Console"
});
b4.then(bookConsole, onRejected);
}
var bt = browser.bookmarks.search({

52
cert.js Normal file
View File

@@ -0,0 +1,52 @@
function blankContent(id) {
let infoTitle = document.getElementById(id);
if (infoTitle === null) {
console.log("content error", id);
return;
}
infoTitle.textContent = "";
}
function contentUpdateById(id, message) {
let infoTitle = document.getElementById(id);
let messageContent = chrome.i18n.getMessage(message);
if (infoTitle === null) {
console.log("content error", id, messageContent);
return;
}
infoTitle.textContent = messageContent;
}
contentUpdateById("TypeLabel", "siteLabel");
contentUpdateById("CertLabel", "certLabel");
function tabCheck(tabInfo) {
// Information Section
console.log("(cert) checking tab");
var host = tabInfo[0].url.split(".i2p")[0] + ".i2p";
if (host.length < 51) {
contentUpdateById("AddressInfo", "isHostName");
} else {
if (host.endsWith("b32.i2p")) {
contentUpdateById("AddressInfo", "isBase32");
}
}
if (host.startsWith("https")) {
contentUpdateById("AddressCertInfo", "certPresent");
console.log("(cert) initiating request to check server cert");
fetch(host).then(response => {
console.log("Updating cert information", response);
});
} else {
contentUpdateById("AddressCertInfo", "certAbsent");
blankContent("SignedLabel");
}
}
function tabError(error) {
console.log(`Error: ${error}`);
}
const gettingCurrent = browser.tabs.query({ active: true });
gettingCurrent.then(tabCheck, tabError);

42
debian/changelog vendored
View File

@@ -1,9 +1,48 @@
i2psetproxy.js (0.71-1) UNRELEASED; urgency=low
* Fix incomplete bugfix from 0.69
-- idk <hankhill19580@gmail.com> Tue, 24 MAR 2020 0:19:59 -0400
i2psetproxy.js (0.69-1) UNRELEASED; urgency=low
* Add MuWire contextual ID
* Fix bug occurring on certain modded I2P installs
-- idk <hankhill19580@gmail.com> Tue, 24 MAR 2020 0:12:02 -0400
i2psetproxy.js (0.67-1) UNRELEASED; urgency=low
* Tweak some default settings that should have gone into 65
-- idk <hankhill19580@gmail.com> Tue, 17 MAR 2020 22:58:55 -0400
i2psetproxy.js (0.65-1) UNRELEASED; urgency=low
* Initial prototype of certs implementation
* Use "pinned apptabs" to minimize the number of tabs occupied by an app
* Get ready for self-hosted updates but with bittorrent because it's cooler
-- idk <hankhill19580@gmail.com> Tue, 17 MAR 2020 22:58:55 -0400
i2psetproxy.js (0.63-1) UNRELEASED; urgency=low
* other containerizers bugfix
-- idk <hankhill19580@gmail.com> Mon, 02 MAR 2020 17:54:26 -0400
i2psetproxy.js (0.61-1) UNRELEASED; urgency=low
* other containerizers bugfix
-- idk <hankhill19580@gmail.com> Mon, 02 MAR 2020 17:46:24 -0400
i2psetproxy.js (0.59-1) UNRELEASED; urgency=low
* transmission-rpc based torrent controls
* bugfixes
-- idk <hankhill19580@gmail.com> Tue, 25 FEB 2020 20:52:19 -0400
-- idk <hankhill19580@gmail.com> Tue, 25 FEB 2020 20:52:19 -0400
i2psetproxy.js (0.57-1) UNRELEASED; urgency=low
@@ -89,4 +128,3 @@ i2psetproxy.js (0.31-1) UNRELEASED; urgency=low
<nnnn is the bug number of your ITP>
-- idk <hankhill19580@gmail.com> Thu, 01 Aug 2019 00:32:39 -0400
T

6
debian/postinst vendored Normal file
View File

@@ -0,0 +1,6 @@
#! /bin/sh
ln -sf /usr/share/webext/i2ppb@eyedeekay.github.io \
/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/i2ppb@eyedeekay.github.io
touch /usr/share/webext/i2ppb@eyedeekay.github.io/manifest.json

25
debian/rules vendored
View File

@@ -3,26 +3,7 @@
%:
dh $@
export PREFIX=debian/i2psetproxy.js/usr
override_dh_auto_install:
mkdir -p $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io \
$$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol \
$$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent \
$$(pwd)/debian/i2psetproxy.js/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
cp -r ./icons/ $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp -r ./options/ $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp -r ./_locales/ $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./i2pcontrol/i2pcontrol.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol/
cp ./torrent/*.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/*.html $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/UNLICENSE $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./*.html $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.css $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.md $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.xpi $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.torrent $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.png $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./manifest.json $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./LICENSE $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
ln -sf $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io \
$$(pwd)/debian/i2psetproxy.js/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
make install

View File

@@ -1,7 +1,3 @@
i2psetproxy.js.gif
i2psetproxy.js@eyedeekay.github.io.xpi
i2ppb@eyedeekay.github.io.xpi
i2ppb-0.59@eyedeekay.github.io.xpi
web-ext-artifacts/i2p_in_private_browsing-0.51-an+fx.xpi
smartlander.pdf
browser.pdf

View File

@@ -1,6 +1,7 @@
function routerHost(url) {
let hostname = "";
let path = "";
console.log("(urlcheck)", url);
function pathcheck(str) {
if (str != undefined) {
let final = str.split("/")[0];
@@ -13,6 +14,9 @@ function routerHost(url) {
} else if (final === "webmail" || final === "susimail") {
console.log("(urlcheck) application path", final);
return "webmail";
} else if (final.startsWith("MuWire") && !final.includes("png")) {
console.log("(urlcheck) application path", final);
return "muwire";
} else if (
final === "home" ||
final === "console" ||

19
host.js
View File

@@ -8,6 +8,11 @@ function proxyHost(url) {
if (hostname == "proxy.i2p") {
return true;
}
if (
hostname == "c6lilt4cr5x7jifxridpkesf2zgfwqfchtp6laihr4pdqomq25iq.b32.i2p"
) {
return true;
}
return false;
}
@@ -57,6 +62,7 @@ function i2pHost(url) {
function routerHost(url) {
let hostname = "";
let path = "";
console.log("(urlcheck)", url);
function pathcheck(str) {
if (str != undefined) {
let final = str.split("/")[0];
@@ -73,10 +79,14 @@ function routerHost(url) {
} else if (final === "webmail" || final === "susimail") {
console.log("(urlcheck) application path", final);
return "webmail";
} else if (final.startsWith("MuWire") && !final.includes("png")) {
console.log("(urlcheck) application path", final);
return "muwire";
} else if (
final === "home" ||
final === "console" ||
final === "dns" ||
final === "sitemap" ||
final.startsWith("config")
) {
console.log("(urlcheck) application path", final);
@@ -97,16 +107,19 @@ function routerHost(url) {
path = url.replace(hostname + "/", "");
}
if (hostname === control_host + ":" + control_port) {
//console.log("(hostcheck) router console found on configured ports");
return pathcheck(path);
}
if (hostname === "localhost" + ":" + control_port) {
//console.log("(hostcheck) router console found on configured ports");
return pathcheck(path);
}
if (hostname === "127.0.0.1" + ":" + control_port) {
return pathcheck(path);
}
if (hostname === "localhost" + ":" + 7070) {
return pathcheck(path);
}
if (hostname === "127.0.0.1" + ":" + 7070) {
return pathcheck(path);
}
return false;
}

View File

@@ -1,4 +0,0 @@
d8:announce76:http://zviyq72xcmjupynn5y2f5qa3u7bxyu34jnqmwt6czte2l7idxm7q.b32.i2p/announce13:announce-listll76:http://zviyq72xcmjupynn5y2f5qa3u7bxyu34jnqmwt6czte2l7idxm7q.b32.i2p/announceel69:http://s5ikrdyjwbcgxmqetxb3nyheizftms7euacuub2hic7defkh3xhq.b32.i2p/ael76:http://uajd4nctepxpac4c4bdyrdw7qvja2a5u3x25otfhkptcjgd53ioq.b32.i2p/announceel69:http://w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa.b32.i2p/ael33:http://explodie.org:6969/announceel43:http://tracker.opentrackr.org:1337/announceel41:http://tracker.kamigami.org:2710/announceel49:http://tracker.internetwarriors.net:1337/announceel38:http://tracker.darli.net:6611/announceel43:http://tracker.corpscorp.online:80/announceel29:http://tracker.bz:80/announceel37:http://tracker.bt4g.com:2095/announceel42:http://retracker.sevstar.net:2710/announceel39:http://h4.trakx.nibba.trade:80/announceel36:http://www.proxmox.com:6969/announceel36:http://www.loushao.net:8080/announceel36:http://vps02.net.orel.ru:80/announceel39:http://tracker4.itzmx.com:2710/announceel39:http://tracker3.itzmx.com:6961/announceel39:http://tracker2.itzmx.com:6961/announceel39:http://tracker1.itzmx.com:8080/announceel42:http://tracker01.loveapp.com:6789/announceel42:http://tracker.zerobytes.xyz:1337/announceel41:http://tracker.yoshi210.com:6969/announceel41:http://tracker.torrentyorg.pl:80/announceel39:http://tracker.nyap2p.com:8080/announceel35:http://tracker.lelux.fi:80/announceel37:http://tracker.gbitt.info:80/announceel27:http://pow7.com:80/announceel42:http://opentracker.i2p.rocks:6969/announceel40:http://open.acgtracker.com:1096/announceel40:http://open.acgnxtracker.com:80/announceel37:http://mail2.zelenaya.net:80/announceel28:http://acg.rip:6699/announceee10:created by13:mktorrent 1.113:creation datei1578180361e4:infod6:lengthi4582809e4:name36:./i2ppb-0.55@eyedeekay.github.io.xpi12:piece lengthi262144e6:pieces360:%<25><05>/Ԭx<D4AC><78>Ɠ<EFBFBD><08><>4<EFBFBD>ա<EFBFBD>G<EFBFBD>B<15>Ҍ<EFBFBD>2Fi<04>'N<><4E>d<EFBFBD>C*P<>ה<EFBFBD>s6<1E><><EFBFBD>><3E>Pk<50><6B><EFBFBD><EFBFBD>E<EFBFBD>Ӄ<EFBFBD>j<1C><>@<19>
X<EFBFBD><EFBFBD><EFBFBD>?<3F>!†s<C286><73>k<EFBFBD><6B>m{<7B><><EFBFBD><EFBFBD><EFBFBD>*<2A><><EFBFBD>`<><16>0J<18><>%,<13><><EFBFBD>O
<EFBFBD>s˛Zs"
<EFBFBD>-<2D>J<EFBFBD><4A>?Y<><59><EFBFBD>ue<75>IuO6jnd<><64>*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29>K<1C><>Z<EFBFBD><5A>C<1A><><04><>0!<21><><EFBFBD><EFBFBD>"<22>SIv<><76>;[<5B><><EFBFBD><EFBFBD>Tі<54><D196>a5&<26>]A<19>dJ<64>Ou<4F>8<EFBFBD><38><0F><><1C>Ͳ<><CDB2>݃J<DD83><4A><11>(~Ыuҫ<75><D2AB><EFBFBD>i<EFBFBD>y{<7B>7<><17><>m<EFBFBD> <20>i:ʼn<><C589><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s;<3B><>F\p<><70><EFBFBD>S<05><><EFBFBD>a<EFBFBD><61><07><><EFBFBD><EFBFBD><>x<EFBFBD>~<7E><><EFBFBD>]\<5C>T6<>P<EFBFBD><50>*e<><11>S<EFBFBD>Vy

Binary file not shown.

Binary file not shown.

View File

@@ -44,7 +44,7 @@ Clearnet Bittorrent network(With a web seed to support it in case one goes
dead).</p>
<ul>
<li><a href="magnet:?xt=urn:btih:b54b5a7952a3984cb3178533e29eb3b8ad46921c">Magnet Link</a></li>
<li><a href="magnet:?xt=urn:btih:53abb58770d53c4bc5aeed19c72574fb2acf27a3">Magnet Link</a></li>
<li><a href="./i2ppb@eyedeekay.github.io.xpi.torrent">Get the .torrent file</a></li>
</ul>
@@ -111,6 +111,9 @@ adding them directly into the Firefox downloads drop-downs, menus, etc. If I
can.</li>
<li><img src="i2psnark.png" alt="Visiting i2psnark" title="" /></li>
<li><img src="transmissionrpc.png" alt="Monitoring torrents" title="" /></li>
<li>[Started] Indicate the level of authenticity provided by TLS. TLS is
optional on I2P for now, but some sites offer it anyway. TLS support is
experimental and in the works.</li>
<li>[barely started] <strong>Isolate</strong> traffic by contextual identity to it's own HTTP
Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The
contextual identities. For now, the contextual identities used to manage

View File

@@ -26,8 +26,8 @@
],
"manifest_version": 2,
"name": "__MSG_extensionName__",
"version": "0.59",
"version_name": "0.59",
"version": "0.72",
"version_name": "0.72",
"description": "__MSG_extensionDescription__",
"homepage_url": "https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox",
"icons": {
@@ -46,6 +46,19 @@
"default_panel": "toopie.html",
"open_at_install": false
},
"page_action": {
"browser_style": true,
"default_title": "__MSG_toopieTLS__",
"default_icon": "icons/toopie.png",
"show_matches": [
"http://*.i2p/*",
"https://*.i2p/*",
"http://*.b32.i2p/*",
"https://*.b32.i2p/*"
],
"default_panel": "security.html",
"pinned": true
},
"options_ui": {
"page": "options/options.html"
},

View File

@@ -319,36 +319,24 @@ function onError(e) {
}
function storeSettings() {
let proxy_scheme = getScheme();
let proxy_host = getHost();
let proxy_port = getPort();
let control_host = getControlHost();
let control_port = getControlPort();
let rpc_host = getRPCHost();
let rpc_port = getRPCPort();
let rpc_path = getRPCPath();
let rpc_pass = getRPCPass();
let bt_rpc_host = getBTRPCHost();
let bt_rpc_port = getBTRPCPort();
let bt_rpc_path = getBTRPCPath();
let bt_rpc_pass = getBTRPCPass();
let base_url =
let storableSettings = {};
storableSettings["proxy_scheme"] = getScheme();
storableSettings["proxy_host"] = getHost();
storableSettings["proxy_port"] = getPort();
storableSettings["control_host"] = getControlHost();
storableSettings["control_port"] = getControlPort();
storableSettings["rpc_host"] = getRPCHost();
storableSettings["rpc_port"] = getRPCPort();
storableSettings["rpc_path"] = getRPCPath();
storableSettings["rpc_pass"] = getRPCPass();
storableSettings["bt_rpc_host"] = getBTRPCHost();
storableSettings["bt_rpc_port"] = getBTRPCPort();
storableSettings["bt_rpc_path"] = getBTRPCPath();
storableSettings["bt_rpc_pass"] = getBTRPCPass();
storableSettings["base_url"] =
"http://" + bt_rpc_host + ":" + bt_rpc_port + "/" + bt_rpc_path;
chrome.storage.local.set({
proxy_scheme,
proxy_host,
proxy_port,
control_host,
control_port,
rpc_host,
rpc_port,
rpc_path,
rpc_pass,
bt_rpc_host,
bt_rpc_port,
bt_rpc_path,
bt_rpc_pass
});
console.log("storing", storableSettings);
chrome.storage.local.set(storableSettings);
}
function updateUI(restoredSettings) {

View File

@@ -342,7 +342,7 @@ function i2pHost(url) {
}
function onContextGotLog(contexts) {
if (contexts !== null) {
if (contexts != null) {
for (let context of contexts) {
console.log(context);
}

View File

@@ -12,7 +12,7 @@ chrome.privacy.network.networkPredictionEnabled.set({
value: false
});
chrome.privacy.network.webRTCIPHandlingPolicy.set({
value: "disable_non_proxied_udp"
value: "proxy_only"
});
function shouldProxyRequest(requestInfo) {
@@ -124,6 +124,18 @@ var handleContextProxyRequest = async function(requestDetails) {
};
return proxy;
}
if (requestDetails.originUrl == browser.runtime.getURL("security.html")) {
console.log(
"(proxy) extension security URL",
browser.runtime.getURL("security.html")
);
proxy = {
type: getScheme(),
host: getHost(),
port: getPort()
};
return proxy;
}
if (
requestDetails.cookieStoreId == "firefox-default" ||
requestDetails.cookieStoreId == "firefox-private"

View File

@@ -4,13 +4,130 @@
<link type="text/html" rel="alternate" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases"/>
<link type="application/atom+xml" rel="self" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases.atom"/>
<title>Release notes from I2P-in-Private-Browsing-Mode-Firefox</title>
<updated>2020-01-04T21:46:19Z</updated>
<updated>2020-03-18T04:30:01Z</updated>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.69</id>
<updated>2020-03-24T04:19:44Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.69"/>
<title>0.69</title>
<enclosure url="magnet:?xt=urn:btih:53abb58770d53c4bc5aeed19c72574fb2acf27a3" type="application/x-bittorrent" />
<content type="html">&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.69-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add MuWire contextual ID&lt;/li&gt;
&lt;li&gt;Fix bug occurring on certain modded I2P installs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Tue, 24 MAR 2020 0:12:02 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.67-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.67</id>
<updated>2020-03-18T04:27:30Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.67"/>
<title>0.67</title>
<content type="html">&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.67-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tweak some default settings that should have gone into 65&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Tue, 17 MAR 2020 22:58:55 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.65-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.65</id>
<updated>2020-03-18T03:01:20Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.65"/>
<title>0.65</title>
<content type="html">&lt;p&gt;Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.65-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Initial prototype of certs implementation&lt;/li&gt;
&lt;li&gt;Use &quot;pinned apptabs&quot; to minimize the number of tabs occupied by an app&lt;/li&gt;
&lt;li&gt;Get ready for self-hosted updates but with bittorrent because it&#39;s cooler&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Tue, 17 MAR 2020 22:58:55 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.63-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.63</id>
<updated>2020-03-02T23:01:58Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.63"/>
<title>0.63</title>
<content type="html">&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.63-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;other containerizers bugfix&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Mon, 02 MAR 2020 17:54:26 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.61-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.61</id>
<updated>2020-03-02T22:48:06Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.61"/>
<title>0.61</title>
<content type="html">&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.61-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;other containerizers bugfix&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Mon, 02 MAR 2020 17:46:24 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.59-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.59</id>
<updated>2020-02-26T03:10:23Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.59"/>
<title>0.59</title>
<content type="html">&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.59-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;transmission-rpc based torrent controls&lt;/li&gt;
&lt;li&gt;bugfixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Tue, 25 FEB 2020 20:52:19 -0400&lt;/p&gt;
&lt;p&gt;i2psetproxy.js (0.57-1) UNRELEASED; urgency=low&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.57</id>
<updated>2020-01-06T17:16:33Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.57"/>
<title>0.57</title>
<enclosure url="magnet:?xt=urn:btih:90f1cef9f03f802499ecd7e22226aae72ddaa9c0" type="application/x-bittorrent" />
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
@@ -83,105 +200,4 @@ i2psetproxy.js (0.51-1) UNRELEASED; urgency=low&lt;/p&gt;
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.51</id>
<updated>2020-01-06T17:18:09Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.51"/>
<title>0.51</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.49-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;fix tabs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Sat, 23 NOV 2019 22:51:11 -0400&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.49</id>
<updated>2020-01-06T17:18:38Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.49"/>
<title>0.49</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.49-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;fix tabs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Sat, 23 NOV 2019 22:51:11 -0400&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.47</id>
<updated>2020-01-06T17:19:14Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.47"/>
<title>0.47</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;br&gt;
i2psetproxy.js (0.47-1) UNRELEASED; urgency=low&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improve android compatibility&lt;/li&gt;
&lt;li&gt;Improve code organization&lt;/li&gt;
&lt;li&gt;Partial protocol handlers implementation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;-- idk &lt;a href=&quot;mailto:hankhill19580@gmail.com&quot;&gt;hankhill19580@gmail.com&lt;/a&gt; Sat, 23 NOV 2019 18:53:11 -0400&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.45</id>
<updated>2019-11-22T23:15:45Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.45"/>
<title>0.45</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.43</id>
<updated>2019-11-12T02:50:48Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.43"/>
<title>0.43</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
<entry>
<id>tag:github.com,2008:Repository/169256012/0.41</id>
<updated>2019-10-31T16:42:46Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.41"/>
<title>0.41</title>
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;
Browsing mode. It requires the use of a pre-installed I2P Router.&lt;/p&gt;</content>
<author>
<name>eyedeekay</name>
</author>
<media:thumbnail height="30" width="30" url="https://avatars3.githubusercontent.com/u/8733713?s=60&amp;v=4"/>
</entry>
</feed>

157
scrub.js
View File

@@ -6,6 +6,7 @@ var torrentpref = chrome.i18n.getMessage("torrentPreface");
var tunnelpref = chrome.i18n.getMessage("i2ptunnelPreface");
var localpref = chrome.i18n.getMessage("localPreface");
var extensionpref = chrome.i18n.getMessage("extensionPreface");
var muwirepref = chrome.i18n.getMessage("muwirePreface");
var contextScrub = async function(requestDetails) {
function onHeaderError() {
@@ -87,6 +88,54 @@ var contextScrub = async function(requestDetails) {
}
};
var notMyContextNotMyProblem = async function() {
var contexts = await browser.contextualIdentities.query({});
var context1 = await browser.contextualIdentities.query({
name: titlepref
});
var context2 = await browser.contextualIdentities.query({
name: routerpref
});
var context3 = await browser.contextualIdentities.query({
name: mailpref
});
var context4 = await browser.contextualIdentities.query({
name: torrentpref
});
var context5 = await browser.contextualIdentities.query({
name: tunnelpref
});
var context6 = await browser.contextualIdentities.query({
name: localpref
});
var context7 = await browser.contextualIdentities.query({
name: muwirepref
});
var othercontexts = [];
console.log("Contexts:", contexts);
for (context in contexts) {
if (
contexts[context].cookieStoreId == context1[0].cookieStoreId ||
contexts[context].cookieStoreId == context2[0].cookieStoreId ||
contexts[context].cookieStoreId == context3[0].cookieStoreId ||
contexts[context].cookieStoreId == context4[0].cookieStoreId ||
contexts[context].cookieStoreId == context5[0].cookieStoreId ||
contexts[context].cookieStoreId == context6[0].cookieStoreId ||
contexts[context].cookieStoreId == context7[0].cookieStoreId
) {
console.log(
"Context found",
contexts[context].cookieStoreId,
"is my responsibility"
);
} else {
//console.log("Context found", contexts[context].cookieStoreId, "is not my responsibility")
othercontexts.push(contexts[context]);
}
}
return othercontexts;
};
var contextSetup = function(requestDetails) {
function onContextError() {
console.log("Context launcher error");
@@ -108,6 +157,11 @@ var contextSetup = function(requestDetails) {
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
browser.pageAction.setPopup({
tabId: tabId.id,
popup: "security.html"
});
browser.pageAction.show(tabId.id);
}
closeOldTab(tab);
}
@@ -134,18 +188,26 @@ var contextSetup = function(requestDetails) {
if (tabId.cookieStoreId != context[0].cookieStoreId) {
function Create() {
function onCreated(tab) {
function closeOldTab() {
function closeOldTab(tabs) {
if (tabId.id != tab.id) {
console.log("(isolate) Closing un-isolated tab", tabId.id);
console.log("in favor of", tab.id);
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
for (index = 0; index < tabs.length; index++) {
if (index != tabs.length - 1)
browser.tabs.remove(tabs[index].id);
}
}
closeOldTab(tab);
var pins = browser.tabs.query({
cookieStoreId: context[0].cookieStoreId
});
pins.then(closeOldTab, onError);
}
var created = browser.tabs.create({
active: true,
pinned: true,
cookieStoreId: context[0].cookieStoreId,
url: requestDetails.url
});
@@ -167,18 +229,26 @@ var contextSetup = function(requestDetails) {
if (tabId.cookieStoreId != context[0].cookieStoreId) {
function Create() {
function onCreated(tab) {
function closeOldTab() {
function closeOldTab(tabs) {
if (tabId.id != tab.id) {
console.log("(isolate) Closing un-isolated tab", tabId.id);
console.log("in favor of", tab.id);
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
for (index = 0; index < tabs.length; index++) {
if (index != tabs.length - 1)
browser.tabs.remove(tabs[index].id);
}
}
closeOldTab(tab);
var pins = browser.tabs.query({
cookieStoreId: context[0].cookieStoreId
});
pins.then(closeOldTab, onError);
}
var created = browser.tabs.create({
active: true,
pinned: true,
cookieStoreId: context[0].cookieStoreId,
url: requestDetails.url
});
@@ -200,18 +270,67 @@ var contextSetup = function(requestDetails) {
if (tabId.cookieStoreId != context[0].cookieStoreId) {
function Create() {
function onCreated(tab) {
function closeOldTab() {
function closeOldTab(tabs) {
if (tabId.id != tab.id) {
console.log("(isolate) Closing un-isolated tab", tabId.id);
console.log("in favor of", tab.id);
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
for (index = 0; index < tabs.length; index++) {
if (index != tabs.length - 1)
browser.tabs.remove(tabs[index].id);
}
}
closeOldTab(tab);
var pins = browser.tabs.query({
cookieStoreId: context[0].cookieStoreId
});
pins.then(closeOldTab, onError);
}
var created = browser.tabs.create({
active: true,
pinned: true,
cookieStoreId: context[0].cookieStoreId,
url: requestDetails.url
});
created.then(onCreated, onContextError);
}
var gettab = browser.tabs.get(tabId.id);
gettab.then(Create, onContextError);
return tabId;
}
} catch (error) {
console.log("(isolate)Context Error", error);
}
};
var muwireTabFind = async function(tabId) {
try {
var context = await browser.contextualIdentities.query({
name: muwirepref
});
if (tabId.cookieStoreId != context[0].cookieStoreId) {
function Create() {
function onCreated(tab) {
function closeOldTab(tabs) {
if (tabId.id != tab.id) {
console.log("(isolate) Closing un-isolated tab", tabId.id);
console.log("in favor of", tab.id);
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
for (index = 0; index < tabs.length; index++) {
if (index != tabs.length - 1)
browser.tabs.remove(tabs[index].id);
}
}
var pins = browser.tabs.query({
cookieStoreId: context[0].cookieStoreId
});
pins.then(closeOldTab, onError);
}
var created = browser.tabs.create({
active: true,
pinned: true,
cookieStoreId: context[0].cookieStoreId,
url: requestDetails.url
});
@@ -233,18 +352,26 @@ var contextSetup = function(requestDetails) {
if (tabId.cookieStoreId != context[0].cookieStoreId) {
function Create() {
function onCreated(tab) {
function closeOldTab() {
function closeOldTab(tabs) {
if (tabId.id != tab.id) {
console.log("(isolate) Closing un-isolated tab", tabId.id);
console.log("in favor of", tab.id);
console.log("with context", tab.cookieStoreId);
browser.tabs.remove(tabId.id);
}
for (index = 0; index < tabs.length; index++) {
if (index != tabs.length - 1)
browser.tabs.remove(tabs[index].id);
}
}
closeOldTab(tab);
var pins = browser.tabs.query({
cookieStoreId: context[0].cookieStoreId
});
pins.then(closeOldTab, onError);
}
var created = browser.tabs.create({
active: true,
pinned: true,
cookieStoreId: context[0].cookieStoreId,
url: requestDetails.url
});
@@ -302,11 +429,20 @@ var contextSetup = function(requestDetails) {
var localcontext = await browser.contextualIdentities.query({
name: localpref
});
var othercontexts = await notMyContextNotMyProblem();
var nmp = false;
for (context in othercontexts) {
if (tabId.cookieStoreId == othercontexts[context].cookieStoreId) {
console.log("Not my problem");
nmp = true;
}
}
if (
tabId.cookieStoreId == "firefox-default" ||
tabId.cookieStoreId == "firefox-private" ||
tabId.cookieStoreId == anoncontext[0].cookieStoreId ||
tabId.cookieStoreId == localcontext[0].cookieStoreId
tabId.cookieStoreId == localcontext[0].cookieStoreId ||
nmp
) {
console.log(
"(ISOLATE)",
@@ -405,6 +541,9 @@ var contextSetup = function(requestDetails) {
} else if (routerhost === "webmail") {
var mailtab = tab.then(mailTabFind, onContextError);
return requestDetails;
} else if (routerhost === "muwire") {
var routertab = tab.then(muwireTabFind, onContextError);
return requestDetails;
} else if (routerhost === "routerconsole") {
var routertab = tab.then(routerTabFind, onContextError);
return requestDetails;

56
security.html Normal file
View File

@@ -0,0 +1,56 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link href="search.css" rel="stylesheet">
<link href="home.css" rel="stylesheet">
<link href="info.css" rel="stylesheet"><!--<link href="torrent/popup.css" rel="stylesheet">-->
<title>
</title>
</head>
<body>
<div id="browserpanel">
<div class="panel">
<div class="section-header panel-section panel-section-header" id="headline">
<div class="text-section-header" id="text-section-header">
<h1 id="text-section-header">I2P Site Properties</h1>
</div>
</div>
</div>
<div class="panel">
<ul>
<li>
<div class="address-info">
<div id="addresstype">
<span id="TypeLabel">Address Type:</span> <span id="Type"></span>
<div id="TypeInfo">
<span id="AddressInfo"></span>
</div>
</div>
</div>
</li>
<li>
<div class="tls-info">
<div id="sitecert">
<span id="CertLabel">Certificate Information:</span> <span id="Cert"></span>
<div id="CertInfo">
<span id="AddressCertInfo"></span>
</div>
</div>
</div>
</li>
<li>
<div id="signingcert">
<span id="SignedLabel">Signed By:</span> <span id="Signed"></span>
</div>
</li>
</ul>
</div>
</div>
<script src="cert.js"></script>
</body>
</html>