tbb-commits
Threads by month
- ----- 2025 -----
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- 1 participants
- 18498 discussions
commit 4a914d296645b1eb5ebe5f67d3da3bac455907ec
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Jun 5 05:07:17 2014 -0700
Update translations.
---
src/chrome/locale/de/torbutton.properties | 8 +++---
src/chrome/locale/fa/torbutton.properties | 40 ++++++++++++++---------------
src/chrome/locale/fr/torbutton.properties | 12 ++++-----
src/chrome/locale/ko/torbutton.properties | 12 ++++-----
src/chrome/locale/pl/aboutTor.dtd | 6 +++--
src/chrome/locale/pl/torbutton.dtd | 28 ++++++++++----------
src/chrome/locale/ru/torbutton.properties | 12 ++++-----
src/chrome/locale/sv/torbutton.properties | 12 ++++-----
src/chrome/locale/tr/aboutTor.dtd | 2 +-
src/chrome/locale/tr/torbutton.dtd | 22 ++++++++--------
src/chrome/locale/tr/torbutton.properties | 2 +-
11 files changed, 79 insertions(+), 77 deletions(-)
diff --git a/src/chrome/locale/de/torbutton.properties b/src/chrome/locale/de/torbutton.properties
index 3c4f5ee..c269cc1 100644
--- a/src/chrome/locale/de/torbutton.properties
+++ b/src/chrome/locale/de/torbutton.properties
@@ -23,8 +23,8 @@ torbutton.prefs.optional = (optional)
torbutton.prefs.crucial = (kritisch)
torbutton.popup.external.title = Einen externen Dateitypen herunterladen
torbutton.popup.external.app = Tor-Browser kann diese Datei nicht anzeigen. Sie müssen es mit einer anderen Anwendung öffnen.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
+torbutton.popup.external.note = Einige Dateitypen können Anwendungen dazu führen, dass sie sich mit dem Internet ohne Tor verbinden.\n\n
+torbutton.popup.external.suggest = Um sicher zu sein, sollten Sie heruntergeladene Dateien nur öffnen, wenn Sie nicht mit dem Netz verbunden sind oder Sie benutzen eine Live-CD wie z. B. Tails.\n
torbutton.popup.launch = Datei herunterladen
torbutton.popup.cancel = Abbrechen
torbutton.popup.dontask = Von jetzt an Dateien immer automatisch herunterladen
@@ -48,8 +48,8 @@ torbutton.popup.confirm_plugins = Erweiterungen wie Flash können ihre Privatsph
torbutton.popup.never_ask_again = Nicht mehr nachfragen
# Canvas permission prompt. Strings are kept here for ease of translation.
-canvas.siteprompt=Die Webseite (%S) hat versucht, auf Bilddaten von einem Canvas zuzugreifen. Da Canvas Bilddaten dazu benutzt werden können, um Informationen über ihren Rechner zu bekommen, wurden diesmal leere Bilddaten an die Webseite geschickt
+canvas.siteprompt=Die Internetseite (%S) hat versucht, auf Bilddaten von einem Canvas zuzugreifen. Da Canvas-Bilddaten dazu benutzt werden können, um Informationen über ihren Rechner zu bekommen, wurden diesmal leere Bilddaten an die Internetseite geschickt.
canvas.allow=In Zukunft Erlauben
canvas.allowAccessKey=I
-canvas.never=Niemals für diese Website
+canvas.never=Niemals für diese Internetseite
canvas.neverAccessKey=N
diff --git a/src/chrome/locale/fa/torbutton.properties b/src/chrome/locale/fa/torbutton.properties
index 44137ab..ca7da00 100644
--- a/src/chrome/locale/fa/torbutton.properties
+++ b/src/chrome/locale/fa/torbutton.properties
@@ -6,10 +6,10 @@ torbutton.panel.plugins.disabled = برای فعال کردن پلاگين ها
torbutton.panel.plugins.enabled = برای غيرفعال کردن پلاگين ها کليک کنيد
torbutton.panel.label.disabled = تُرغيرفعال شد
torbutton.panel.label.enabled = تُر فعال شد
-extensions.torbutton(a)torproject.org.description = Torbutton provides a button to configure Tor settings and quickly and easily clear private browsing data.
-torbutton.popup.history.warning = Torbuttonفعاليت تب هاي كه بغير از تُر متصل مي شوند را مسدود مي كند/n/nThis is to work around Firefox Bugs 409737 and 417869/n/nIf this popup seemed to happen for no reason, one of your tabs is attempting to reload itself in the background, and this was blocked.\n\nTo reload the tab in this Tor state, hit 'enter' in the URL location box.\n\n
+extensions.torbutton(a)torproject.org.description = Torbutton دکمه ای را برای شما فراهم مینماید تا تنظیمات "تر" را پیکربندی کرده و بتوانید به راحتی و سرعت، داده های خصوصی مرورگرتان را پاک کنید.
+torbutton.popup.history.warning = Torbutton .فعالیت یک تب را که در وضعیت متفاوتی از "تر" بارگیری شده بود، مسدود کرد.\n\nاین کار برای دور زدن مشکل ناشی از نقص نرم افزاری با کد 409737 و 417869 در مرورگر فایرفاکس است.\n\nاگر این پاپاپ (منوی فرعی)، به نظر بدون هیچ دلیلی ایجاد شده، یکی از تبهای شما در تلاش است تا خودش را در پشت زمینه، بارگیری مجدد کند که جلوی این مساله گرفته شده است.\n\nبرای بارگیری مجدد تب در این حالت از "تر"، Enter را در نوار URL بزنید.\n
torbutton.popup.plugin.warning = دکمه تُر مانع از نصب خودکار يک پلاگين شد.\n\nدر عوض Save-As را بکار ببريد.\n\n
-torbutton.popup.confirm_ca_certs = نكته : بنظر مي رسد که شما دارای اسناد سفارشی نمی باشيد. بازرسی ليست اسناد زمان می برد و موجب کندی عملکرد ضامن تُر می شود. آيا می خواهيد جداسازی اسناد را غيرفعال کنيد؟ (اگر متوجه معنی نمی شويد, بهتر است روی بسيارخوب فشار دهيد)
+torbutton.popup.confirm_ca_certs = نكته ای درباره Torbutton : بنظر مي رسد که شما دارای گواهی تایید رسمی نمی باشيد. بررسی لیست گواهی تایید، عملیاتی زمانبر است و تبدیل وضعیت "تر" را کند میکند. آيا می خواهيد جداسازی گواهی تایید را غيرفعال کنيد؟ (اگراین موضوع را متوجه نمی شويد, بهتر است روی OK کلیک کنید).
torbutton.popup.ff3.warning = هشدار!\n\nدکمه تُر در فايرفاکس 3 محدوده زمانی و بوک مارک ها را از طريق تُرافشا ميکند.\n\nآيا در هر صورت مايل به ادامه هستيد؟
torbutton.popup.toggle.warning = شما بايد تُر را فعال/غير فعال ويا فايرفاکس را دوباره راه اندازی کنيد تا تغييرات انجام شود.
torbutton.popup.test.success = تُربا موفقيت آزمايش را سپری کرد!
@@ -21,35 +21,35 @@ torbutton.popup.test.auto_failed = تست خودکار پراکسی تُربا
torbutton.prefs.recommended = (توصيه شده)
torbutton.prefs.optional = (اختياری)
torbutton.prefs.crucial = (بسيار مهم)
-torbutton.popup.external.title = Download an external file type?
-torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
-torbutton.popup.launch = Download file
+torbutton.popup.external.title = میخواهید یک فایل نوع بیرونی دانلود شود؟
+torbutton.popup.external.app = مرورگر نمیتواند این فایل را نمایش دهد، لازم است تا با برنامه دیگری آن را باز کنید.\n
+torbutton.popup.external.note = برخی از انواع فایلها، باعث میشوند که برنامه ها بدون استفاده از "تر" به اینترنت متصل شوند.\n
+torbutton.popup.external.suggest = برای ایمن ماندن، باید فقط هنگامی که به اینترنت وصل نیستید، فایل دانلود شده را باز کنید، یا از یک "سی دی لایو تر" مانند Tails استفاده کنید.\n
+torbutton.popup.launch = دانلود فایل
torbutton.popup.cancel = لغو
-torbutton.popup.dontask = Automatically download files from now on
+torbutton.popup.dontask = از این پس، فایلها به طور خودکار دانلود شود.
torbutton.popup.test.no_http_proxy = آزمون پراکسی تُر: پراکسی HTTP محلی قابل دسترسی نیست. آیا پولیپو به درستی اجرا شده است؟
torbutton.popup.captcha.title = Avoid Google Captchas?
torbutton.popup.captcha.ask = Torbutton detected a Google Captcha. Would you like to be redirected to another search engine for this query?
-torbutton.popup.captcha.always = از حالا به بعد هر برنامه ای را اجرا کن
-torbutton.popup.redirect = تغيير مسير....
-torbutton.popup.no_redirect = تغيير مسير ممكن نيست
-torbutton.popup.prompted_language = برای حفاظت بيشتر از حريم خصوصی شما، دکمه تُر میتواند نسخه انگليسی صفحات وب را درخواست کند. اين موضوع ممکن است باعث شود صفحههایی که دوست داريد به زبان مادری خود بخوانيد به انگليسی نمايش داده شوند.\n\nآيا با اين وجود میخواهيد برای حفاظت بيشتر از حريم خصوصی درخواست نسخه انگليسی صفحات را بدهيد؟
+torbutton.popup.captcha.always = از این پس، برای همیشه این اقدام صورت گیرد.
+torbutton.popup.redirect = عطف مجدد به مسیر مورد نظر
+torbutton.popup.no_redirect = عدم عطف مجدد به مسیر مورد نظر
+torbutton.popup.prompted_language = برای حفاظت بيشتر از حريم خصوصی شما، دکمه تُر میتواند نسخه انگليسی صفحات وب را درخواست کند. اين موضوع ممکن است باعث شود صفحههایی را که ترجیح میدهید به زبان مادری خود بخوانيد، در عوض به انگليسی نمايش داده شوند.\n\nآيا با اين وجود میخواهيد برای حفاظت بيشتر از حريم خصوصی درخواست نسخه انگليسی صفحات را بدهيد؟
torbutton.popup.no_newnym = Torbutton نمی تواند به شما یک شناسه جدید امن بدهد. دسترسی به پورت کنترل ویدالیا امکان پذیر نیست.\n\n آیا شما در حال اجرا بسته نرم افزاری مرورگر تُر هستید؟
torbutton.popup.use_tbb = به نظر می رسد شما در حال استفاده از Torbutton با فایرفاکس هستید، که دیگر به عنوان تنظیمات امن تلقی نمی شود.\n\n در عوض ، ما توصیه می کنیم که آخرین بسته نرم افزاری مرورگر Tor از طریق ارسال ایمیل به gettor(a)torproject.org یا با دانلود آن را در آدرس زیر بدست آورید:
torbutton.popup.pref_error = Torbutton نمی توانید تنظیمات را در دایرکتوری مشخصات مرورگر Tor را به روز رسانی کند
torbutton.popup.permission_denied = لطفا یکی از دو تنظیم مجدد مجوز دایرکتوری مرورگر Tor و یا کپی آن را به یک مکان جدید.
torbutton.popup.device_full = دیسک به نظر می رسد پر شده است. لطفا مقداری فضا خالی کنید یا تُر را به مکان جدیدی انتقال دهید.
torbutton.title.prompt_torbrowser = اطلاعات مهم Torbutton
-torbutton.popup.prompt_torbrowser = حالا دکمه تور بطور متفاوتی کار میکند - دیگر نمیتوانید آنرا خاموسکنید.
-torbutton.popup.short_torbrowser = Important Torbutton Information!\n\nTorbutton is now always enabled.\n\nClick on the Torbutton for more information.
+torbutton.popup.prompt_torbrowser = اکنون Torbutton بطور متفاوتی کار میکند - دیگر نمیتوانید آن را خاموش کنید.\n\nاین تغیرات به این دلیل اعمال شده است که استفاده از Torbutton در مرورگری که برای مرورگری بدون تر نیز استفاده میشود، ایمن نیست. نقصهای نرم افزاری آنقدر زیاد بود که به روش دیگری نمیتوانستیم آن را حل کنیم.\n\nاگر میخواهید به طور عادی به استفاده از فایرفاکس ادامه دهید، باید نرم افزار Torbutton را حذف کرده و Tor Browser Bundle (بسته مرورگر تر) را دانلود کنید. ویژگیهای خصوصی بودن تر، به آنهایی که در فایرفاکس است، برتری دارد، حتی هنگامی که فایرفاکس با Torbutton استفاده شود.\n\nبرای حذف
Torbutton، بروید به ابزارها ( یا tools اگر از نسخه انگلیسی فایرفاکس استفاده میکنید)، افزونه ها (Addons)، برنامه های گسترش یافته (Extensions ) و سپس دکمه Remove که در کنار Torbutton است را بزنید.
+torbutton.popup.short_torbrowser = اطلاعلت مهم Torbutton!\n\nTorbutton همیشه فعال باشد!\n\nبرای اطلاعات بیشتر روی Torbutton کلیک نمایید.
-torbutton.popup.confirm_plugins = Plugins such as Flash can harm your privacy and anonymity.\n\nThey can also bypass Tor to reveal your current location and IP address.\n\nAre you sure you want to enable plugins?\n\n
-torbutton.popup.never_ask_again = در آینده از من نپرس
+torbutton.popup.confirm_plugins = پلاگینها مانند فلش، میتوانند اختفا و ناشناس بودن شما را به خطر بیاندازند.\n\nآنها همچنین میتوانند "تر" را دور زده تا موقعیت کنونی و آدرس IP شما را برملا کنند.\n\nمطمئنید که میخواهید پلاگینها را فعال کنید؟\n\n
+torbutton.popup.never_ask_again = دیگر هیچگاه این را از من نپرس
# Canvas permission prompt. Strings are kept here for ease of translation.
-canvas.siteprompt=This website (%S) attempted to access image data on a canvas. Since canvas image data can be used to discover information about your computer, blank image data was returned this time.
-canvas.allow=اجازهدادن برای آینده
+canvas.siteprompt=وب سایت (%S) تلاش کر تا به داده عکس در یک پرده نقاشى دسترسی پیدا کند، از آنجایی که داده عکس پرده نقاشى میتواند برای کشف اطلاعات درباره رایانه شما استفاده شود، این بار داده عکس خالی بازگشت داده شد.
+canvas.allow=در آینده اجازه بده
canvas.allowAccessKey=A
-canvas.never=هیچوقت برای این وبسایت
+canvas.never=برای این وبسایت، هیچگاه
canvas.neverAccessKey=e
diff --git a/src/chrome/locale/fr/torbutton.properties b/src/chrome/locale/fr/torbutton.properties
index 497d85b..ecb71e9 100644
--- a/src/chrome/locale/fr/torbutton.properties
+++ b/src/chrome/locale/fr/torbutton.properties
@@ -21,13 +21,13 @@ torbutton.popup.test.auto_failed = Le test automatique du proxy Tor n'a pas réu
torbutton.prefs.recommended = (recommandé)
torbutton.prefs.optional = (facultatif)
torbutton.prefs.crucial = (indispensable)
-torbutton.popup.external.title = Download an external file type?
-torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
-torbutton.popup.launch = Download file
+torbutton.popup.external.title = Télécharger un type de fichier externe
+torbutton.popup.external.app = Le Navigateur Tor ne peut pas afficher ce fichier. Il est necessaire de l'ouvrir avec une autre application.
+torbutton.popup.external.note = Certains types de fichiers peuvent causer des connexions à l'Internet sans passer par Tor pour certaines applications
+torbutton.popup.external.suggest = Pour être en sécurité, vous ne devriez ouvrir les fichiers téléchargé qu'hors ligne, ou utiliser un Live CD de Tor comme Tails.
+torbutton.popup.launch = Télécharger le fichier
torbutton.popup.cancel = Annuler
-torbutton.popup.dontask = Automatically download files from now on
+torbutton.popup.dontask = Télécharger automatiquement à partir de maintenant
torbutton.popup.test.no_http_proxy = Test du proxy Tor : le proxy HTTP local est injoignable. Est-ce que Polipo fonctionne correctement ?
torbutton.popup.captcha.title = Eviter les captchas (test permettant de différencier un utilisateur humain d'un ordinateur) de Google ?
torbutton.popup.captcha.ask = Torbutton a détecté un captcha Google. Voulez-vous être redirigé vers un autre moteur de recherche pour cette recherche ?
diff --git a/src/chrome/locale/ko/torbutton.properties b/src/chrome/locale/ko/torbutton.properties
index a7ffa18..8a452f4 100644
--- a/src/chrome/locale/ko/torbutton.properties
+++ b/src/chrome/locale/ko/torbutton.properties
@@ -21,13 +21,13 @@ torbutton.popup.test.auto_failed = 자동 Tor 프록시 테스트가 실패하
torbutton.prefs.recommended = (추천)
torbutton.prefs.optional = (선택)
torbutton.prefs.crucial = (중요)
-torbutton.popup.external.title = Download an external file type?
-torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
-torbutton.popup.launch = Download file
+torbutton.popup.external.title = 외부 파일 유형을 다운로드 하시겠습니까?
+torbutton.popup.external.app = Tor 브라우저는이 파일을 볼 수 없습니다. 다른 응용 프로그램에서 열어야합니다.\n\n
+torbutton.popup.external.note = 파일 유형에 응용 프로그램이 Tor를 사용하지 않고 인터넷에 연결하는 원인이 될 수있는 것이 있습니다.\n\n
+torbutton.popup.external.suggest = 안전하기 위하여 오프라인 일 때만 다운로드 한 파일을 열거 나 Tails 같은 Tor 라이브 CD를 사용해야합니다.\n
+torbutton.popup.launch = 파일을 다운로드 하기
torbutton.popup.cancel = 취소
-torbutton.popup.dontask = Automatically download files from now on
+torbutton.popup.dontask = 지금부터 파일을 자동으로 다운로드
torbutton.popup.test.no_http_proxy = Tor 프록시 테스트: 로컬 HTTP 프록시에 접근할 수 없습니다. Polipo가 확실히 작동중 입니까?
torbutton.popup.captcha.title = Google Capchas 피하기?
torbutton.popup.captcha.ask = Torbutton이 Google Capctha를 감지했습니다. 이 쿼리를 위해 다른 검색 엔진으로 리다이렉트 하시겠습니까?
diff --git a/src/chrome/locale/pl/aboutTor.dtd b/src/chrome/locale/pl/aboutTor.dtd
index a4813da..654dc58 100644
--- a/src/chrome/locale/pl/aboutTor.dtd
+++ b/src/chrome/locale/pl/aboutTor.dtd
@@ -38,11 +38,13 @@
<!ENTITY aboutTor.helpInfo2.label "Istnieje wiele sposobów, abyś mógł uczynić sieć Tor'a szybszą i silniejszą:">
<!ENTITY aboutTor.helpInfo3.label "Uruchom Przekaźnikowy Węzeł Tora »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html.en">
-<!ENTITY aboutTor.helpInfo4.label "Wolontariat Swoje Usługi »">
+<!ENTITY aboutTor.helpInfo4.label "Zgłoś się na ochotnika »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html.en">
<!ENTITY aboutTor.helpInfo5.label "Przekaż darowiznę »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html.en">
-<!ENTITY aboutTor.footer.label "Projekt Tor jest US 501 (c) (3) non-profit, zajmująca się badaniami, rozwojem i edukacji online anonimowości i prywatności.">
+<!ENTITY aboutTor.footer.label "Projekt Tor jest organizacją non-profit*, zajmująca się badaniami, rozwojem i edukacji o anonimowości i prywatności w internecie.
+
+* 501(c)(3)">
<!ENTITY aboutTor.learnMore.label "Dowiedz się więcej na temat Tor Project »">
<!ENTITY aboutTor.learnMore.link "https://www.torproject.org/about/overview.html.en">
diff --git a/src/chrome/locale/pl/torbutton.dtd b/src/chrome/locale/pl/torbutton.dtd
index 3e93e2d..b7ca9d2 100644
--- a/src/chrome/locale/pl/torbutton.dtd
+++ b/src/chrome/locale/pl/torbutton.dtd
@@ -31,11 +31,11 @@
<!ENTITY torbutton.context_menu.about "O Torbutton">
<!ENTITY torbutton.context_menu.about.key "T">
<!ENTITY torbutton.context_menu.networksettings "Otwórz ustawienia sieci...">
-<!ENTITY torbutton.context_menu.networksettings.key "Z">
+<!ENTITY torbutton.context_menu.networksettings.key "s">
<!ENTITY torbutton.context_menu.downloadUpdate "Pobierz aktualizację Paczki Tora z Przeglądarką">
<!ENTITY torbutton.context_menu.downloadUpdate.key "u">
<!ENTITY torbutton.context_menu.cookieProtections "Ochrona Ciasteczek">
-<!ENTITY torbutton.context_menu.cookieProtections.key "C">
+<!ENTITY torbutton.context_menu.cookieProtections.key "c">
<!ENTITY torbutton.context_menu.copyTor "Kopiuj URL Tora">
<!ENTITY torbutton.context_menu.copyTor.key "p">
<!ENTITY torbutton.context_menu.openTorTab "Otwórz URL Tora w nowej karcie">
@@ -74,10 +74,10 @@
<!ENTITY torbutton.prefs.headers "Nagłówki">
<!ENTITY torbutton.prefs.spoof_english "Udawaj przeglądarkę z USA">
<!ENTITY torbutton.prefs.refererspoofing "Fałszowanie adresu zwrotnego">
-<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
+<!ENTITY torbutton.prefs.spoofblank "Wysyłaj pusty adres zwrotny w czasie używania Tora (może zepsuć niektóre strony)">
<!ENTITY torbutton.prefs.smartspoof "Mądrze fałszuj adres zwrotny w czasie używania Tora (fałszuje odnośniki między stronami)">
-<!ENTITY torbutton.prefs.nospoof "No referer spoof during Tor usage (sends referers as normal)">
-<!ENTITY torbutton.prefs.disable_domstorage "Blokuj zapisywanie DOM podczas używania Tora (krytyczne)">
+<!ENTITY torbutton.prefs.nospoof "Nie fałszuj adresu zwrotnego w czasie używania Tora (wysyłaj adres normalnie)">
+<!ENTITY torbutton.prefs.disable_domstorage "Wyłącz Magazyn DOM podczas używania Tora (krytyczne)">
<!ENTITY torbutton.prefs.forms "Formularze">
<!ENTITY torbutton.prefs.block_tforms "Blokuj zapamiętywanie haseł z formularzy (zalecane)">
<!ENTITY torbutton.prefs.block_ntforms "Blokuj zapamiętywanie haseł oraz zawartości formularzy gdy Tor jest nieaktywny (opcjonalnie)">
@@ -91,20 +91,20 @@
<!ENTITY torbutton.prefs.block_js_history "Zabroń dostępu do historii przeglądania gdy tryb Tor był aktywny (krytyczne)">
<!ENTITY torbutton.prefs.resize_on_toggle "Skaluj okna do wielokrotności 50px podczas używania Tora (zalecane)">
<!ENTITY torbutton.prefs.close_tor "Zamykaj wszystkie karty i okna podczas zmiany trybu Tora (opcjonalne)">
-<!ENTITY torbutton.prefs.close_nontor "Zamykaj wszystkie okna i karty nie przeglądane w trybie Tor podczas zmiany trybu (opcjonalnie)">
+<!ENTITY torbutton.prefs.close_nontor "Zamykaj wszystkie okna i karty nie przeglądane w trybie Tor podczas zmiany trybu (opcjonalnie)">
<!ENTITY torbutton.prefs.block_links "Blokuj klikanie na łącza i przeładowania strony gdy zmienił się status Tora (opcjonalnie)">
-<!ENTITY torbutton.prefs.jar_certs "Zapisuj cetryfikaty SSL w osobnych magazynach, w każdym trybie (zalecane)">
+<!ENTITY torbutton.prefs.jar_certs "Zapisuj certyfikaty SSL w osobnych magazynach, w każdym trybie (zalecane)">
<!ENTITY torbutton.prefs.jar_ca_certs "Zapisuj certyfikaty CA w osobnych magazynach, w każdym trybie (zalecane)">
<!ENTITY torbutton.prefs.locked_mode "Zablokuj przycisk i gorące klawisze aby uniknąć przypadkowego przełączenia">
<!ENTITY torbutton.prefs.startup_state "Podczas normalnego uruchomienia, ustaw stan Tora na:">
<!ENTITY torbutton.prefs.shutdown_state "Stan przy wyłączeniu">
<!ENTITY torbutton.prefs.startup "Uruchomienie">
-<!ENTITY torbutton.prefs.block_tor_file_net "Blokuj dostęp do sieci z odnośników file:// (zalecane)">
-<!ENTITY torbutton.prefs.block_nontor_file_net "Blokuj dostęp do sieci z odnośników file:// (gdy Tor jest wyłączony)">
+<!ENTITY torbutton.prefs.block_tor_file_net "Blokuj dostęp do sieci z odnośników file:// urls (zalecane)">
+<!ENTITY torbutton.prefs.block_nontor_file_net "Blokuj dostęp do sieci z odnośników file:// urls (gdy Tor jest wyłączony)">
<!ENTITY torbutton.prefs.restore_defaults "Ustawienia domyślne">
<!ENTITY torbutton.prefs.test_settings "Testuj ustawienia">
<!ENTITY torbutton.prefs.test_auto "Testuj moje ustawienia podczas pierwszego włączenia Tora po starcie Firefoxa">
-<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
+<!ENTITY torbutton.prefs.disable_livemarks "Wyłącz uaktualnienia livemarks podczas używania Tora">
<!ENTITY torbutton.prefs.tor_memory_jar "Nie zapisuj ciasteczek Tora na dysk">
<!ENTITY torbutton.prefs.nontor_memory_jar "Nie zapisuj ciasteczek na dysk (tryb bez Tora)">
<!ENTITY torbutton.prefs.session_restore "Niech sesja zapamiętuje i przywraca te zakładki:">
@@ -116,10 +116,10 @@
<!ENTITY torbutton.prefs.no_proxy_warning "Uwaga: Unikaj podawania nazw hostów powyżej">
<!ENTITY torbutton.prefs.spoofreresh "Fałszuj odświeżanie">
<!ENTITY torbutton.prefs.refereroptions "Opcje fałszowania adresu zwrotnego">
-<!ENTITY torbutton.prefs.nospoof "No referer spoof during Tor usage (sends referers as normal)">
+<!ENTITY torbutton.prefs.nospoof "Nie fałszuj adresu zwrotnego w czasie używania Tora (wysyłaj adres normalnie)">
<!ENTITY torbutton.prefs.spoofroot "Wysyłaj folder zawierający stronę">
<!ENTITY torbutton.prefs.spoofdomain "Wysyłaj domenę jako adres zwrotny">
-<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
+<!ENTITY torbutton.prefs.spoofblank "Wysyłaj pusty adres zwrotny w czasie używania Tora (może zepsuć niektóre strony)">
<!ENTITY torbutton.cookiedialog.title "Zarządzaj ochroną ciasteczek">
<!ENTITY torbutton.cookiedialog.lockCol "Chronione">
<!ENTITY torbutton.cookiedialog.domainCol "Host">
@@ -131,11 +131,11 @@
<!ENTITY torbutton.cookiedialog.removeAllBut "Usuń wszystkie oprócz chronionych">
<!ENTITY torbutton.cookiedialog.saveAllCookies "Chroń nowe ciasteczka">
<!ENTITY torbutton.cookiedialog.doNotSaveAllCookies "Nie chroń nowych ciasteczek">
-<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
+<!ENTITY torbutton.prefs.disable_livemarks "Wyłącz uaktualnienia livemarks podczas używania Tora">
<!ENTITY torbutton.prefs.dtd_recommended "(zalecane)">
<!ENTITY torbutton.prefs.dtd_optional "(opcjonalne)">
<!ENTITY torbutton.prefs.dtd_crucial "(ważne)">
-<!ENTITY torbutton.prefs.update_torbutton_via_tor "Przekieruj aktualizajce Torbutton przez Tora">
+<!ENTITY torbutton.prefs.update_torbutton_via_tor "Przekieruj aktualizacje Torbutton przez Tora">
<!ENTITY torbutton.prefs.dodge_google_captcha "Automatycznie używaj alternatywnej wyszukiwarki, gdy natrafisz na Google Captcha:">
<!ENTITY torbutton.prefs.engine1 "ixquick.com">
<!ENTITY torbutton.prefs.engine2 "Bing.com">
diff --git a/src/chrome/locale/ru/torbutton.properties b/src/chrome/locale/ru/torbutton.properties
index 5c7ef40..f0f294d 100644
--- a/src/chrome/locale/ru/torbutton.properties
+++ b/src/chrome/locale/ru/torbutton.properties
@@ -21,13 +21,13 @@ torbutton.popup.test.auto_failed = Автоматический тест Tor pro
torbutton.prefs.recommended = (рекомендуется)
torbutton.prefs.optional = (по желанию)
torbutton.prefs.crucial = (критично)
-torbutton.popup.external.title = Download an external file type?
-torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
-torbutton.popup.launch = Download file
+torbutton.popup.external.title = Скачать внешний файл?
+torbutton.popup.external.app = Tor Browser не может показать этот файл. Вам необходимо открыть его с помощью другого приложения.\n\n
+torbutton.popup.external.note = Некоторые типы файлов могут вызвать приложения, соединяющиеся с сетью без использования Tor.\n\n
+torbutton.popup.external.suggest = Для безопасности, рекомендуется открывать файлы при отключенном интернет-соединении, или используя Tor Live CD, например Tails.\n
+torbutton.popup.launch = Скачать файл
torbutton.popup.cancel = Отменить
-torbutton.popup.dontask = Automatically download files from now on
+torbutton.popup.dontask = С этого момента скачивать файлы автоматически
torbutton.popup.test.no_http_proxy = Tor прокси-тест: Местные HTTP-прокси недоступны. Работает-ли Polipo должным образом?
torbutton.popup.captcha.title = Избегать Google Captcha?
torbutton.popup.captcha.ask = Torbutton обнаружил Google Captcha. Перенаправить запрос на другую поисковую систему?
diff --git a/src/chrome/locale/sv/torbutton.properties b/src/chrome/locale/sv/torbutton.properties
index 9648386..a08b3de 100644
--- a/src/chrome/locale/sv/torbutton.properties
+++ b/src/chrome/locale/sv/torbutton.properties
@@ -21,13 +21,13 @@ torbutton.popup.test.auto_failed = Den automatiska Tor proxy misslyckades att an
torbutton.prefs.recommended = (rekommenderat)
torbutton.prefs.optional = (valfritt)
torbutton.prefs.crucial = (kritiskt)
-torbutton.popup.external.title = Download an external file type?
-torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n
-torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n
-torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n
-torbutton.popup.launch = Download file
+torbutton.popup.external.title = Hämta hem en extern filtyp?
+torbutton.popup.external.app = Tor Browser kan inte visa filen. Du behöver öppna den i ett annat program.\n\n
+torbutton.popup.external.note = Vissa typer av filer kan få program att ansluta till internet utan att använda Tor.\n\n
+torbutton.popup.external.suggest = Det är säkrast att öppna filer du har hämtat hem bara när du är offline, eller så kan du använda en Tor Live CD som till exempel Tails.\n
+torbutton.popup.launch = Hämta hem filen
torbutton.popup.cancel = Avbryt
-torbutton.popup.dontask = Automatically download files from now on
+torbutton.popup.dontask = Hämta hem filer automatiskt i fortsättningen
torbutton.popup.test.no_http_proxy = Tor proxy test: Lokal HTTP Proxy är onåbar. Är Polipo igång ordentligt?
torbutton.popup.captcha.title = Undvik Google Captchas?
torbutton.popup.captcha.ask = Torbutton upptäckte en Google Captcha. Vill du att omdirigeras till en annan sökmotor för den här frågan?
diff --git a/src/chrome/locale/tr/aboutTor.dtd b/src/chrome/locale/tr/aboutTor.dtd
index 8000e0f..3c0402e 100644
--- a/src/chrome/locale/tr/aboutTor.dtd
+++ b/src/chrome/locale/tr/aboutTor.dtd
@@ -36,7 +36,7 @@
<!ENTITY aboutTor.whatnext.link "https://www.torproject.org/download/download.html.en#warning">
<!ENTITY aboutTor.helpInfo1.label "Yardım edebilirsiniz!">
<!ENTITY aboutTor.helpInfo2.label "Tor ağını daha hızlı ve daha güçlü yapmamız konusunda yardım edebilmeniz için bir çok yol var:">
-<!ENTITY aboutTor.helpInfo3.label "Tor aktarım düğümünü çalıştır »">
+<!ENTITY aboutTor.helpInfo3.label "Bir Tor Ayna Düğümü Çalıştır »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html.en">
<!ENTITY aboutTor.helpInfo4.label "Servislerinizi gönüllü yapın »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html.en">
diff --git a/src/chrome/locale/tr/torbutton.dtd b/src/chrome/locale/tr/torbutton.dtd
index 3ebfeae..7d5293d 100644
--- a/src/chrome/locale/tr/torbutton.dtd
+++ b/src/chrome/locale/tr/torbutton.dtd
@@ -1,13 +1,13 @@
<!ENTITY torbutton.prefs.title "Ayarlar">
-<!ENTITY torbutton.prefs.tor_settings "Proxy Ayarları">
-<!ENTITY torbutton.prefs.recommended_settings "Firefox'umda önerilen proxy ayarlarını kullan">
+<!ENTITY torbutton.prefs.tor_settings "Vekıl Sunucu Ayarları">
+<!ENTITY torbutton.prefs.recommended_settings "Firefox'umda önerilen vekil sunucu ayarlarını kullan">
<!ENTITY torbutton.prefs.use_privoxy "Privoxy'i kullan">
<!ENTITY torbutton.prefs.use_polipo "Polipo'yu kullan">
-<!ENTITY torbutton.prefs.custom_settings "Özel proxy ayarları kullan">
-<!ENTITY torbutton.prefs.proxy.host.http "HTTP Proxy:">
-<!ENTITY torbutton.prefs.proxy.host.https "SSL Proxy:">
-<!ENTITY torbutton.prefs.proxy.host.ftp "FTP Proxy:">
-<!ENTITY torbutton.prefs.proxy.host.gopher "Gopher Proxy:">
+<!ENTITY torbutton.prefs.custom_settings "Özel vekil sunucu ayarlarını kullan">
+<!ENTITY torbutton.prefs.proxy.host.http "HTTP Vekil Sunucusu:">
+<!ENTITY torbutton.prefs.proxy.host.https "SSL Vekil Sunucusu:">
+<!ENTITY torbutton.prefs.proxy.host.ftp "FTP Vekil Sunucusu:">
+<!ENTITY torbutton.prefs.proxy.host.gopher "Gopher Vekil Sunucusu:">
<!ENTITY torbutton.prefs.proxy.host.socks "SOCKS Host:">
<!ENTITY torbutton.prefs.proxy.port "Port:">
<!ENTITY torbutton.about.title "Torbutton Hakkında">
@@ -21,7 +21,7 @@
<!ENTITY torbutton.pref_connection.notice "Ayarları uygulumak için Torbutonu devredışı bırak.">
<!ENTITY torbutton.pref_connection.more_info "Daha fazla bilgi">
<!ENTITY torbutton.pref_connection_more_info.title "Yardım">
-<!ENTITY torbutton.pref_connection_more_info.text "Torbuton şu anda devredışı. Proxy ayarlarını değiştirmek istiyorsan, Torbutonu tekrar devredışı bırak. Genel ayarları değiştirecekten, ayarlar penceresini kullan.">
+<!ENTITY torbutton.pref_connection_more_info.text "Torbuton şu anda devredışı. Vekil sunucu ayarlarını değiştirmek istiyorsanız, Torbutonu tekrar devredışı bırakın. Genel ayarları değiştirecekseniz, ayarlar penceresini kullanın.">
<!ENTITY torbutton.context_menu.new_identity "Yeni Bağlantı">
<!ENTITY torbutton.context_menu.new_identity_key "S">
<!ENTITY torbutton.context_menu.toggle "Durum">
@@ -72,7 +72,7 @@
<!ENTITY torbutton.prefs.no_shutdown "Programı kapatığımda çerezlerimi silme">
<!ENTITY torbutton.prefs.disable_sessionstore "Oturum kaydı devredışı(tavsiye edilen)">
<!ENTITY torbutton.prefs.headers "Başlık Bilgileri">
-<!ENTITY torbutton.prefs.spoof_english "İngilizce web gezginlerini denetle">
+<!ENTITY torbutton.prefs.spoof_english "İngilizce Web Tarayıcılarını Aldat">
<!ENTITY torbutton.prefs.refererspoofing "Kastedilmiş Bilgi Hırsızlığı">
<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
<!ENTITY torbutton.prefs.smartspoof "Tor kullanırken akıllı referans aldatmacası kullan (siteler arası referansları aldatır)">
@@ -112,7 +112,7 @@
<!ENTITY torbutton.prefs.tor_tabs "Sekmeler Tor yüklendi">
<!ENTITY torbutton.prefs.socks_vfour "SOCKS v4">
<!ENTITY torbutton.prefs.socks_vfive "SOCKS v5">
-<!ENTITY torbutton.prefs.no_proxies_on "No Proxy'leri için">
+<!ENTITY torbutton.prefs.no_proxies_on "Şunun için vekil sunucu yok:">
<!ENTITY torbutton.prefs.no_proxy_warning "Uyarı: kaçının üzerinde herhangi bir sunucu isimleri kullanarak">
<!ENTITY torbutton.prefs.spoofreresh "Aldatmaca Yenile">
<!ENTITY torbutton.prefs.refereroptions "Referans Aldatmacası Ayarları">
@@ -143,7 +143,7 @@
<!ENTITY torbutton.prefs.engine4 "startpage.com">
<!ENTITY torbutton.prefs.engine5 "duckduckgo.com">
<!ENTITY torbutton.prefs.fix_google_srch "Kaldır platform ve Google Arama Kutusu gelen dil sorgular">
-<!ENTITY torbutton.prefs.transparentTor "Şeffaf torifikasyon(özel transproxy veya Tor yönlendiricisi gerekir)">
+<!ENTITY torbutton.prefs.transparentTor "Şeffaf Torifikasyon (özel transproxy veya Tor yönlendiricisi gerekir)">
<!ENTITY torbutton.prefs.block_disk "Tarama geçmişini ve web sitesi bilgilerini kaydetme (Özel Tarama Modu'nu aktifleştirir)">
<!ENTITY torbutton.prefs.restrict_thirdparty "3. parti çerezleri ve diğer iz sürücü bilgileri engelle.">
<!ENTITY torbutton.prefs.block_plugins "Flash gibi tarayıcı eklentilerini engelle.">
diff --git a/src/chrome/locale/tr/torbutton.properties b/src/chrome/locale/tr/torbutton.properties
index 7dc2a90..db32a46 100644
--- a/src/chrome/locale/tr/torbutton.properties
+++ b/src/chrome/locale/tr/torbutton.properties
@@ -36,7 +36,7 @@ torbutton.popup.redirect = Yönlendir
torbutton.popup.no_redirect = Yönlendirme
torbutton.popup.prompted_language = Daha fazla gizlilik icin, Torbutton sayfaların İngilizce versiyonlarını göstermeye çalışır. Bu özellik sayfaları anadilinizde görememenize sebep olabilir.\n\nSiz de daha fazla gizlilik için sayfaların İngilizce versiyonarını görüntülemek ister misiniz?
torbutton.popup.no_newnym = Torbutton size güvenli yeni bir kimlik sağlayamadı. Tor Control Port una giriş yapılamıyor.\n\nTor Browser Bundle nin çalıştığından emin olun.
-torbutton.popup.use_tbb = Görünüşe göre Turbutton u Firefox ile kullanıyorsunuz, bu tavsiye edilen bir güvenlik ayarlaması değildir.\n\nAslında, Size tavsiyemiz Tor Browseri gettor(a)torproject.org adresine mail göndererek veya şu adrese girerek edinmenizdir.
+torbutton.popup.use_tbb = Görünüşe göre Torbutton'ı Firefox ile kullanıyorsunuz, bu tavsiye edilen bir güvenlik ayarlaması değildir.\n\nAslında, Size tavsiyemiz Tor Tarayıcısını gettor(a)torproject.org adresine e-posta göndererek veya şu adrese girerek edinmenizdir.
torbutton.popup.pref_error = Torbutton, Tor Browser profil klasörünün içinde seçenekleri güncelleyemez.
torbutton.popup.permission_denied = Lütfen Tor Browser klasörünün izinlerini sıfırlayın ya da O nu farklı bir konuma taşıyın.
torbutton.popup.device_full = Disk dolu gözüküyor. Lütfen diskte yer açın ya da Tor Browser i farklı bir konuma taşıyın.
1
0

[torbutton/master] Add changelog and bump version for 1.6.10.0.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit c7d0b46de6645d3888f205f6e7ae95b77c153ae6
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Jun 5 05:08:45 2014 -0700
Add changelog and bump version for 1.6.10.0.
---
src/CHANGELOG | 7 +++++++
src/install.rdf | 2 +-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/CHANGELOG b/src/CHANGELOG
index edf33dd..dbcf7b3 100644
--- a/src/CHANGELOG
+++ b/src/CHANGELOG
@@ -1,3 +1,10 @@
+1.6.10.0
+ 5 Jun 2014
+ * Bug 11510: about:tor should not report success if tor proxy is unreachable
+ * Bug 11783: Avoid b.webProgress error when double-clicking on New Identity
+ * Bug 11722: Add hidden pref to force remote Tor check
+ * Bug 11763: Fix pref dialog double-click race that caused settings to be reset
+
1.6.9.0:
25 Apr 2014
* Bug 7439: Improve download warning dialog text.
diff --git a/src/install.rdf b/src/install.rdf
index 428595d..d4483a3 100644
--- a/src/install.rdf
+++ b/src/install.rdf
@@ -6,7 +6,7 @@
<em:name>Torbutton</em:name>
<em:creator>Mike Perry</em:creator>
<em:id>torbutton(a)torproject.org</em:id>
- <em:version>1.6.9.0</em:version>
+ <em:version>1.6.10.0</em:version>
<em:homepageURL>https://www.torproject.org/projects/torbrowser.html.en</em:homepageURL>
<em:optionsURL>chrome://torbutton/content/preferences.xul</em:optionsURL>
<em:iconURL>chrome://torbutton/skin/tor.png</em:iconURL>
1
0

[tor-browser/tor-browser-24.5.0esr-4.x-1] Bug #9701: Prevent ClipBoardCache from writing to disk.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit 80fcc83fc269eb5b370700646f12cd0b099f1e3c
Author: Michael Schloh von Bennewitz <michael(a)schloh.com>
Date: Thu Jun 5 03:53:15 2014 -0700
Bug #9701: Prevent ClipBoardCache from writing to disk.
This disables the disk activity entirely. It seems as though there is no
reason in to write backup copies of clipboard data to disk, as the clipboard
code does not release the related memory upon disk writes anyway.
See https://trac.torproject.org/projects/tor/ticket/9701.
---
widget/xpwidgets/nsTransferable.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/widget/xpwidgets/nsTransferable.cpp b/widget/xpwidgets/nsTransferable.cpp
index 2f15f47..d94ecd9 100644
--- a/widget/xpwidgets/nsTransferable.cpp
+++ b/widget/xpwidgets/nsTransferable.cpp
@@ -58,6 +58,7 @@ DataStruct::~DataStruct()
void
DataStruct::SetData ( nsISupports* aData, uint32_t aDataLen )
{
+#if 0 // Remove unnecessary disk caching to accommodate https://www.torproject.org/projects/torbrowser/design/#disk-avoidance
// Now, check to see if we consider the data to be "too large"
if (aDataLen > kLargeDatasetSize) {
// if so, cache it to disk instead of memory
@@ -66,6 +67,7 @@ DataStruct::SetData ( nsISupports* aData, uint32_t aDataLen )
else
NS_WARNING("Oh no, couldn't write data to the cache file");
}
+#endif // #if 0
mData = aData;
mDataLen = aDataLen;
1
0

[tor-browser/tor-browser-24.5.0esr-4.x-1] fixup! Randomize HTTP request order and pipeline depth.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit 90a820bc1619812881eefdc9f9ea35205a5489d2
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Jun 5 03:48:45 2014 -0700
fixup! Randomize HTTP request order and pipeline depth.
Bug 10355 testing: Randomize pipeline depth regardless of aggressive setting.
---
netwerk/protocol/http/nsHttpConnectionMgr.cpp | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/netwerk/protocol/http/nsHttpConnectionMgr.cpp b/netwerk/protocol/http/nsHttpConnectionMgr.cpp
index a02fe07..931278c 100644
--- a/netwerk/protocol/http/nsHttpConnectionMgr.cpp
+++ b/netwerk/protocol/http/nsHttpConnectionMgr.cpp
@@ -3198,11 +3198,13 @@ nsConnectionEntry::nsConnectionEntry(nsHttpConnectionInfo *ci)
, mPreferIPv6(false)
{
NS_ADDREF(mConnInfo);
+
+ // Randomize the pipeline depth (3..12)
+ mGreenDepth = gHttpHandler->GetMaxOptimisticPipelinedRequests()
+ + rand() % (gHttpHandler->GetMaxPipelinedRequests()
+ - gHttpHandler->GetMaxOptimisticPipelinedRequests());
+
if (gHttpHandler->GetPipelineAggressive()) {
- // Randomize the pipeline depth (3..12)
- mGreenDepth = gHttpHandler->GetMaxOptimisticPipelinedRequests()
- + rand() % (gHttpHandler->GetMaxPipelinedRequests()
- - gHttpHandler->GetMaxOptimisticPipelinedRequests());
mPipelineState = PS_GREEN;
}
1
0

[tor-browser/tor-browser-24.5.0esr-1] Bug #9701: Prevent ClipBoardCache from writing to disk.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit 8088761c016eecba6d3e223fdc2965353577d735
Author: Michael Schloh von Bennewitz <michael(a)schloh.com>
Date: Thu Jun 5 03:53:15 2014 -0700
Bug #9701: Prevent ClipBoardCache from writing to disk.
This disables the disk activity entirely. It seems as though there is no
reason in to write backup copies of clipboard data to disk, as the clipboard
code does not release the related memory upon disk writes anyway.
See https://trac.torproject.org/projects/tor/ticket/9701.
---
widget/xpwidgets/nsTransferable.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/widget/xpwidgets/nsTransferable.cpp b/widget/xpwidgets/nsTransferable.cpp
index 2f15f47..d94ecd9 100644
--- a/widget/xpwidgets/nsTransferable.cpp
+++ b/widget/xpwidgets/nsTransferable.cpp
@@ -58,6 +58,7 @@ DataStruct::~DataStruct()
void
DataStruct::SetData ( nsISupports* aData, uint32_t aDataLen )
{
+#if 0 // Remove unnecessary disk caching to accommodate https://www.torproject.org/projects/torbrowser/design/#disk-avoidance
// Now, check to see if we consider the data to be "too large"
if (aDataLen > kLargeDatasetSize) {
// if so, cache it to disk instead of memory
@@ -66,6 +67,7 @@ DataStruct::SetData ( nsISupports* aData, uint32_t aDataLen )
else
NS_WARNING("Oh no, couldn't write data to the cache file");
}
+#endif // #if 0
mData = aData;
mDataLen = aDataLen;
1
0

[tor-browser/tor-browser-24.5.0esr-1] fixup! Randomize HTTP request order and pipeline depth.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit b938631c83089e7ffe091c1b5ebe47aae45a3509
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Jun 5 03:48:45 2014 -0700
fixup! Randomize HTTP request order and pipeline depth.
Bug 10355 testing: Randomize pipeline depth regardless of aggressive setting.
---
netwerk/protocol/http/nsHttpConnectionMgr.cpp | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/netwerk/protocol/http/nsHttpConnectionMgr.cpp b/netwerk/protocol/http/nsHttpConnectionMgr.cpp
index a02fe07..931278c 100644
--- a/netwerk/protocol/http/nsHttpConnectionMgr.cpp
+++ b/netwerk/protocol/http/nsHttpConnectionMgr.cpp
@@ -3198,11 +3198,13 @@ nsConnectionEntry::nsConnectionEntry(nsHttpConnectionInfo *ci)
, mPreferIPv6(false)
{
NS_ADDREF(mConnInfo);
+
+ // Randomize the pipeline depth (3..12)
+ mGreenDepth = gHttpHandler->GetMaxOptimisticPipelinedRequests()
+ + rand() % (gHttpHandler->GetMaxPipelinedRequests()
+ - gHttpHandler->GetMaxOptimisticPipelinedRequests());
+
if (gHttpHandler->GetPipelineAggressive()) {
- // Randomize the pipeline depth (3..12)
- mGreenDepth = gHttpHandler->GetMaxOptimisticPipelinedRequests()
- + rand() % (gHttpHandler->GetMaxPipelinedRequests()
- - gHttpHandler->GetMaxOptimisticPipelinedRequests());
mPipelineState = PS_GREEN;
}
1
0

[torbutton/master] Fix #12172: Enhance makepkg.sh to create the pkg directory if doesn't already exist
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit 4af89e0cace0d638d6793a6d8fecd475e263d693
Author: Arthur Edelstein <arthuredelstein(a)gmail.com>
Date: Mon Jun 2 11:40:31 2014 -0700
Fix #12172: Enhance makepkg.sh to create the pkg directory if doesn't already exist
---
makexpi.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/makexpi.sh b/makexpi.sh
index 580bcf5..4d01e2c 100755
--- a/makexpi.sh
+++ b/makexpi.sh
@@ -17,6 +17,8 @@ cd ../..
# create .xpi
echo ---------- create $APP_NAME.xpi ----------
+# create the pkg directory if it doesn't exist yet
+mkdir -p pkg
cd src
echo zip -X -9r ../pkg/$XPI_NAME ./ -x "chrome/*" -x "*.diff" -x "*.svn/*"
zip -X -9r ../pkg/$XPI_NAME ./ -x "*.svn/*" -x "*.diff" -x "components/torRefSpoofer.js" #-x "chrome/*"
1
0
commit 888fed495d12475444747b527663fefaff907753
Author: Arthur Edelstein <arthuredelstein(a)gmail.com>
Date: Mon Jun 2 11:14:37 2014 -0700
remove obsolete jshooks files
---
src/chrome/content/jshooks.js | 362 ---------------------------------------
src/chrome/content/jshooks4.js | 267 -----------------------------
src/chrome/content/torbutton.js | 1 -
3 files changed, 630 deletions(-)
diff --git a/src/chrome/content/jshooks.js b/src/chrome/content/jshooks.js
deleted file mode 100644
index a47cb5a..0000000
--- a/src/chrome/content/jshooks.js
+++ /dev/null
@@ -1,362 +0,0 @@
-// Bug 1506 P0: These hooks are only relevant to FF 3.5 and below.
-
-window.__HookObjects = function() {
- if (typeof(window.__tb_hooks_ran) === "boolean") {
- return false;
- }
-
-
- /* For reference/debugging only:
- if(false && window.__tb_set_uagent===true) {
- var tmp_oscpu = window.__tb_oscpu;
- var tmp_platform = window.__tb_platform;
- var tmp_productSub = window.__tb_productSub;
-
- try {
- if(!(window.navigator.__proto__ == null) ||
- typeof(window.navigator.__defineGetter__) === "function") {
- var cE = window.navigator.cookieEnabled;
- var lang = window.navigator.language;
- var uA = window.navigator.userAgent;
- var v = window.navigator.vendor;
- var vS = window.navigator.vendorSub;
- var jE = window.navigator.javaEnabled;
- var pl = new window.Array();
- var mT = new window.Object();
- //var pl = window.navigator.plugins;
- //var mT = window.navigator.mimeTypes;
-
- window.navigator.__defineGetter__("appCodeName", function() { return "Mozilla";});
- window.navigator.__defineGetter__("appName", function() { return "Netscape";});
- window.navigator.__defineGetter__("appVersion", function() { return "5.0";});
- window.navigator.__defineGetter__("buildID", function() { return 0;});
- window.navigator.__defineGetter__("cookieEnabled", function() { return cE;});
- window.navigator.__defineGetter__("language", function() { return lang;});
- window.navigator.__defineGetter__("mimeTypes", function() { return mT;});
- window.navigator.__defineGetter__("onLine", function() { return true;});
- window.navigator.__defineGetter__("oscpu", function() { return tmp_oscpu;});
- window.navigator.__defineGetter__("platform", function() { return tmp_platform;});
- window.navigator.__defineGetter__("plugins", function() { return pl;});
- window.navigator.__defineGetter__("product", function() { return "Gecko";});
- window.navigator.__defineGetter__("productSub", function() { return tmp_productSub;});
- window.navigator.__defineGetter__("securityPolicy", function() { return "";});
- window.navigator.__defineGetter__("userAgent", function() { return uA;});
- window.navigator.__defineGetter__("vendor", function() { return v;});
- window.navigator.__defineGetter__("vendorSub", function() { return vS;});
- window.navigator.__defineGetter__("javaEnabled", function() { return jE;});
- window.navigator.__proto__ = null;
- }
- } catch(e) {
- }
- } */
-
-
- /* Hrmm.. Is it possible this breaks plugin install or other weird shit
- for non-windows OS's? */
- if(window.__tb_set_uagent===true) {
- var tmp_oscpu = window.__tb_oscpu;
- var tmp_platform = window.__tb_platform;
- var tmp_productSub = window.__tb_productSub;
- var tmp_locale = window.__tb_locale;
-
- // This is just unreasonable.. Firefox caches
- // window.navigator.__proto__ between same-origin loads of a document.
- // So this means when we null it out, we lose most of the navigator
- // object for subsequent loads. I tried doing the whole-object hooks
- // like we do for Date, screen, and history, but it seems to behave
- // like Date upon delete, allowing unmasking for that case. Talk about
- // rock+hard place.
- try {
- if(!(window.navigator.__proto__ == null) ||
- typeof(window.navigator.__defineGetter__) === "function") {
- var tmpNav = new window.Object();
- for(var i in window.navigator) {
- tmpNav[i] = window.navigator[i];
-
- // XPCNative objects are special for some reason. So far,
- // all we have are "plugins" and mimeTypes, which
- // are empty anyways. Disable them.
- //if(tmpNav[i].toString().indexOf("XPCNative") != -1) {
- if(i === "plugins" || i === "mimeTypes") {
- tmpNav[i] = new Array();
- }
- (function() { // crazy scope hack to preserve i
- var holder = i;
- window.navigator.__defineGetter__(i, function() { return tmpNav[holder];});
- })();
- }
-
- if(tmp_locale != false) {
- window.navigator.__defineGetter__("language", function() { return tmp_locale;});
- }
- window.navigator.__defineGetter__("oscpu", function() { return tmp_oscpu;});
- window.navigator.__defineGetter__("productSub", function() { return tmp_productSub;});
- window.navigator.__defineGetter__("buildID", function() { return 0;});
- window.navigator.__proto__ = null;
- }
- } catch(e) {
- }
- }
-
- // No pref for this.. Should be mostly harmless..
- if(true) {
- var origHeight = window.innerHeight;
- var origWidth = window.innerWidth;
- window.__proto__.__defineGetter__("innerHeight", function() { return Math.round(origHeight/50.0)*50;});
- window.__proto__.__defineGetter__("innerWidth", function() { return Math.round(origWidth/50.0)*50;});
- window.__proto__.__defineGetter__("outerWidth", function() { return window.innerWidth;});
- window.__proto__.__defineGetter__("outerHeight", function() { return window.innerHeight;});
- window.__proto__.__defineGetter__("screenX", function() { return 0;});
- window.__proto__.__defineGetter__("screenY", function() { return 0;});
- window.__proto__.__defineGetter__("pageXOffset", function() { return 0;});
- window.__proto__.__defineGetter__("pageYOffset", function() { return 0;});
-
- // Wrap in anonymous function to protect scr variables just in case.
- (function () {
- // We can't define individual getters/setters for window.screen
- // for some reason. works in html but not in these hooks.. No idea why
-
- var scr = new Object();
- var origScr = window.screen;
- scr.__defineGetter__("height", function() { return window.innerHeight; });
- scr.__defineGetter__("width", function() { return window.innerWidth; });
-
- scr.__defineGetter__("availTop", function() { return 0;});
- scr.__defineGetter__("availLeft", function() { return 0;});
-
- scr.__defineGetter__("top", function() { return 0;});
- scr.__defineGetter__("left", function() { return 0;});
-
- scr.__defineGetter__("availHeight", function() { return window.innerHeight;});
- scr.__defineGetter__("availWidth", function() { return window.innerWidth;});
-
- scr.__defineGetter__("colorDepth", function() { return origScr.colorDepth;});
- scr.__defineGetter__("pixelDepth", function() { return origScr.pixelDepth;});
-
- scr.__defineGetter__("availTop", function() { return 0;});
- scr.__defineGetter__("availLeft", function() { return 0;});
-
- window.__defineGetter__("screen", function() { return scr; });
- window.__defineSetter__("screen", function(a) { return; });
- window.__proto__.__defineGetter__("screen", function() { return scr; });
-
- // Needed for Firefox bug 418983:
- with(window) {
- var screen = scr;
- }
-
- })();
-
- }
-
-
- if(window.__tb_hook_date == true) { // don't feel like indenting this
-
- /* Timezone fix for http://gemal.dk/browserspy/css.html */
- var reparseDate = function(d, str) {
- /* Rules:
- * - If they specify a timezone, it is converted to local
- * time. All getter fucntions then convert properly to
- * UTC. No mod needed.
- * - If they specify UTC timezone, then it is converted
- * to local time. All getter functions then convert back.
- * No mod needed.
- * - If they specify NO timezone, it is local time.
- * The UTC conversion then reveals the offset. Fix.
- */
-
- /* Step 1: Remove everything inside ()'s (they are "comments") */
- var s = str.toLowerCase();
- var re = new RegExp('\\(.*\\)', "gm");
- s = s.replace(re, "");
-
- /* Step 2: Look for +/-. If found, do nothing */
- if(s.indexOf("+") == -1 && s.indexOf("-") == -1) {
- /* Step 3: Look for timezone string from
- * http://lxr.mozilla.org/seamonkey/source/js/src/jsdate.c
- */
- if(s.indexOf(" gmt") == -1 && s.indexOf(" ut") == -1 &&
- s.indexOf(" est") == -1 && s.indexOf(" edt") == -1 &&
- s.indexOf(" cst") == -1 && s.indexOf(" cdt") == -1 &&
- s.indexOf(" mst") == -1 && s.indexOf(" mdt") == -1 &&
- s.indexOf(" pst") == -1 && s.indexOf(" pdt")) {
- /* No timezone specified. Adjust. */
- d.setTime(d.getTime()-(d.getTimezoneOffset()*60000));
- }
- }
- }
-
- var origDate = window.Date;
- var newDate = function() {
- /* DO NOT make 'd' a member! EvilCode will use it! */
- var d;
- var a = arguments;
- /* apply doesn't seem to work for constructors :( */
- if(arguments.length == 0) d=new origDate();
- if(arguments.length == 1) d=new origDate(a[0]);
- if(arguments.length == 3) d=new origDate(a[0],a[1],a[2]);
- if(arguments.length == 4) d=new origDate(a[0],a[1],a[2],a[3]);
- if(arguments.length == 5) d=new origDate(a[0],a[1],a[2],a[3],a[4]);
- if(arguments.length == 6) d=new origDate(a[0],a[1],a[2],a[3],a[4],a[5]);
- if(arguments.length == 7) d=new origDate(a[0],a[1],a[2],a[3],a[4],a[5],a[6]);
- if(arguments.length > 7) d=new origDate();
-
- if(arguments.length > 0) {
- if((arguments.length == 1) && typeof(a[0]) == "string") {
- reparseDate(d,a[0]);
- } else if(arguments.length > 1) {
- /* Numerical value. No timezone given, adjust. */
- d.setTime(d.getTime()-(d.getTimezoneOffset()*60000));
- }
- }
-
- // XXX: the native valueOf seems to sometimes return toString and
- // sometimes return getTime depending on context (which we can't detect)
- // It seems as though we can't win here..
- window.Date.prototype.valueOf=function(){return d.getTime()};
- window.Date.prototype.getTime=function(){return d.getTime();} /* UTC already */
- window.Date.prototype.getFullYear=function(){return d.getUTCFullYear();}
- window.Date.prototype.getYear=function() {return d.getYear();}
- window.Date.prototype.getMonth=function(){return d.getUTCMonth();}
- window.Date.prototype.getDate=function() {return d.getUTCDate();}
- window.Date.prototype.getDay=function() {return d.getUTCDay();}
- window.Date.prototype.getHours=function(){return d.getUTCHours();}
- window.Date.prototype.getMinutes=function(){return d.getUTCMinutes();}
- window.Date.prototype.getSeconds=function(){return d.getUTCSeconds();}
- window.Date.prototype.getMilliseconds=function(){return d.getUTCMilliseconds();}
- window.Date.prototype.getTimezoneOffset=function(){return 0;}
-
- window.Date.prototype.setTime =
- function(x) {return d.setTime(x);}
- window.Date.prototype.setFullYear=function(x){return d.setUTCFullYear(x);}
- window.Date.prototype.setYear=function(x){return d.setYear(x);}
- window.Date.prototype.setMonth=function(x){return d.setUTCMonth(x);}
- window.Date.prototype.setDate=function(x){return d.setUTCDate(x);}
- window.Date.prototype.setDay=function(x){return d.setUTCDay(x);}
- window.Date.prototype.setHours=function(x){return d.setUTCHours(x);}
- window.Date.prototype.setMinutes=function(x){return d.setUTCMinutes(x);}
- window.Date.prototype.setSeconds=function(x){return d.setUTCSeconds(x);}
- window.Date.prototype.setMilliseconds=
- function(x) {return d.setUTCMilliseconds(x);}
-
- window.Date.prototype.getUTCFullYear=function(){return d.getUTCFullYear();}
- window.Date.prototype.getUTCMonth=function(){return d.getUTCMonth();}
- window.Date.prototype.getUTCDate=function() {return d.getUTCDate();}
- window.Date.prototype.getUTCDay=function() {return d.getUTCDay();}
- window.Date.prototype.getUTCHours=function(){return d.getUTCHours();}
- window.Date.prototype.getUTCMinutes=function(){return d.getUTCMinutes();}
- window.Date.prototype.getUTCSeconds=function(){return d.getUTCSeconds();}
- window.Date.prototype.getUTCMilliseconds=
- function(){return d.getUTCMilliseconds();}
-
- window.Date.prototype.setUTCFullYear=function(x){return d.setUTCFullYear(x);}
- window.Date.prototype.setUTCMonth=function(x){return d.setUTCMonth(x);}
- window.Date.prototype.setUTCDate=function(x){return d.setUTCDate(x);}
- window.Date.prototype.setUTCDay=function(x){return d.setUTCDay(x);}
- window.Date.prototype.setUTCHours=function(x){return d.setUTCHours(x);}
- window.Date.prototype.setUTCMinutes=function(x){return d.setUTCMinutes(x);}
- window.Date.prototype.setUTCSeconds=function(x){return d.setUTCSeconds(x);}
- window.Date.prototype.setUTCMilliseconds=
- function(x) {return d.setUTCMilliseconds(x);}
-
- window.Date.prototype.toUTCString=function(){return d.toUTCString();}
- window.Date.prototype.toGMTString=function(){return d.toGMTString();}
- window.Date.prototype.toString=function(){return d.toUTCString();}
- window.Date.prototype.toLocaleString=function(){return d.toUTCString();}
-
- /* Fuck 'em if they can't take a joke: */
- window.Date.prototype.toLocaleTimeString=function(){return d.toUTCString();}
- window.Date.prototype.toLocaleDateString=function(){return d.toUTCString();}
- window.Date.prototype.toDateString=function(){return d.toUTCString();}
- window.Date.prototype.toTimeString=function(){return d.toUTCString();}
-
- /* Hack to solve the problem of multiple date objects
- * all sharing the same lexically scoped d every time a new one is
- * created. This hack creates a fresh new prototype reference for
- * the next object to use with a different d binding.
- * It doesn't break stuff because at the start of this function,
- * the interpreter grabbed a reference to Date.prototype. During
- * this function we modified Date.prototype to create the new methods
- * with the lexically scoped d reference.
- */
-
- // valueOf gets called for implicit string conversion??
- window.Date.prototype = window.eval(window.Object.prototype.toSource());
- return d.toUTCString();
- }
-
- // Need to do this madness so that we use the window's notion of Function
- // for the constructor. If this is not done, then changes to Function
- // and Object in the real window are not propogated to Date (for example,
- // to extend the Date class with extra functions via a generic inheritance
- // framework added onto Object - this is done by livejournal and others)
- var newWrappedDate = window.eval("function() { return newDate(); }");
-
- newWrappedDate.parse=function(s) {
- var d = new origDate(s);
- if(typeof(s) == "string") reparseDate(d, s);
- return d.getTime();
- }
-
- newWrappedDate.now=function(){return origDate.now();}
- newWrappedDate.UTC=function(){return origDate.apply(origDate, arguments); }
-
- // d = new Date();
- // d.__proto__ === Date.prototype
- // d.constructor === Date
- // d.__proto__ === d.constructor.prototype
- // Date.prototype.__proto__ === Date.prototype.constructor.prototype
- // window.__proto__ === Window.prototypea
-
- // XXX: This is still not enough.. But at least we get to claim the
- // unmasking is violating ECMA-262 by allowing the deletion of var's
- // (FF Bug 419598)
- with(window) {
- var Date = newWrappedDate;
- }
-
- } // window.__tb_hook_date == true
-
- with(window) {
- XPCNativeWrapper = function(a) { return a; };
- }
- with(window.__proto__) {
- XPCNativeWrapper = function(a) { return a; };
- }
-
- // Gain access to the implict global object (which interestingly claims
- // to be a 'Window' but is not the same class as 'window'...) and
- // hide XPCNativeWrapper there.
- // This seems no longer necessary in FF2.0.0.13+, and may break FF3?
- //with(window.valueOf.call().__proto__) {
- // XPCNativeWrapper = function(a) { return a; };
- //}
-
- // FIXME: Commenting this may open us to unmasking, but allows the hooks to
- // work on FF4. Since we lost the bulletproof resolution masking battle to
- // CSS3 anyways, let's just do what we can.
- //window.__proto__ = null; // Prevent delete from unmasking our properties.
- return true;
-}
-
-if (typeof(window.__HookObjects) != "undefined") {
- var res = 23;
-
- if(!window.__HookObjects()) {
- res = 13;
- }
-
- window.__HookObjects = undefined;
- delete window['__HookObjects'];
- delete window['__CheckFlag'];
- delete window['__tb_set_uagent'];
- delete window['__tb_oscpu'];
- delete window['__tb_platform'];
- delete window['__tb_productSub'];
-
- window.__tb_hooks_ran = true;
-
- res; // Secret result code.
-} else {
- 42;
-}
diff --git a/src/chrome/content/jshooks4.js b/src/chrome/content/jshooks4.js
deleted file mode 100644
index c15e5c5..0000000
--- a/src/chrome/content/jshooks4.js
+++ /dev/null
@@ -1,267 +0,0 @@
-// Bug 1506 P1: We're almost certainly going to replace this stuff with direct
-// patches of the JS VM.
-
-window.__HookObjects = function() {
- if (typeof(window.__tb_hooks_ran) === "boolean") {
- return false;
- }
-
- // No pref for this.. Should be mostly harmless..
- if(true) {
- // Wrap in anonymous function to protect scr variables just in case.
- (function () {
- var origHeight = window.innerHeight;
- var origWidth = window.innerWidth;
-
- Object.defineProperty(window.__proto__, "innerWidth",
- {get: function() { return Math.round(origWidth/50.0)*50;},
- configurable: false});
- Object.defineProperty(window.__proto__, "innerHeight",
- {get: function() { return Math.round(origHeight/50.0)*50;},
- configurable: false});
- Object.defineProperty(window.__proto__, "outerWidth",
- {get: function() { return Math.round(origWidth/50.0)*50;},
- configurable: false});
- Object.defineProperty(window.__proto__, "outerHeight",
- {get: function() { return Math.round(origHeight/50.0)*50;},
- configurable: false});
- Object.defineProperty(window.__proto__, "screenX",
- {get: function() { return 0;},
- configurable: false});
- Object.defineProperty(window.__proto__, "screenY",
- {get: function() { return 0;},
- configurable: false});
- Object.defineProperty(MouseEvent.prototype, "screenX",
- {get: function() { return this.clientX;},
- configurable: false});
- Object.defineProperty(MouseEvent.prototype, "screenY",
- {get: function() { return this.clientY;},
- configurable: false});
-
- // We can't define individual getters/setters for window.screen
- // for some reason. works in html but not in these hooks.. No idea why
-
- var scr = new Object();
- var origScr = window.screen;
- scr.__defineGetter__("height", function() { return window.innerHeight; });
- scr.__defineGetter__("width", function() { return window.innerWidth; });
-
- scr.__defineGetter__("availTop", function() { return 0;});
- scr.__defineGetter__("availLeft", function() { return 0;});
-
- scr.__defineGetter__("top", function() { return 0;});
- scr.__defineGetter__("left", function() { return 0;});
-
- scr.__defineGetter__("availHeight", function() { return window.innerHeight;});
- scr.__defineGetter__("availWidth", function() { return window.innerWidth;});
-
- scr.__defineGetter__("colorDepth", function() { return origScr.colorDepth;});
- scr.__defineGetter__("pixelDepth", function() { return origScr.pixelDepth;});
-
- scr.__defineGetter__("availTop", function() { return 0;});
- scr.__defineGetter__("availLeft", function() { return 0;});
-
- Object.defineProperty(window.__proto__, "screen",
- {get: function() { return scr;},
- configurable: false});
-
- })();
-
- }
-
- if(window.__tb_hook_date == true) { // don't feel like indenting this
- // XXX: events should not have timeStamp, unless they are of type MozBeforePaint?
-
- /* Timezone fix for http://gemal.dk/browserspy/css.html */
- var reparseDate = function(d, str) {
- /* Rules:
- * - If they specify a timezone, it is converted to local
- * time. All getter fucntions then convert properly to
- * UTC. No mod needed.
- * - If they specify UTC timezone, then it is converted
- * to local time. All getter functions then convert back.
- * No mod needed.
- * - If they specify NO timezone, it is local time.
- * The UTC conversion then reveals the offset. Fix.
- */
-
- /* Step 1: Remove everything inside ()'s (they are "comments") */
- var s = str.toLowerCase();
- var re = new RegExp('\\(.*\\)', "gm");
- s = s.replace(re, "");
-
- /* Step 2: Look for +/-. If found, do nothing */
- if(s.indexOf("+") == -1 && s.indexOf("-") == -1) {
- /* Step 3: Look for timezone string from
- * http://lxr.mozilla.org/seamonkey/source/js/src/jsdate.c
- */
- if(s.indexOf(" gmt") == -1 && s.indexOf(" ut") == -1 &&
- s.indexOf(" est") == -1 && s.indexOf(" edt") == -1 &&
- s.indexOf(" cst") == -1 && s.indexOf(" cdt") == -1 &&
- s.indexOf(" mst") == -1 && s.indexOf(" mdt") == -1 &&
- s.indexOf(" pst") == -1 && s.indexOf(" pdt")) {
- /* No timezone specified. Adjust. */
- d.setTime(d.getTime()-(d.getTimezoneOffset()*60000));
- }
- }
- }
-
- // XXX: Each origin should have its own unique offset from the real date
- // XXX: Subsequent calls to the ms timer should be monotonically increasing, but randomized
-
- var origDate = window.Date;
- var newDate = function() {
- /* DO NOT make 'd' a member! EvilCode will use it! */
- var d;
- var a = arguments;
- /* apply doesn't seem to work for constructors :( */
- if(arguments.length == 0) d=new origDate();
- if(arguments.length == 1) d=new origDate(a[0]);
- if(arguments.length == 3) d=new origDate(a[0],a[1],a[2]);
- if(arguments.length == 4) d=new origDate(a[0],a[1],a[2],a[3]);
- if(arguments.length == 5) d=new origDate(a[0],a[1],a[2],a[3],a[4]);
- if(arguments.length == 6) d=new origDate(a[0],a[1],a[2],a[3],a[4],a[5]);
- if(arguments.length == 7) d=new origDate(a[0],a[1],a[2],a[3],a[4],a[5],a[6]);
- if(arguments.length > 7) d=new origDate();
-
- if(arguments.length > 0) {
- if((arguments.length == 1) && typeof(a[0]) == "string") {
- reparseDate(d,a[0]);
- } else if(arguments.length > 1) {
- /* Numerical value. No timezone given, adjust. */
- d.setTime(d.getTime()-(d.getTimezoneOffset()*60000));
- }
- }
-
- // XXX: the native valueOf seems to sometimes return toString and
- // sometimes return getTime depending on context (which we can't detect)
- // It seems as though we can't win here..
- window.Date.prototype.valueOf=function(){return d.getTime()};
- window.Date.prototype.getTime=function(){return d.getTime();} /* UTC already */
- window.Date.prototype.getFullYear=function(){return d.getUTCFullYear();}
- window.Date.prototype.getYear=function() {return d.getYear();}
- window.Date.prototype.getMonth=function(){return d.getUTCMonth();}
- window.Date.prototype.getDate=function() {return d.getUTCDate();}
- window.Date.prototype.getDay=function() {return d.getUTCDay();}
- window.Date.prototype.getHours=function(){return d.getUTCHours();}
- window.Date.prototype.getMinutes=function(){return d.getUTCMinutes();}
- window.Date.prototype.getSeconds=function(){return d.getUTCSeconds();}
- window.Date.prototype.getMilliseconds=function(){return d.getUTCMilliseconds();}
- window.Date.prototype.getTimezoneOffset=function(){return 0;}
-
- window.Date.prototype.setTime =
- function(x) {return d.setTime(x);}
- window.Date.prototype.setFullYear=function(x){return d.setUTCFullYear(x);}
- window.Date.prototype.setYear=function(x){return d.setYear(x);}
- window.Date.prototype.setMonth=function(x){return d.setUTCMonth(x);}
- window.Date.prototype.setDate=function(x){return d.setUTCDate(x);}
- window.Date.prototype.setDay=function(x){return d.setUTCDay(x);}
- window.Date.prototype.setHours=function(x){return d.setUTCHours(x);}
- window.Date.prototype.setMinutes=function(x){return d.setUTCMinutes(x);}
- window.Date.prototype.setSeconds=function(x){return d.setUTCSeconds(x);}
- window.Date.prototype.setMilliseconds=
- function(x) {return d.setUTCMilliseconds(x);}
-
- window.Date.prototype.getUTCFullYear=function(){return d.getUTCFullYear();}
- window.Date.prototype.getUTCMonth=function(){return d.getUTCMonth();}
- window.Date.prototype.getUTCDate=function() {return d.getUTCDate();}
- window.Date.prototype.getUTCDay=function() {return d.getUTCDay();}
- window.Date.prototype.getUTCHours=function(){return d.getUTCHours();}
- window.Date.prototype.getUTCMinutes=function(){return d.getUTCMinutes();}
- window.Date.prototype.getUTCSeconds=function(){return d.getUTCSeconds();}
- window.Date.prototype.getUTCMilliseconds=
- function(){return d.getUTCMilliseconds();}
-
- window.Date.prototype.setUTCFullYear=function(x){return d.setUTCFullYear(x);}
- window.Date.prototype.setUTCMonth=function(x){return d.setUTCMonth(x);}
- window.Date.prototype.setUTCDate=function(x){return d.setUTCDate(x);}
- window.Date.prototype.setUTCDay=function(x){return d.setUTCDay(x);}
- window.Date.prototype.setUTCHours=function(x){return d.setUTCHours(x);}
- window.Date.prototype.setUTCMinutes=function(x){return d.setUTCMinutes(x);}
- window.Date.prototype.setUTCSeconds=function(x){return d.setUTCSeconds(x);}
- window.Date.prototype.setUTCMilliseconds=
- function(x) {return d.setUTCMilliseconds(x);}
-
- window.Date.prototype.toUTCString=function(){return d.toUTCString();}
- window.Date.prototype.toGMTString=function(){return d.toGMTString();}
- window.Date.prototype.toString=function(){return d.toUTCString();}
- window.Date.prototype.toLocaleString=function(){return d.toUTCString();}
-
- /* Fuck 'em if they can't take a joke: */
- window.Date.prototype.toLocaleTimeString=function(){return d.toUTCString();}
- window.Date.prototype.toLocaleDateString=function(){return d.toUTCString();}
- window.Date.prototype.toDateString=function(){return d.toUTCString();}
- window.Date.prototype.toTimeString=function(){return d.toUTCString();}
-
- /* Hack to solve the problem of multiple date objects
- * all sharing the same lexically scoped d every time a new one is
- * created. This hack creates a fresh new prototype reference for
- * the next object to use with a different d binding.
- * It doesn't break stuff because at the start of this function,
- * the interpreter grabbed a reference to Date.prototype. During
- * this function we modified Date.prototype to create the new methods
- * with the lexically scoped d reference.
- */
-
- // valueOf gets called for implicit string conversion??
- window.Date.prototype = window.eval(window.Object.prototype.toSource());
- return d.toUTCString();
- }
-
- // Need to do this madness so that we use the window's notion of Function
- // for the constructor. If this is not done, then changes to Function
- // and Object in the real window are not propogated to Date (for example,
- // to extend the Date class with extra functions via a generic inheritance
- // framework added onto Object - this is done by livejournal and others)
- var newWrappedDate = window.eval("function() { return newDate(); }");
-
- newWrappedDate.parse=function(s) {
- var d = new origDate(s);
- if(typeof(s) == "string") reparseDate(d, s);
- return d.getTime();
- }
-
- newWrappedDate.now=function(){return origDate.now();}
- newWrappedDate.UTC=function(){return origDate.apply(origDate, arguments); }
-
- // d = new Date();
- // d.__proto__ === Date.prototype
- // d.constructor === Date
- // d.__proto__ === d.constructor.prototype
- // Date.prototype.__proto__ === Date.prototype.constructor.prototype
- // window.__proto__ === Window.prototypea
-
- Object.defineProperty(window.__proto__, "Date",
- {get: function() { return newWrappedDate;},
- configurable: false});
-
- } // window.__tb_hook_date == true
-
- //Object.defineProperty(window.Components.__proto__, "lookupMethod",
- // {get: function() { return function (a,b) { return function() { return a[b]; }; };},
- // configurable: false});
-
- return true;
-}
-
-if (typeof(window.__HookObjects) != "undefined") {
- var res = 23;
-
- if(!window.__HookObjects()) {
- res = 13;
- }
-
- window.__HookObjects = undefined;
- delete window['__HookObjects'];
- delete window['__CheckFlag'];
- delete window['__tb_set_uagent'];
- delete window['__tb_oscpu'];
- delete window['__tb_platform'];
- delete window['__tb_productSub'];
-
- window.__tb_hooks_ran = true;
-
- res; // Secret result code.
-} else {
- 42;
-}
diff --git a/src/chrome/content/torbutton.js b/src/chrome/content/torbutton.js
index ee49ae4..589e7c5 100644
--- a/src/chrome/content/torbutton.js
+++ b/src/chrome/content/torbutton.js
@@ -21,7 +21,6 @@ const k_tb_tor_check_failed_topic = "Torbutton:TorCheckFailed";
// status
var m_tb_wasinited = false;
var m_tb_prefs = false;
-var m_tb_jshooks = false;
var m_tb_plugin_string = false;
var m_tb_is_main_window = false;
var m_tb_hidden_browser = false;
1
0

[tor-browser-bundle/master] Bug 11630: Make rules.sqlite deterministic.
by gk@torproject.org 05 Jun '14
by gk@torproject.org 05 Jun '14
05 Jun '14
commit d7dc1e0781aa2735e6ed98d68fed9f54f1c2a374
Author: Georg Koppen <gk(a)torproject.org>
Date: Thu Jun 5 12:18:29 2014 +0000
Bug 11630: Make rules.sqlite deterministic.
It turned out that the rules.sqlite file got already deterministic by
running VACUUM before closing the connection. The different bytes in
some meta data were due to having an old rules.sqlite in src/defaults.
SQLite takes the values found there as the starting point and increments
them during the new run of the makexpi script.
---
gitian/descriptors/linux/gitian-bundle.yml | 11 +++++------
gitian/descriptors/mac/gitian-bundle.yml | 9 ++++-----
gitian/descriptors/windows/gitian-bundle.yml | 11 +++++------
gitian/fetch-inputs.sh | 6 ++----
gitian/verify-tags.sh | 2 +-
gitian/versions | 6 +-----
gitian/versions.alpha | 6 +-----
gitian/versions.beta | 6 +-----
gitian/versions.nightly | 4 ----
9 files changed, 20 insertions(+), 41 deletions(-)
diff --git a/gitian/descriptors/linux/gitian-bundle.yml b/gitian/descriptors/linux/gitian-bundle.yml
index 8543a33..c96d950 100644
--- a/gitian/descriptors/linux/gitian-bundle.yml
+++ b/gitian/descriptors/linux/gitian-bundle.yml
@@ -41,7 +41,6 @@ files:
- "linux-skeleton.zip"
- "linux-langpacks.zip"
- "noscript(a)noscript.net.xpi"
-- "https-everywhere(a)eff.org.xpi"
- "dzip.sh"
- "dtar.sh"
- "bare-version"
@@ -89,13 +88,13 @@ script: |
~/build/dzip.sh ../../../tor-browser/Browser/TorBrowser/Data/Browser/profile.default/extensions/torbutton(a)torproject.org.xpi .
cd ../../../
#
- #cd https-everywhere
+ cd https-everywhere
# XXX: Bloody hack to workaround a bug in HTTPS_E's git hash extraction in
# makexpi.sh. See https://trac.torproject.org/projects/tor/ticket/10066
- #rm -f .git/refs/heads/master
- #./makexpi.sh
- #cp pkg/*.xpi ../tor-browser/Browser/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
- #cd ..
+ rm -f .git/refs/heads/master
+ ./makexpi.sh
+ cp pkg/*.xpi ../tor-browser/Browser/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
+ cd ..
#
cp *.xpi tor-browser/Browser/TorBrowser/Data/Browser/profile.default/extensions/
cd tor-browser/Browser/TorBrowser/Data/Browser/profile.default/extensions
diff --git a/gitian/descriptors/mac/gitian-bundle.yml b/gitian/descriptors/mac/gitian-bundle.yml
index d959d82..1e3649b 100644
--- a/gitian/descriptors/mac/gitian-bundle.yml
+++ b/gitian/descriptors/mac/gitian-bundle.yml
@@ -40,7 +40,6 @@ files:
- "dmg-desktop.tar.xz"
- "mac-langpacks.zip"
- "noscript(a)noscript.net.xpi"
-- "https-everywhere(a)eff.org.xpi"
- "dzip.sh"
- "ddmg.sh"
- "libdmg.patch"
@@ -95,12 +94,12 @@ script: |
~/build/dzip.sh ../../../$TORBROWSER_NAME.app/TorBrowser/Data/Browser/profile.default/extensions/torbutton(a)torproject.org.xpi .
cd ../../../
#
- # cd https-everywhere
+ cd https-everywhere
# XXX: Bloody hack to workaround a bug in HTTPS_E's git hash extraction in
# makexpi.sh. See https://trac.torproject.org/projects/tor/ticket/10066
- # rm -f .git/refs/heads/master
- # ./makexpi.sh
- # cp pkg/*.xpi ../$TORBROWSER_NAME.app/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
+ rm -f .git/refs/heads/master
+ ./makexpi.sh
+ cp pkg/*.xpi ../$TORBROWSER_NAME.app/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
# cd ..
#
cp *.xpi ./$TORBROWSER_NAME.app/TorBrowser/Data/Browser/profile.default/extensions/
diff --git a/gitian/descriptors/windows/gitian-bundle.yml b/gitian/descriptors/windows/gitian-bundle.yml
index 8f21b3b..f4cbf9c 100644
--- a/gitian/descriptors/windows/gitian-bundle.yml
+++ b/gitian/descriptors/windows/gitian-bundle.yml
@@ -36,7 +36,6 @@ files:
- "windows-skeleton.zip"
- "win32-langpacks.zip"
- "noscript(a)noscript.net.xpi"
-- "https-everywhere(a)eff.org.xpi"
- "dzip.sh"
- "bare-version"
- "bundle.inputs"
@@ -78,13 +77,13 @@ script: |
~/build/dzip.sh ../../../tbb-windows-installer/"Tor Browser"/Browser/TorBrowser/Data/Browser/profile.default/extensions/torbutton(a)torproject.org.xpi .
cd ../../../
#
- #cd https-everywhere
+ cd https-everywhere
# XXX: Bloody hack to workaround a bug in HTTPS_E's git hash extraction in
# makexpi.sh. See https://trac.torproject.org/projects/tor/ticket/10066
- #rm -f .git/refs/heads/master
- #./makexpi.sh
- #cp ./pkg/*.xpi ../tbb-windows-installer/"Tor Browser"/Browser/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
- #cd ..
+ rm -f .git/refs/heads/master
+ ./makexpi.sh
+ cp ./pkg/*.xpi ../tbb-windows-installer/"Tor Browser"/Browser/TorBrowser/Data/Browser/profile.default/extensions/https-everywhere(a)eff.org.xpi
+ cd ..
#
cp *.xpi tbb-windows-installer/"Tor Browser"/Browser/TorBrowser/Data/Browser/profile.default/extensions
cd tbb-windows-installer/"Tor Browser"/Browser/TorBrowser/Data/Browser/profile.default/extensions
diff --git a/gitian/fetch-inputs.sh b/gitian/fetch-inputs.sh
index 34e8727..39c1608 100755
--- a/gitian/fetch-inputs.sh
+++ b/gitian/fetch-inputs.sh
@@ -208,9 +208,8 @@ done
cd ..
-# NoScript and HTTPS-Everywhere are magikal and special:
+# NoScript is magikal and special:
wget -U "" -N ${NOSCRIPT_URL}
-wget -U "" -N ${HTTPSE_URL}
# So is mingw:
if [ ! -f mingw-w64-svn-snapshot.zip ];
@@ -229,7 +228,7 @@ fi
# Verify packages with weak or no signatures via direct sha256 check
# (OpenSSL is signed with MD5, and OSXSDK is not signed at all)
-for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY
+for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY
do
PACKAGE="${i}_PACKAGE"
HASH="${i}_HASH"
@@ -265,7 +264,6 @@ done
cd ..
ln -sf "$NOSCRIPT_PACKAGE" noscript(a)noscript.net.xpi
-ln -sf "$HTTPSE_PACKAGE" https-everywhere(a)eff.org.xpi
ln -sf "$OPENSSL_PACKAGE" openssl.tar.gz
ln -sf "$BINUTILS_PACKAGE" binutils.tar.bz2
ln -sf "$GCC_PACKAGE" gcc.tar.bz2
diff --git a/gitian/verify-tags.sh b/gitian/verify-tags.sh
index 324a27a..4367e13 100755
--- a/gitian/verify-tags.sh
+++ b/gitian/verify-tags.sh
@@ -132,7 +132,7 @@ done
# Verify packages with weak or no signatures via direct sha256 check
# (OpenSSL is signed with MD5, and OSXSDK is not signed at all)
-for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY
+for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY
do
PACKAGE="${i}_PACKAGE"
HASH="${i}_HASH"
diff --git a/gitian/versions b/gitian/versions
index d37a117..1f74a48 100755
--- a/gitian/versions
+++ b/gitian/versions
@@ -10,7 +10,7 @@ TORBROWSER_TAG=bug11641
TOR_TAG=tor-0.2.4.22
TORLAUNCHER_TAG=bug11641
TORBUTTON_TAG=1.6.9.0
-HTTPSE_TAG=3.4.5 # XXX: HTTPSE_VER is used instead, pending #11630
+HTTPSE_TAG=3.5.1
NSIS_TAG=bug11641
ZLIB_TAG=v1.2.8
LIBEVENT_TAG=release-2.0.21-stable
@@ -41,13 +41,11 @@ PY2EXE_VER=0.6.9
SETUPTOOLS_VER=1.4
LXML_VER=3.3.5
PARSLEY_VER=1.2
-HTTPSE_VER=3.5.1
## File names for the source packages
OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz
GMP_PACKAGE=gmp-${GMP_VER}.tar.bz2
NOSCRIPT_PACKAGE=noscript_security_suite-2.6.8.22-sm+fx+fn.xpi
-HTTPSE_PACKAGE=https-everywhere-${HTTPSE_VER}.xpi
TOOLCHAIN4_PACKAGE=x86_64-apple-darwin10.tar.xz
TOOLCHAIN4_OLD_PACKAGE=multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz
OSXSDK_PACKAGE=apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb
@@ -75,7 +73,6 @@ OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
TOOLCHAIN4_OLD_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
NOSCRIPT_HASH=5ec75d2f6fbf3ff7950a8eea2c7878d887ed3916aa89f99ec76b322b1e140c08
-HTTPSE_HASH=62ac6560bb224a8f5557722153a72fb245b30b345940c537423bfbb7d8144e29
MINGW_HASH=a5b03d0448a309341be4cf34c6ad3016d04c89952dca5243254b4d6c738b164f
MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c
@@ -97,7 +94,6 @@ OSXSDK_URL=https://launchpad.net/~flosoft/+archive/cross-apple/+files/${OSX…
BINUTILS_URL=https://ftp.gnu.org/gnu/binutils/${BINUTILS_PACKAGE}
GCC_URL=https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/${GCC_PACKAGE}
NOSCRIPT_URL=https://addons.cdn.mozilla.net/storage/public-staging/722/${NO…
-HTTPSE_URL=https://www.eff.org/files/${HTTPSE_PACKAGE}
PYTHON_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_PACKAGE}
PYTHON_MSI_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_MSI_…
PYCRYPTO_URL=https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/${PYCRYPTO_PAC…
diff --git a/gitian/versions.alpha b/gitian/versions.alpha
index ce3520c..8fc13d6 100755
--- a/gitian/versions.alpha
+++ b/gitian/versions.alpha
@@ -10,7 +10,7 @@ TORBROWSER_TAG=tor-browser-24.5.0esr-4.x-1
TOR_TAG=tor-0.2.4.22
TORLAUNCHER_TAG=master
TORBUTTON_TAG=1.6.9.0
-HTTPSE_TAG=3.4.5 # XXX: HTTPSE_VER is used instead, pending #11630
+HTTPSE_TAG=3.5.1
NSIS_TAG=00133b8741eb8ca34fc8153d344c7c54a5e3fae9
ZLIB_TAG=v1.2.8
LIBEVENT_TAG=release-2.0.21-stable
@@ -41,13 +41,11 @@ PY2EXE_VER=0.6.9
SETUPTOOLS_VER=1.4
LXML_VER=3.3.5
PARSLEY_VER=1.2
-HTTPSE_VER=3.5.1
## File names for the source packages
OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz
GMP_PACKAGE=gmp-${GMP_VER}.tar.bz2
NOSCRIPT_PACKAGE=noscript_security_suite-2.6.8.22-sm+fx+fn.xpi
-HTTPSE_PACKAGE=https-everywhere-${HTTPSE_VER}.xpi
TOOLCHAIN4_PACKAGE=x86_64-apple-darwin10.tar.xz
TOOLCHAIN4_OLD_PACKAGE=multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz
OSXSDK_PACKAGE=apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb
@@ -75,7 +73,6 @@ OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
TOOLCHAIN4_OLD_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
NOSCRIPT_HASH=5ec75d2f6fbf3ff7950a8eea2c7878d887ed3916aa89f99ec76b322b1e140c08
-HTTPSE_HASH=62ac6560bb224a8f5557722153a72fb245b30b345940c537423bfbb7d8144e29
MINGW_HASH=a5b03d0448a309341be4cf34c6ad3016d04c89952dca5243254b4d6c738b164f
MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c
@@ -97,7 +94,6 @@ OSXSDK_URL=https://launchpad.net/~flosoft/+archive/cross-apple/+files/${OSX…
BINUTILS_URL=https://ftp.gnu.org/gnu/binutils/${BINUTILS_PACKAGE}
GCC_URL=https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/${GCC_PACKAGE}
NOSCRIPT_URL=https://addons.cdn.mozilla.net/storage/public-staging/722/${NO…
-HTTPSE_URL=https://www.eff.org/files/${HTTPSE_PACKAGE}
PYTHON_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_PACKAGE}
PYTHON_MSI_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_MSI_…
PYCRYPTO_URL=https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/${PYCRYPTO_PAC…
diff --git a/gitian/versions.beta b/gitian/versions.beta
index 817a880..cebfae2 100755
--- a/gitian/versions.beta
+++ b/gitian/versions.beta
@@ -10,7 +10,7 @@ TORBROWSER_TAG=tor-browser-${FIREFOX_VERSION}-1-build4
TOR_TAG=tor-0.2.4.21
TORLAUNCHER_TAG=0.2.5.4
TORBUTTON_TAG=1.6.9.0
-HTTPSE_TAG=3.4.5
+HTTPSE_TAG=3.5.1
NSIS_TAG=v0.1
ZLIB_TAG=v1.2.8
LIBEVENT_TAG=release-2.0.21-stable
@@ -41,13 +41,11 @@ PY2EXE_VER=0.6.9
SETUPTOOLS_VER=1.4
LXML_VER=3.3.5
PARSLEY_VER=1.2
-HTTPSE_VER=3.5.1
## File names for the source packages
OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz
GMP_PACKAGE=gmp-${GMP_VER}.tar.bz2
NOSCRIPT_PACKAGE=noscript_security_suite-2.6.8.22-sm+fx+fn.xpi
-HTTPSE_PACKAGE=https-everywhere-${HTTPSE_VER}.xpi
TOOLCHAIN4_PACKAGE=x86_64-apple-darwin10.tar.xz
TOOLCHAIN4_OLD_PACKAGE=multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz
OSXSDK_PACKAGE=apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb
@@ -75,7 +73,6 @@ OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
TOOLCHAIN4_OLD_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
NOSCRIPT_HASH=5ec75d2f6fbf3ff7950a8eea2c7878d887ed3916aa89f99ec76b322b1e140c08
-HTTPSE_HASH=62ac6560bb224a8f5557722153a72fb245b30b345940c537423bfbb7d8144e29
MINGW_HASH=a5b03d0448a309341be4cf34c6ad3016d04c89952dca5243254b4d6c738b164f
MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c
@@ -97,7 +94,6 @@ OSXSDK_URL=https://launchpad.net/~flosoft/+archive/cross-apple/+files/${OSX…
BINUTILS_URL=https://ftp.gnu.org/gnu/binutils/${BINUTILS_PACKAGE}
GCC_URL=https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/${GCC_PACKAGE}
NOSCRIPT_URL=https://addons.cdn.mozilla.net/storage/public-staging/722/${NO…
-HTTPSE_URL=https://www.eff.org/files/${HTTPSE_PACKAGE}
PYTHON_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_PACKAGE}
PYTHON_MSI_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_MSI_…
PYCRYPTO_URL=https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/${PYCRYPTO_PAC…
diff --git a/gitian/versions.nightly b/gitian/versions.nightly
index 9958aab..d3bfe31 100755
--- a/gitian/versions.nightly
+++ b/gitian/versions.nightly
@@ -40,14 +40,12 @@ M2CRYPTO_VER=0.21.1
PY2EXE_VER=0.6.9
SETUPTOOLS_VER=1.4
LXML_VER=3.3.5
-HTTPSE_VER=3.5.1
PARSLEY_VER=1.2
## File names for the source packages
OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz
GMP_PACKAGE=gmp-${GMP_VER}.tar.bz2
NOSCRIPT_PACKAGE=noscript_security_suite-2.6.8.20-fn+fx+sm.xpi
-HTTPSE_PACKAGE=https-everywhere-${HTTPSE_VER}.xpi
TOOLCHAIN4_PACKAGE=x86_64-apple-darwin10.tar.xz
TOOLCHAIN4_OLD_PACKAGE=multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz
OSXSDK_PACKAGE=apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb
@@ -75,7 +73,6 @@ OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
TOOLCHAIN4_OLD_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
NOSCRIPT_HASH=dae2abeb3c57240168c1fdfbf6c6664fa64859fb430ca1a05c218f81371f5ad1
-HTTPSE_HASH=62ac6560bb224a8f5557722153a72fb245b30b345940c537423bfbb7d8144e29
MINGW_HASH=a5b03d0448a309341be4cf34c6ad3016d04c89952dca5243254b4d6c738b164f
MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c
@@ -97,7 +94,6 @@ OSXSDK_URL=https://launchpad.net/~flosoft/+archive/cross-apple/+files/${OSX…
BINUTILS_URL=https://ftp.gnu.org/gnu/binutils/${BINUTILS_PACKAGE}
GCC_URL=https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/${GCC_PACKAGE}
NOSCRIPT_URL=https://addons.cdn.mozilla.net/storage/public-staging/722/${NO…
-HTTPSE_URL=https://www.eff.org/files/${HTTPSE_PACKAGE}
PYTHON_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_PACKAGE}
PYTHON_MSI_URL=http://www.python.org/ftp/python/${PYTHON_VER}/${PYTHON_MSI_…
PYCRYPTO_URL=https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/${PYCRYPTO_PAC…
1
0

[tor-browser/tor-browser-24.5.0esr-4.x-1] Make the CONNECT Host header the same as the Request-URI.
by mikeperry@torproject.org 05 Jun '14
by mikeperry@torproject.org 05 Jun '14
05 Jun '14
commit dab5565168923a476dadc32e6cc093a77d704582
Author: David Fifield <david(a)bamsoftware.com>
Date: Sat May 31 16:59:11 2014 -0700
Make the CONNECT Host header the same as the Request-URI.
It's possible to construct a request where the Host header differs from
the authority in the URL, for example in an extension with
nsIHttpChannel and setRequestHeader. MakeConnectString generates a
host:port string for the CONNECT Request-Line, but peeks into the
tunneled request in order to copy the Host header to the proxy request.
Instead, use the same host:port string for Host as is used in the
Request-URI, to avoid revealing the plaintext of the Host header outside
of the tunnel.
Backport of https://hg.mozilla.org/mozilla-central/rev/a1f6458800d4.
---
netwerk/protocol/http/nsHttpConnection.cpp | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/netwerk/protocol/http/nsHttpConnection.cpp b/netwerk/protocol/http/nsHttpConnection.cpp
index 695f8a5..25ad335 100644
--- a/netwerk/protocol/http/nsHttpConnection.cpp
+++ b/netwerk/protocol/http/nsHttpConnection.cpp
@@ -1466,12 +1466,9 @@ nsHttpConnection::SetupProxyConnect()
request.SetHeader(nsHttp::Proxy_Connection, NS_LITERAL_CSTRING("keep-alive"));
request.SetHeader(nsHttp::Connection, NS_LITERAL_CSTRING("keep-alive"));
- val = mTransaction->RequestHead()->PeekHeader(nsHttp::Host);
- if (val) {
- // all HTTP/1.1 requests must include a Host header (even though it
- // may seem redundant in this case; see bug 82388).
- request.SetHeader(nsHttp::Host, nsDependentCString(val));
- }
+ // all HTTP/1.1 requests must include a Host header (even though it
+ // may seem redundant in this case; see bug 82388).
+ request.SetHeader(nsHttp::Host, buf);
val = mTransaction->RequestHead()->PeekHeader(nsHttp::Proxy_Authorization);
if (val) {
1
0