From 4615513bb28fb516641e54475d15988e0322e7ae Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:25:19 -0500 Subject: [PATCH 01/15] readme update --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 420fd21..d5fe0a7 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,12 @@ and then you can install it with: ![Video of the plugin in action](i2psetproxy.js.gif) +Documents +------------ + +[Smart Lander Design](smartlander.pdf) +[Browser Outline](browser.pdf) + Super Extra Important Background Info: -------------------------------------- From 64c5c05b82bdf23e531f0dbd383d4fe61a18b338 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:26:21 -0500 Subject: [PATCH 02/15] update page --- index.html | 152 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 101 insertions(+), 51 deletions(-) diff --git a/index.html b/index.html index 3da523a..519c594 100644 --- a/index.html +++ b/index.html @@ -1,42 +1,33 @@ i2psetproxy.js -WebExtension that does extended configuration of a dedicated I2P browser. While -experimental, it's capable of enforcing the use of the I2P Proxy without -needing to touch about:config and disables several -fingerprinting/de-anonymization vectors on it's own. It is also the easiest way -to configure an I2P browser on Android without requiring the user to root their -device. - -The Old Version - -New versions of this extension create an I2P in Private Browsing mode instead. -Since this is a drastic change to the behavior of the old plugin, a new entry -for the new plugin has been made at a new location on addons.mozilla.org. - - - -Android usage: - -Open the following link -Github Releases Version -in the browser you want to use for I2P. Firefox will warn you that it is about -to install an extension and indicate the permissions required. Read them over -and when you're ready, accept them. That's all it should take, your browser is -now configured to use I2P. +This is an Experimental webextension which introduces a set of new "Private +Browsing" modes to Firefox-based browsers(Supporting webextensions) that makes +it easier to configure a browser to use I2P securely and adds features for +making I2P applications easier to use. It does this by isolating I2P-specific +settings to Contextual Identities within Firefox, then loading them +automatically when the user requests them. It also adds convenience and +management features specific to I2P like protocol handlers and native messaging +systems. addons.mozilla.org -If you would prefer to recieve automatic updates from AMO, the correct product -page for this plugin is -I2P In Private Browsing. -This absolutely requires a working outproxy. If you want to avoid the use of AMO -for updates, you can download the identical plugin from this repository's -releases page. The latest AMO Plugin will always be identical to the latest -github release, except for the version number, which must be incremented for -submission to AMO. +For desktop users this addon is available from addons.mozilla.org, where you +will be able to recive automatic updates: +https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/. + +Debian usage: + +Should you prefer, it is possible to install this extension system-wide by +side-loading it into Debian. You can generate your own deb file by running the +command: + +
    make deb
+
+ +and then you can install it with: + +
    sudo apt install ../i2psetproxy.js_*.deb
