tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

file_documentcookie_maxage_chromescript.js (986B)


      1 /* eslint-env mozilla/chrome-script */
      2 
      3 "use strict";
      4 
      5 function getCookieService() {
      6  // eslint-disable-next-line mozilla/use-services
      7  return Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager);
      8 }
      9 
     10 function getCookies(cs) {
     11  let cookies = [];
     12  for (let cookie of cs.cookies) {
     13    cookies.push({
     14      host: cookie.host,
     15      path: cookie.path,
     16      name: cookie.name,
     17      value: cookie.value,
     18      expires: cookie.expires,
     19    });
     20  }
     21  return cookies;
     22 }
     23 
     24 function removeAllCookies(cs) {
     25  cs.removeAll();
     26 }
     27 
     28 addMessageListener("init", _ => {
     29  let cs = getCookieService();
     30  removeAllCookies(cs);
     31  sendAsyncMessage("init:return");
     32 });
     33 
     34 addMessageListener("getCookies", _ => {
     35  let cs = getCookieService();
     36  let cookies = getCookies(cs);
     37  removeAllCookies(cs);
     38  sendAsyncMessage("getCookies:return", { cookies });
     39 });
     40 
     41 addMessageListener("shutdown", _ => {
     42  let cs = getCookieService();
     43  removeAllCookies(cs);
     44  sendAsyncMessage("shutdown:return");
     45 });