+
Features @@ -45,39 +36,67 @@ submission to AMO. (container). Intercept requests to .i2p domains and automatically route them to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to -another container. -
  • [done/wip] Indicate the I2P browser is in use visually. Find an -acceptable way to indicate it on Android.
  • +another container. + +
  • [done] Indicate the I2P browser is in use visually. Find an +acceptable way to indicate it on Android. +
      +
  • [done] Set the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP)
  • -
  • [done/wip] Disable risky webRTC features/offer the option to re-enable +
  • [done] Disable risky webRTC features/offer the option to re-enable them with the proxy enforced.
  • [done] Change the color of the browser window to indicate that I2P is in -use
  • -
  • [done-ish] Reset the HTTP Proxy tunnel to generate a new destination -on-demand +use
  • -
  • [ready] Provide help in a variety of languages.
  • +
  • [ready/broken/wip] Provide help in a variety of languages.
  • [wip] Monitor the health and readiness of the I2P router it is -instructed to use.
  • -
  • [1/2] Handle router console applications under their own origins and +instructed to use. Currently the plugin checks whether the HTTP Proxy is +working by fetching an image from "http://proxy.i2p" and displaying a result. +A work-in-progress binding to i2pcontrol is available in ./i2pcontrol, it is +inert at this time.
  • +
  • [Done] Handle router console applications under their own origins and within their own contextual identity. (1) The router console is automatically confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router -console URL's and placing applications under their own origin.
  • -
  • [not started] Handle Torrents by talking to i2psnark-rpc plugin and then +console URL's and placing applications under their own origin. +
      +
  • +
  • [wip] Handle Torrents by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I -can.
  • +can. Right now instead of talking to snark-rpc, it uses a web-based protocl +handler that simply auto-fills the torrent into i2psnark. + +
  • [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 +browsing are "I2P Browsing" and "Web Browsing" where I2P Browsing is capable +of using an outproxy but in the case of traffic destined for the clearnet +does not do header rewriting, and Web Browsing falls back to the Proxy +configured in Firefox. The I2P Browsing will be expanded to +
      +
    • I2P Amnesiac Browsing: Use for General Browsing, stores no history and +uses an HTTP Proxy with a very short tunnel-close timeout and no key-reuse.
    • +
    • I2P Social Networking: Use this for logging into social network accounts, +forums, and other interactive asynchronous public communication platforms +where your identity is behaviorally linkable. This has a very long +tunnel-close timeout and key-reuse until specifically invoked.
    • +
    • I2P Blogging: Use this for posting content to the web interface of your +blog or to other similar websites that you create content on.
    • +
  • -Screenshot +Video +Documents + +Smart Lander Design +Browser Outline Super Extra Important Background Info: @@ -104,3 +123,34 @@ Project uplift seems to have largely been accomplished?
  • https://trac.torproject.org/projects/tor/wiki/org/meetings/2018Rome/Notes/FusionProject
  • https://blog.torproject.org/tor-heart-firefox
  • + +The Old Version + +New versions of this extension create an I2P in Private Browsing mode instead. +Since this is a drastic change to the behavior of the old plugin, a new entry +for the new plugin has been made at a new location on addons.mozilla.org. + + + +Android usage: + +Open the following link +Github Releases Version +in the browser you want to use for I2P. Firefox will warn you that it is about +to install an extension and indicate the permissions required. Read them over +and when you're ready, accept them. That's all it should take, your browser is +now configured to use I2P. + +Android addons.mozilla.org(Temporarily Disabled) + +If you would prefer to recieve automatic updates from AMO, the correct product +page for this plugin is +I2P In Private Browsing. +This absolutely requires a working outproxy. If you want to avoid the use of AMO +for updates, you can download the identical plugin from this repository's +releases page. The latest AMO Plugin will always be identical to the latest +github release, except for the version number, which must be incremented for +submission to AMO. From 185467937ca46950e298fa78de1c63319a5cc6f0 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:28:25 -0500 Subject: [PATCH 03/15] update page --- Makefile | 13 ++++++++++++- index.html | 7 +++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index b74bfae..163ec5f 100644 --- a/Makefile +++ b/Makefile @@ -60,7 +60,18 @@ amo-readme: sed 's|||g' | \ sed 's|

    ||g' | \ sed 's|

    ||g' | \ - grep -v ' index.html + grep -v ' amo-index.html + +index: + markdown README.md | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' | \ + sed 's|

    ||g' > index.html xpi: #wget -O ../i2ppb@eyedeekay.github.io.xpi \ diff --git a/index.html b/index.html index 519c594..ba256c1 100644 --- a/index.html +++ b/index.html @@ -38,10 +38,12 @@ to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to another container.
      +
    • Visiting i2p-projekt.i2p
  • [done] Indicate the I2P browser is in use visually. Find an acceptable way to indicate it on Android.
      +
    • Visiting webmail
  • [done] Set the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, @@ -51,6 +53,7 @@ them with the proxy enforced.
  • [done] Change the color of the browser window to indicate that I2P is in use
      +
    • Visiting i2ptunnel
  • [ready/broken/wip] Provide help in a variety of languages.
  • [wip] Monitor the health and readiness of the I2P router it is @@ -64,12 +67,14 @@ confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router console URL's and placing applications under their own origin.
      +
    • Visiting routerconsole
  • [wip] Handle Torrents by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl handler that simply auto-fills the torrent into i2psnark.
      +
    • Visiting i2psnark
  • [barely started] Isolate traffic by contextual identity to it's own HTTP Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The @@ -88,10 +93,12 @@ tunnel-close timeout and key-reuse until specifically invoked.
  • I2P Blogging: Use this for posting content to the web interface of your blog or to other similar websites that you create content on.
  • +
  • Visiting clearweb
  • Video +Video of the plugin in action Documents From 2fb1d71ae95f96e0026f892a63ff0bb9f34cdd78 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:32:57 -0500 Subject: [PATCH 04/15] update page --- README.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d5fe0a7..62dbe45 100644 --- a/README.md +++ b/README.md @@ -90,8 +90,11 @@ and then you can install it with: Documents ------------ -[Smart Lander Design](smartlander.pdf) -[Browser Outline](browser.pdf) + * **[Browser Outline](browser.pdf)**: This document is an outline of each of + the browser extension's feature panels in presentation form. + * **[Smart Lander Design](smartlander.pdf)**: This is the original outline of + the smart landing page which became the I2P home page within the browser and + the drop-down control panel. Super Extra Important Background Info: -------------------------------------- From 3a52c4e2a6d784914c4173f447c6cb68b6087bc7 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:33:15 -0500 Subject: [PATCH 05/15] update readme, pages --- index.html | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index ba256c1..8ee3ff4 100644 --- a/index.html +++ b/index.html @@ -102,8 +102,13 @@ blog or to other similar websites that you create content on. Documents -Smart Lander Design -Browser Outline +
      +
    • Browser Outline: This document is an outline of each of +the browser extension's feature panels in presentation form.
    • +
    • Smart Lander Design: This is the original outline of +the smart landing page which became the I2P home page within the browser and +the drop-down control panel.
    • +
    Super Extra Important Background Info: From 6a8a9039c992250dc688a66516f9ed52294bcd99 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:36:18 -0500 Subject: [PATCH 06/15] update readme, pages --- Makefile | 10 +-------- index.html | 62 +++++++++++++++++++++++++++--------------------------- 2 files changed, 32 insertions(+), 40 deletions(-) diff --git a/Makefile b/Makefile index 163ec5f..538769e 100644 --- a/Makefile +++ b/Makefile @@ -63,15 +63,7 @@ amo-readme: grep -v ' amo-index.html index: - markdown README.md | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' | \ - sed 's|

    ||g' > index.html + markdown README.md > index.html xpi: #wget -O ../i2ppb@eyedeekay.github.io.xpi \ diff --git a/index.html b/index.html index 8ee3ff4..e46717a 100644 --- a/index.html +++ b/index.html @@ -1,35 +1,35 @@ -i2psetproxy.js +

    i2psetproxy.js

    -This is an Experimental webextension which introduces a set of new "Private +

    This is an Experimental webextension which introduces a set of new "Private Browsing" modes to Firefox-based browsers(Supporting webextensions) that makes it easier to configure a browser to use I2P securely and adds features for making I2P applications easier to use. It does this by isolating I2P-specific settings to Contextual Identities within Firefox, then loading them automatically when the user requests them. It also adds convenience and management features specific to I2P like protocol handlers and native messaging -systems. +systems.

    -addons.mozilla.org +

    addons.mozilla.org

    -For desktop users this addon is available from addons.mozilla.org, where you +

    For desktop users this addon is available from addons.mozilla.org, where you will be able to recive automatic updates: -https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/. +https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/.

    -Debian usage: +

    Debian usage:

    -Should you prefer, it is possible to install this extension system-wide by +

    Should you prefer, it is possible to install this extension system-wide by side-loading it into Debian. You can generate your own deb file by running the -command: +command:

        make deb
     
    -and then you can install it with: +

    and then you can install it with:

        sudo apt install ../i2psetproxy.js_*.deb
     
    -Features +

    Features

    • [done] Provide a way to launch into an I2P-Specific contextual identity @@ -96,11 +96,11 @@ blog or to other similar websites that you create content on.
    • Visiting clearweb
    -Video +

    Video

    -Video of the plugin in action +

    Video of the plugin in action

    -Documents +

    Documents

    • Browser Outline: This document is an outline of each of @@ -110,13 +110,13 @@ the smart landing page which became the I2P home page within the browser and the drop-down control panel.
    -Super Extra Important Background Info: +

    Super Extra Important Background Info:

    -This plugin's viability is directly related to the viability of Mozilla and +

    This plugin's viability is directly related to the viability of Mozilla and Tor's work on hardening Firefox itself and of particular interest are the -"Uplift" and "Fusion(Firefox Using Onions)" projects. +"Uplift" and "Fusion(Firefox Using Onions)" projects.

    -Links about Project Uplift +

    Links about Project Uplift

    • https://wiki.mozilla.org/Security/Tor_Uplift
    • @@ -126,9 +126,9 @@ Tor's work on hardening Firefox itself and of particular interest are the
    • https://wiki.mozilla.org/Security/Tor_Uplift/Tracking
    -Project uplift seems to have largely been accomplished? +

    Project uplift seems to have largely been accomplished?

    -Links about Project Fusion +

    Links about Project Fusion

    • https://wiki.mozilla.org/Security/Fusion
    • @@ -136,33 +136,33 @@ Project uplift seems to have largely been accomplished?
    • https://blog.torproject.org/tor-heart-firefox
    -The Old Version +

    The Old Version

    -New versions of this extension create an I2P in Private Browsing mode instead. +

    New versions of this extension create an I2P in Private Browsing mode instead. Since this is a drastic change to the behavior of the old plugin, a new entry -for the new plugin has been made at a new location on addons.mozilla.org. +for the new plugin has been made at a new location on addons.mozilla.org.

      -
    • This is the new version: [link]
    • -
    • This is the old version: [link]
    • +
    • This is the new version: [link]

    • +
    • This is the old version: [link]

    -Android usage: +

    Android usage:

    -Open the following link +

    Open the following link Github Releases Version in the browser you want to use for I2P. Firefox will warn you that it is about to install an extension and indicate the permissions required. Read them over and when you're ready, accept them. That's all it should take, your browser is -now configured to use I2P. +now configured to use I2P.

    -Android addons.mozilla.org(Temporarily Disabled) +

    Android addons.mozilla.org(Temporarily Disabled)

    -If you would prefer to recieve automatic updates from AMO, the correct product +

    If you would prefer to recieve automatic updates from AMO, the correct product page for this plugin is I2P In Private Browsing. This absolutely requires a working outproxy. If you want to avoid the use of AMO for updates, you can download the identical plugin from this repository's releases page. The latest AMO Plugin will always be identical to the latest github release, except for the version number, which must be incremented for -submission to AMO. +submission to AMO.

    From 2b69ff05cfcaa96b42bdb840c85f844030ef1169 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:42:02 -0500 Subject: [PATCH 07/15] update readme, pages --- Makefile | 10 +++++++++- index.html | 7 +++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 538769e..95b69cb 100644 --- a/Makefile +++ b/Makefile @@ -63,7 +63,15 @@ amo-readme: grep -v ' amo-index.html index: - markdown README.md > index.html + @echo "" > index.html + @echo "" >> index.html + @echo "" >> index.html + @echo " I2P in Private Browsing Mode" >> index.html + @echo " " >> index.html + @echo "" >> index.html + markdown README.md >> index.html + @echo "" >> index.html + xpi: #wget -O ../i2ppb@eyedeekay.github.io.xpi \ diff --git a/index.html b/index.html index e46717a..849f27d 100644 --- a/index.html +++ b/index.html @@ -1,3 +1,9 @@ + + + + I2P in Private Browsing Mode + +

    i2psetproxy.js

    This is an Experimental webextension which introduces a set of new "Private @@ -166,3 +172,4 @@ for updates, you can download the identical plugin from this repository's releases page. The latest AMO Plugin will always be identical to the latest github release, except for the version number, which must be incremented for submission to AMO.

    + From 52ba8fa83717aa301f4649521cbb52143ef53c70 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:44:44 -0500 Subject: [PATCH 08/15] update readme, pages --- home.css | 3 +++ 1 file changed, 3 insertions(+) diff --git a/home.css b/home.css index 1f4f934..ee264d3 100644 --- a/home.css +++ b/home.css @@ -275,6 +275,9 @@ li { visibility: visible; opacity: 1 } +img { + max-width: 100%; +} img.readyness { height: 100%; width: auto From 08639cbf43333e0e0d4e47439de3831306261236 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 13:46:09 -0500 Subject: [PATCH 09/15] update readme, pages --- README.md | 10 +++++----- index.html | 20 +++++--------------- 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 62dbe45..7a951ac 100644 --- a/README.md +++ b/README.md @@ -37,10 +37,10 @@ and then you can install it with: to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to another container. - - ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) + * ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) * [done] **Indicate** the I2P browser is in use visually. Find an acceptable way to indicate it on Android. - - ![Visiting webmail](susimail.png) + * ![Visiting webmail](susimail.png) * [done] **Set** the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP) @@ -48,7 +48,7 @@ and then you can install it with: them with the proxy enforced. * [done] **Change** the color of the browser window to indicate that I2P is in use - - ![Visiting i2ptunnel](i2ptunnel.png) + * ![Visiting i2ptunnel](i2ptunnel.png) * [ready/broken/wip] **Provide** help in a variety of languages. * [wip] **Monitor** the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -60,12 +60,12 @@ and then you can install it with: confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router console URL's and placing applications under their own origin. - - ![Visiting routerconsole](routerconsole.png) + * ![Visiting routerconsole](routerconsole.png) * [wip] **Handle Torrents** by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl handler that simply auto-fills the torrent into i2psnark. - - ![Visiting i2psnark](i2psnark.png) + * ![Visiting i2psnark](i2psnark.png) * [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 diff --git a/index.html b/index.html index 849f27d..a047ce5 100644 --- a/index.html +++ b/index.html @@ -42,25 +42,19 @@ command:

    (container). Intercept requests to .i2p domains and automatically route them to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to -another container. -
      +another container.
    • Visiting i2p-projekt.i2p
    • -
  • [done] Indicate the I2P browser is in use visually. Find an -acceptable way to indicate it on Android. -
      +acceptable way to indicate it on Android.
    • Visiting webmail
    • -
  • [done] Set the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP)
  • [done] Disable risky webRTC features/offer the option to re-enable them with the proxy enforced.
  • [done] Change the color of the browser window to indicate that I2P is in -use -
      +use
    • Visiting i2ptunnel
    • -
  • [ready/broken/wip] Provide help in a variety of languages.
  • [wip] Monitor the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -71,17 +65,13 @@ inert at this time.
  • within their own contextual identity. (1) The router console is automatically confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router -console URL's and placing applications under their own origin. -
      +console URL's and placing applications under their own origin.
    • Visiting routerconsole
    • -
  • [wip] Handle Torrents by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl -handler that simply auto-fills the torrent into i2psnark. -
      +handler that simply auto-fills the torrent into i2psnark.
    • Visiting i2psnark
    • -
  • [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 From fd5364ab8e4c2a37131f25f3d06925a21c030f7a Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 14:03:01 -0500 Subject: [PATCH 10/15] update readme, pages --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 95b69cb..61c6df1 100644 --- a/Makefile +++ b/Makefile @@ -94,7 +94,7 @@ rhz-version: 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* -zip: version +zip: fmt version zip --exclude="./i2ppb@eyedeekay.github.io.xpi" \ --exclude="./i2psetproxy.js@eyedeekay.github.io.xpi" \ --exclude="./i2psetproxy.js.png" \ @@ -182,7 +182,7 @@ fmt: lint: eslint --color *.js -deborig: version +deborig: fmt version rm -rf ../i2psetproxy.js-$(VERSION) cp -r . ../i2psetproxy.js-$(VERSION) cd ../i2psetproxy.js-$(VERSION) From 2aba15f280a7b6c03f8f836e4cdfaff4093f716d Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 15:25:16 -0500 Subject: [PATCH 11/15] update readme, pages --- README.md | 21 ++++++--------------- index.html | 30 ++++++++++++++++-------------- 2 files changed, 22 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 7a951ac..01b6aee 100644 --- a/README.md +++ b/README.md @@ -37,10 +37,10 @@ and then you can install it with: to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to another container. - * ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) + - ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) * [done] **Indicate** the I2P browser is in use visually. Find an acceptable way to indicate it on Android. - * ![Visiting webmail](susimail.png) + - ![Visiting webmail](susimail.png) * [done] **Set** the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP) @@ -48,7 +48,7 @@ and then you can install it with: them with the proxy enforced. * [done] **Change** the color of the browser window to indicate that I2P is in use - * ![Visiting i2ptunnel](i2ptunnel.png) + - ![Visiting i2ptunnel](i2ptunnel.png) * [ready/broken/wip] **Provide** help in a variety of languages. * [wip] **Monitor** the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -60,12 +60,12 @@ and then you can install it with: confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router console URL's and placing applications under their own origin. - * ![Visiting routerconsole](routerconsole.png) + - ![Visiting routerconsole](routerconsole.png) * [wip] **Handle Torrents** by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl handler that simply auto-fills the torrent into i2psnark. - * ![Visiting i2psnark](i2psnark.png) + - ![Visiting i2psnark](i2psnark.png) * [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 @@ -85,16 +85,7 @@ and then you can install it with: ### Video -![Video of the plugin in action](i2psetproxy.js.gif) - -Documents ------------- - - * **[Browser Outline](browser.pdf)**: This document is an outline of each of - the browser extension's feature panels in presentation form. - * **[Smart Lander Design](smartlander.pdf)**: This is the original outline of - the smart landing page which became the I2P home page within the browser and - the drop-down control panel. + * ![Video of the plugin in action](i2psetproxy.js.gif) Super Extra Important Background Info: -------------------------------------- diff --git a/index.html b/index.html index a047ce5..243ffe4 100644 --- a/index.html +++ b/index.html @@ -42,19 +42,25 @@ command:

    (container). Intercept requests to .i2p domains and automatically route them to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to -another container.
  • +another container. +
    • Visiting i2p-projekt.i2p
    • +
  • [done] Indicate the I2P browser is in use visually. Find an -acceptable way to indicate it on Android.
  • +acceptable way to indicate it on Android. +
    • Visiting webmail
    • +
  • [done] Set the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP)
  • [done] Disable risky webRTC features/offer the option to re-enable them with the proxy enforced.
  • [done] Change the color of the browser window to indicate that I2P is in -use
  • +use +
    • Visiting i2ptunnel
    • +
  • [ready/broken/wip] Provide help in a variety of languages.
  • [wip] Monitor the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -65,13 +71,17 @@ inert at this time.
  • within their own contextual identity. (1) The router console is automatically confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router -console URL's and placing applications under their own origin. +console URL's and placing applications under their own origin. +
    • Visiting routerconsole
    • +
  • [wip] Handle Torrents by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl -handler that simply auto-fills the torrent into i2psnark.
  • +handler that simply auto-fills the torrent into i2psnark. +
    • Visiting i2psnark
    • +
  • [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 @@ -94,16 +104,8 @@ blog or to other similar websites that you create content on.
  • Video

    -

    Video of the plugin in action

    - -

    Documents

    -
      -
    • Browser Outline: This document is an outline of each of -the browser extension's feature panels in presentation form.
    • -
    • Smart Lander Design: This is the original outline of -the smart landing page which became the I2P home page within the browser and -the drop-down control panel.
    • +
    • Video of the plugin in action

    Super Extra Important Background Info:

    From 5b9c706cc9711b391d5c73409813b801f4c86809 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 15:28:14 -0500 Subject: [PATCH 12/15] update readme, pages --- README.md | 19 ++++++++++++++----- index.html | 30 +++++++++++++++--------------- 2 files changed, 29 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 01b6aee..d3ecb69 100644 --- a/README.md +++ b/README.md @@ -37,10 +37,10 @@ and then you can install it with: to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to another container. - - ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) + * ![Visiting i2p-projekt.i2p](i2psetproxy.js.png) * [done] **Indicate** the I2P browser is in use visually. Find an acceptable way to indicate it on Android. - - ![Visiting webmail](susimail.png) + * ![Visiting webmail](susimail.png) * [done] **Set** the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP) @@ -48,7 +48,7 @@ and then you can install it with: them with the proxy enforced. * [done] **Change** the color of the browser window to indicate that I2P is in use - - ![Visiting i2ptunnel](i2ptunnel.png) + * ![Visiting i2ptunnel](i2ptunnel.png) * [ready/broken/wip] **Provide** help in a variety of languages. * [wip] **Monitor** the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -60,12 +60,12 @@ and then you can install it with: confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router console URL's and placing applications under their own origin. - - ![Visiting routerconsole](routerconsole.png) + * ![Visiting routerconsole](routerconsole.png) * [wip] **Handle Torrents** by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl handler that simply auto-fills the torrent into i2psnark. - - ![Visiting i2psnark](i2psnark.png) + * ![Visiting i2psnark](i2psnark.png) * [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 @@ -87,6 +87,15 @@ and then you can install it with: * ![Video of the plugin in action](i2psetproxy.js.gif) +Documents +------------ + + * **[Browser Outline](browser.pdf)**: This document is an outline of each of + the browser extension's feature panels in presentation form. + * **[Smart Lander Design](smartlander.pdf)**: This is the original outline of + the smart landing page which became the I2P home page within the browser and + the drop-down control panel. + Super Extra Important Background Info: -------------------------------------- diff --git a/index.html b/index.html index 243ffe4..c47d874 100644 --- a/index.html +++ b/index.html @@ -42,25 +42,19 @@ command:

    (container). Intercept requests to .i2p domains and automatically route them to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to -another container. -
      +another container.
    • Visiting i2p-projekt.i2p
    • -
  • [done] Indicate the I2P browser is in use visually. Find an -acceptable way to indicate it on Android. -
      +acceptable way to indicate it on Android.
    • Visiting webmail
    • -
  • [done] Set the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP)
  • [done] Disable risky webRTC features/offer the option to re-enable them with the proxy enforced.
  • [done] Change the color of the browser window to indicate that I2P is in -use -
      +use
    • Visiting i2ptunnel
    • -
  • [ready/broken/wip] Provide help in a variety of languages.
  • [wip] Monitor the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is @@ -71,17 +65,13 @@ inert at this time.
  • within their own contextual identity. (1) The router console is automatically confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router -console URL's and placing applications under their own origin. -
      +console URL's and placing applications under their own origin.
    • Visiting routerconsole
    • -
  • [wip] Handle Torrents by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocl -handler that simply auto-fills the torrent into i2psnark. -
      +handler that simply auto-fills the torrent into i2psnark.
    • Visiting i2psnark
    • -
  • [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 @@ -108,6 +98,16 @@ blog or to other similar websites that you create content on.
  • Video of the plugin in action
  • +

    Documents

    + +
      +
    • Browser Outline: This document is an outline of each of +the browser extension's feature panels in presentation form.
    • +
    • Smart Lander Design: This is the original outline of +the smart landing page which became the I2P home page within the browser and +the drop-down control panel.
    • +
    +

    Super Extra Important Background Info:

    This plugin's viability is directly related to the viability of Mozilla and From ce4ec0cdfc8b5274ebaca9afff4ab9432a20c4e2 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 16:46:51 -0500 Subject: [PATCH 13/15] update usage section --- README.md | 27 +++++++++++++++++++++++---- index.html | 24 ++++++++++++++++++++++-- lander.png | Bin 0 -> 72951 bytes menu.png | Bin 0 -> 126897 bytes 4 files changed, 45 insertions(+), 6 deletions(-) create mode 100644 lander.png create mode 100644 menu.png diff --git a/README.md b/README.md index d3ecb69..f07749d 100644 --- a/README.md +++ b/README.md @@ -10,15 +10,15 @@ automatically when the user requests them. It also adds convenience and management features specific to I2P like protocol handlers and native messaging systems. -addons.mozilla.org ------------------- +Installation(Cross-Platform): +----------------------------- For desktop users this addon is available from addons.mozilla.org, where you will be able to recive automatic updates: https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/. -Debian usage: -------------- +Debian Installation: +-------------------- Should you prefer, it is possible to install this extension system-wide by side-loading it into Debian. You can generate your own deb file by running the @@ -30,6 +30,25 @@ and then you can install it with: sudo apt install ../i2psetproxy.js_*.deb +Usage: +------ + + * Basically, it "Just Works." After you install the plugin, browsing to an I2P + domain will automatically stop the current tab and re-open the I2P site in an + I2P Browser tab. + * Besides that, four bookmarks are added to the "Bookmarks Toolbar," which + will take you to visit your Java I2P applications, or the "Simplified I2P + Landing Page" embedded in the plugin: + * ![Landing page](lander.png) + * Also, there's a menu for accessing I2P functionality while you're browsing. + It lets you control a few settings in a granular way. + * ![Menu](menu.png) + * You can re-enable WebRTC but force it to always use the proxy that is + enforced by the tab. + * You can either force the browser to delete all history for I2P sites + immediately, or you can close all your I2P Browser tabs at once and delete + the history for I2P browsing when you're done. + ### Features * [done] **Provide** a way to launch into an I2P-Specific contextual identity diff --git a/index.html b/index.html index c47d874..e9981ec 100644 --- a/index.html +++ b/index.html @@ -15,13 +15,13 @@ automatically when the user requests them. It also adds convenience and management features specific to I2P like protocol handlers and native messaging systems.

    -

    addons.mozilla.org

    +

    Installation(Cross-Platform):

    For desktop users this addon is available from addons.mozilla.org, where you will be able to recive automatic updates: https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/.

    -

    Debian usage:

    +

    Debian Installation:

    Should you prefer, it is possible to install this extension system-wide by side-loading it into Debian. You can generate your own deb file by running the @@ -35,6 +35,26 @@ command:

        sudo apt install ../i2psetproxy.js_*.deb
     
    +

    Usage:

    + +
      +
    • Basically, it "Just Works." After you install the plugin, browsing to an I2P +domain will automatically stop the current tab and re-open the I2P site in an +I2P Browser tab.
    • +
    • Besides that, four bookmarks are added to the "Bookmarks Toolbar," which +will take you to visit your Java I2P applications, or the "Simplified I2P +Landing Page" embedded in the plugin:
    • +
    • Landing page
    • +
    • Also, there's a menu for accessing I2P functionality while you're browsing. +It lets you control a few settings in a granular way.
    • +
    • Menu
    • +
    • You can re-enable WebRTC but force it to always use the proxy that is +enforced by the tab.
    • +
    • You can either force the browser to delete all history for I2P sites +immediately, or you can close all your I2P Browser tabs at once and delete +the history for I2P browsing when you're done.
    • +
    +

    Features

    Features

    From 9e015c51effa2408d8afd54a95ef6daed2b6cf65 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 24 Dec 2019 16:51:38 -0500 Subject: [PATCH 15/15] update usage section --- background.js | 76 +++++++++++++++++++++++++-------------------------- bookmarks.js | 16 ++++++++--- context.js | 21 ++++++-------- handler.js | 2 +- home.css | 2 +- info.js | 16 +++++------ privacy.js | 40 ++++++++++++--------------- proxy.js | 12 ++++++-- scrub.js | 13 ++++----- 9 files changed, 100 insertions(+), 98 deletions(-) diff --git a/background.js b/background.js index 1a19a66..862a648 100644 --- a/background.js +++ b/background.js @@ -19,58 +19,58 @@ function onContextsGot(contexts) { } console.log("Checking new contexts"); if (ids.indexOf(titlepref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: titlepref, color: "orange", icon: "fingerprint" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } if (ids.indexOf(webpref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: webpref, color: "red", icon: "circle" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } if (ids.indexOf(routerpref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: routerpref, color: "blue", icon: "briefcase" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } if (ids.indexOf(tunnelpref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: tunnelpref, color: "green", icon: "tree" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } if (ids.indexOf(mailpref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: mailpref, color: "yellow", icon: "briefcase" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } if (ids.indexOf(torrentpref) == -1) { - browser.contextualIdentities. - create({ + browser.contextualIdentities + .create({ name: torrentpref, color: "purple", icon: "chill" - }). - then(onCreated, onError); + }) + .then(onCreated, onError); } } @@ -211,9 +211,9 @@ function themeWindow(window) { tabInfo[0].cookieStoreId != "firefox-default" && tabInfo[0].cookieStoreId != "firefox-private" ) { - browser.contextualIdentities. - get(tabInfo[0].cookieStoreId). - then(onContextGotTheme, onError); + browser.contextualIdentities + .get(tabInfo[0].cookieStoreId) + .then(onContextGotTheme, onError); } else { browser.theme.reset(window.id); } @@ -308,18 +308,18 @@ function setTitle(window) { tabInfo[0].cookieStoreId != "firefox-default" && tabInfo[0].cookieStoreId != "firefox-private" ) { - browser.contextualIdentities. - get(tabInfo[0].cookieStoreId). - then(onContextGotTitle, onError); + browser.contextualIdentities + .get(tabInfo[0].cookieStoreId) + .then(onContextGotTitle, onError); } else if (window.incognito) { - browser.windows.update(window.id, { - titlePreface: "" - }); - } else { - browser.windows.update(window.id, { - titlePreface: "" - }); - } + browser.windows.update(window.id, { + titlePreface: "" + }); + } else { + browser.windows.update(window.id, { + titlePreface: "" + }); + } } var querying = browser.tabs.query({ diff --git a/bookmarks.js b/bookmarks.js index e191a2a..05262b7 100644 --- a/bookmarks.js +++ b/bookmarks.js @@ -25,7 +25,9 @@ gettingInfo.then(got => { } console.log("(bookmarks) adding home page bookmark"); } - console.log("(bookmarks) checking if we're running in an I2P Browser"); + console.log( + "(bookmarks) checking if we're running in an I2P Browser" + ); var gettingInfo = browser.proxy.settings.get({}); gettingInfo.then(gotProxyInfo); } @@ -52,7 +54,9 @@ gettingInfo.then(got => { createBookmark.then(onCreated); } } - console.log("(bookmarks) checking if we're running in an I2P Browser"); + console.log( + "(bookmarks) checking if we're running in an I2P Browser" + ); var gettingInfo = browser.proxy.settings.get({}); gettingInfo.then(gotProxyInfo); } @@ -79,7 +83,9 @@ gettingInfo.then(got => { } console.log("(bookmarks) adding webmail bookmark"); } - console.log("(bookmarks) checking if we're running in an I2P Browser"); + console.log( + "(bookmarks) checking if we're running in an I2P Browser" + ); var gettingInfo = browser.proxy.settings.get({}); gettingInfo.then(gotProxyInfo); } @@ -111,7 +117,9 @@ gettingInfo.then(got => { } console.log("(bookmarks) adding i2ptunnel bookmark"); } - console.log("(bookmarks) checking if we're running in an I2P Browser"); + console.log( + "(bookmarks) checking if we're running in an I2P Browser" + ); var gettingInfo = browser.proxy.settings.get({}); gettingInfo.then(gotProxyInfo); } diff --git a/context.js b/context.js index 0c3a9c9..b1712dc 100644 --- a/context.js +++ b/context.js @@ -21,11 +21,11 @@ function eventHandler(event) { creating.then(onCreated, onError); } if (event.target.dataset.action == "close-all") { - browser.tabs. - query({ + browser.tabs + .query({ cookieStoreId: event.target.dataset.identity - }). - then(tabs => { + }) + .then(tabs => { browser.tabs.remove(tabs.map(i => i.id)); }); } @@ -33,10 +33,7 @@ function eventHandler(event) { } function createOptions(node, identity) { - for (let option of [ -"Create", -"Close All" -]) { + for (let option of ["Create", "Close All"]) { let a = document.createElement("a"); a.href = "#"; a.innerText = option; @@ -53,11 +50,11 @@ if (browser.contextualIdentities === undefined) { div.innerText = "browser.contextualIdentities not available. Check that the privacy.userContext.enabled pref is set to true, and reload the add-on."; } else { - browser.contextualIdentities. - query({ + browser.contextualIdentities + .query({ name: titlepref - }). - then(identities => { + }) + .then(identities => { if (!identities.length) { div.innerText = "No identities returned from the API."; return; diff --git a/handler.js b/handler.js index b3178b2..379d77d 100644 --- a/handler.js +++ b/handler.js @@ -40,6 +40,6 @@ var handlerSetup = async function(requestDetails) { browser.webRequest.onBeforeRequest.addListener( handlerSetup, - {urls: [""]}, + { urls: [""] }, ["blocking"] ); diff --git a/home.css b/home.css index ee264d3..2b638b8 100644 --- a/home.css +++ b/home.css @@ -276,7 +276,7 @@ li { opacity: 1 } img { - max-width: 100%; + max-width: 100% } img.readyness { height: 100%; diff --git a/info.js b/info.js index 255b6c3..f0f2e2b 100644 --- a/info.js +++ b/info.js @@ -14,8 +14,8 @@ function checkHistory() { getting.then(got => { disable_history = got.disable_history; if (disable_history == undefined) { -disable_history = false; -} + disable_history = false; + } console.log("checking history", disable_history); document.getElementById("disable-history").checked = disable_history; }); @@ -73,17 +73,17 @@ document.addEventListener("click", e => { echo("I2P Router Detected", "panel-section-i2pcontrol-check"); } else if (e.target.id === "enable-web-rtc") { if (e.target.checked) { - browser.runtime.sendMessage({rtc: "enableWebRTC"}); + browser.runtime.sendMessage({ rtc: "enableWebRTC" }); } else { - browser.runtime.sendMessage({rtc: "disableWebRTC"}); + browser.runtime.sendMessage({ rtc: "disableWebRTC" }); } //checkPeerConnection() return; } else if (e.target.id === "disable-history") { if (e.target.checked) { - browser.runtime.sendMessage({history: "disableHistory"}); + browser.runtime.sendMessage({ history: "disableHistory" }); } else { - browser.runtime.sendMessage({history: "enableHistory"}); + browser.runtime.sendMessage({ history: "enableHistory" }); } //checkHistory() return; @@ -169,8 +169,8 @@ function onVisited(historyItem) { } if (!history) { if (i2pHost(historyItem.url)) { -var deletingUrl = browser.history.deleteUrl(historyItem.url); -} + var deletingUrl = browser.history.deleteUrl(historyItem.url); + } deletingUrl.then(onRemoved); } } diff --git a/privacy.js b/privacy.js index ba6bb37..320ef57 100644 --- a/privacy.js +++ b/privacy.js @@ -208,13 +208,7 @@ function EnableSavePasswords() { var defaultSettings = { since: "forever", - dataTypes: [ -"downloads", -"passwords", -"formData", -"localStorage", -"history" -] + dataTypes: ["downloads", "passwords", "formData", "localStorage", "history"] }; var appSettings = { @@ -274,33 +268,33 @@ function forgetBrowsingData(storedSettings) { }); browser.browsingData.removeCache({}); console.log("cleared Cache"); - browser.browsingData. - removePasswords({ + browser.browsingData + .removePasswords({ hostnames: [i2pHostName(item.url)], since - }). - then(onContextGotLog); + }) + .then(onContextGotLog); console.log("cleared Passwords"); - browser.browsingData. - removeDownloads({ + browser.browsingData + .removeDownloads({ hostnames: [i2pHostName(item.url)], since - }). - then(onContextGotLog); + }) + .then(onContextGotLog); console.log("cleared Downloads"); - browser.browsingData. - removeFormData({ + browser.browsingData + .removeFormData({ hostnames: [i2pHostName(item.url)], since - }). - then(onContextGotLog); + }) + .then(onContextGotLog); console.log("cleared Form Data"); - browser.browsingData. - removeLocalStorage({ + browser.browsingData + .removeLocalStorage({ hostnames: [i2pHostName(item.url)], since - }). - then(onContextGotLog); + }) + .then(onContextGotLog); console.log("cleared Local Storage"); contexts = browser.contextualIdentities.query({ diff --git a/proxy.js b/proxy.js index bf09409..b1fd7f8 100644 --- a/proxy.js +++ b/proxy.js @@ -235,7 +235,9 @@ function SetupSettings() { console.log("Initialising Control Host", storedSettings.control_host); setupProxy(); } - var gettingControlHostStoredSettings = browser.storage.local.get("control_host"); + var gettingControlHostStoredSettings = browser.storage.local.get( + "control_host" + ); gettingControlHostStoredSettings.then( checkControlHostStoredSettings, onError @@ -252,7 +254,9 @@ function SetupSettings() { console.log("Initialising Control Port", storedSettings.control_port); setupProxy(); } - var gettingControlPortStoredSettings = browser.storage.local.get("control_port"); + var gettingControlPortStoredSettings = browser.storage.local.get( + "control_port" + ); gettingControlPortStoredSettings.then( checkControlPortStoredSettings, onError @@ -272,7 +276,9 @@ function SetupSettings() { ); setupProxy(); } - var gettingHistoryStoredSettings = browser.storage.local.get("disable_history"); + var gettingHistoryStoredSettings = browser.storage.local.get( + "disable_history" + ); gettingHistoryStoredSettings.then(checkHistoryStoredSettings, onError); } diff --git a/scrub.js b/scrub.js index 72d69c2..c0725ee 100644 --- a/scrub.js +++ b/scrub.js @@ -60,8 +60,8 @@ var contextScrub = async function(requestDetails) { console.log("(scrub)Tab ID from Request", tabId); let ostype = await browser.runtime.getPlatformInfo(); if (ostype == android) { - tabId += 1; -} + tabId += 1; + } let tabInfo = await browser.tabs.get(tabId); return tabInfo; } catch (error) { @@ -352,15 +352,12 @@ var contextSetup = async function(requestDetails) { browser.webRequest.onBeforeRequest.addListener( contextSetup, - {urls: [""]}, + { urls: [""] }, ["blocking"] ); browser.webRequest.onBeforeSendHeaders.addListener( contextScrub, - {urls: [""]}, - [ -"blocking", -"requestHeaders" -] + { urls: [""] }, + ["blocking", "requestHeaders"] );