[tor-commits] [tor-browser/tor-browser-31.6.0esr-4.5-1] Bug 14716: HTTP Basic Authentication prompt only displayed once
commit f0fe46bcec5946e94fd66792983b1f081913a74f Author: Kathy Brade br...@pearlcrescent.com Date: Fri Apr 17 16:31:28 2015 -0400 Bug 14716: HTTP Basic Authentication prompt only displayed once Modify the login manager implementation to handle the situation where storage is not available. --- toolkit/components/passwordmgr/nsLoginManager.js | 57 +- 1 file changed, 55 insertions(+), 2 deletions(-) diff --git a/toolkit/components/passwordmgr/nsLoginManager.js b/toolkit/components/passwordmgr/nsLoginManager.js index a4cbdb0..19024fd 100644 --- a/toolkit/components/passwordmgr/nsLoginManager.js +++ b/toolkit/components/passwordmgr/nsLoginManager.js @@ -243,6 +243,10 @@ LoginManager.prototype = { if (logins.some(function(l) login.matches(l, true))) throw This login already exists.; +if (!this._storage) { +throw No storage to add login; +} + log(Adding login); return this._storage.addLogin(login); }, @@ -255,6 +259,12 @@ LoginManager.prototype = { */ removeLogin : function (login) { log(Removing login); + +if (!this._storage) { +log(No storage to remove login); +return null; +} + return this._storage.removeLogin(login); }, @@ -266,6 +276,12 @@ LoginManager.prototype = { */ modifyLogin : function (oldLogin, newLogin) { log(Modifying login); + +if (!this._storage) { +log(No storage to modify login); +return null; +} + return this._storage.modifyLogin(oldLogin, newLogin); }, @@ -281,6 +297,12 @@ LoginManager.prototype = { */ getAllLogins : function (count) { log(Getting a list of all logins); + +if (!this._storage) { +log(No storage to get all logins); +return null; +} + return this._storage.getAllLogins(count); }, @@ -292,7 +314,10 @@ LoginManager.prototype = { */ removeAllLogins : function () { log(Removing all logins); -this._storage.removeAllLogins(); +if (!this._storage) +log(No storage to remove all logins); +else +this._storage.removeAllLogins(); }, /* @@ -307,6 +332,12 @@ LoginManager.prototype = { */ getAllDisabledHosts : function (count) { log(Getting a list of all disabled hosts); + +if (!this._storage) { +log(No storage to get all disabled hosts); +return null; +} + return this._storage.getAllDisabledHosts(count); }, @@ -320,6 +351,11 @@ LoginManager.prototype = { log(Searching for logins matching host:, hostname, formSubmitURL:, formSubmitURL, httpRealm:, httpRealm); +if (!this._storage) { +log(No storage to find logins); +return null; +} + return this._storage.findLogins(count, hostname, formSubmitURL, httpRealm); }, @@ -336,6 +372,11 @@ LoginManager.prototype = { searchLogins : function(count, matchData) { log(Searching for logins); +if (!this._storage) { +log(No storage to search logins); +return null; +} + return this._storage.searchLogins(count, matchData); }, @@ -350,6 +391,9 @@ LoginManager.prototype = { log(Counting logins matching host:, hostname, formSubmitURL:, formSubmitURL, httpRealm:, httpRealm); +if (!this._storage) +return 0; + return this._storage.countLogins(hostname, formSubmitURL, httpRealm); }, @@ -358,6 +402,9 @@ LoginManager.prototype = { * uiBusy */ get uiBusy() { +if (!this._storage) +return false; + return this._storage.uiBusy; }, @@ -366,6 +413,9 @@ LoginManager.prototype = { * isLoggedIn */ get isLoggedIn() { +if (!this._storage) +return false; + return this._storage.isLoggedIn; }, @@ -377,7 +427,7 @@ LoginManager.prototype = { */ getLoginSavingEnabled : function (host) { log(Checking if logins to, host, can be saved.); -if (!this._remember) +if (!this._remember || !this._storage) return false; return this._storage.getLoginSavingEnabled(host); @@ -394,6 +444,9 @@ LoginManager.prototype = { if (hostname.indexOf(\0) != -1) throw Invalid hostname; +if (!this._storage) +throw No storage to set login saving enabled; + log(Login saving for, hostname, now enabled?, enabled); return this._storage.setLoginSavingEnabled(hostname, enabled); }, ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [torbutton/master] Add changelog and bump version for 1.9.2.0.
commit 60b1537295374c64594564a00d17bcc42dc76985 Author: Mike Perry mikeperry-...@torproject.org Date: Mon Apr 20 17:26:45 2015 -0700 Add changelog and bump version for 1.9.2.0. --- src/CHANGELOG |7 +++ src/install.rdf |2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/CHANGELOG b/src/CHANGELOG index e140ff5..e50f5b6 100644 --- a/src/CHANGELOG +++ b/src/CHANGELOG @@ -1,3 +1,10 @@ +1.9.2.0: + * Bug 15562: Bind SharedWorkers to thirdparty pref + * Bug 15533: Restore default security level when restoring defaults + * Bug 15510: Close Tor Circuit UI control port connections on New Identity + * Bug 15472: Make node text black in circuit status UI. + * Bug 15502: Wipe blob URIs on New Identity + 1.9.1.0: * Bug 9387: Security Slider 1.0 * Include descriptions and tooltip hints for security levels diff --git a/src/install.rdf b/src/install.rdf index 94245a0..6af4e9b 100644 --- a/src/install.rdf +++ b/src/install.rdf @@ -6,7 +6,7 @@ em:nameTorbutton/em:name em:creatorMike Perry/em:creator em:idtorbut...@torproject.org/em:id -em:version1.9.1.0/em:version +em:version1.9.2.0/em:version em:homepageURLhttps://www.torproject.org/projects/torbrowser.html.en/em:homepageURL em:optionsURLchrome://torbutton/content/preferences.xul/em:optionsURL em:iconURLchrome://torbutton/skin/tor.png/em:iconURL ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [torbutton/master] Bug #15502: Wipe blob URIs on New Identity
commit 2568365dfa0ce8ebc2f5f430b4c752ca57b2fc97 Author: Arthur Edelstein arthuredelst...@gmail.com Date: Mon Apr 13 10:41:44 2015 -0700 Bug #15502: Wipe blob URIs on New Identity --- src/chrome/content/torbutton.js |6 ++ 1 file changed, 6 insertions(+) diff --git a/src/chrome/content/torbutton.js b/src/chrome/content/torbutton.js index b4b3ab5..2fdfd1c 100644 --- a/src/chrome/content/torbutton.js +++ b/src/chrome/content/torbutton.js @@ -1884,6 +1884,12 @@ function torbutton_do_new_identity() { torbutton_log(3, New identity successful); + // Run garbage collection and cycle collection after window is gone. + // This ensures that blob URIs are forgotten. + window.addEventListener(unload, function (event) { +m_tb_domWindowUtils.garbageCollect(); + }); + // Close the current window for added safety window.close(); } ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [torbutton/master] Bug #15502: Ensure garbage collection runs immediately and completely.
commit accb4b887b4427221358fc8c17bbbdf85e77467c Author: Mike Perry mikeperry-...@torproject.org Date: Wed Apr 15 21:34:07 2015 -0700 Bug #15502: Ensure garbage collection runs immediately and completely. --- src/chrome/content/torbutton.js | 27 +++ 1 file changed, 27 insertions(+) diff --git a/src/chrome/content/torbutton.js b/src/chrome/content/torbutton.js index 2fdfd1c..7d229dd 100644 --- a/src/chrome/content/torbutton.js +++ b/src/chrome/content/torbutton.js @@ -1887,7 +1887,34 @@ function torbutton_do_new_identity() { // Run garbage collection and cycle collection after window is gone. // This ensures that blob URIs are forgotten. window.addEventListener(unload, function (event) { +torbutton_log(3, Initiating New Identity GC pass); +// Clear out potential pending sInterSliceGCTimer: +m_tb_domWindowUtils.runNextCollectorTimer(); + +// Clear out potential pending sICCTimer: +m_tb_domWindowUtils.runNextCollectorTimer(); + +// Schedule a garbage collection in 4000-1000ms... +m_tb_domWindowUtils.garbageCollect(); + +// To ensure the GC runs immediately instead of 4-10s from now, we need +// to poke it at least 11 times. +// We need 5 pokes for GC, 1 poke for the interSliceGC, and 5 pokes for CC. +// See nsJSContext::RunNextCollectorTimer() in +// https://mxr.mozilla.org/mozilla-central/source/dom/base/nsJSEnvironment.cpp#1970. +// XXX: We might want to make our own method for immediate full GC... +for (let poke = 0; poke 11; poke++) { + m_tb_domWindowUtils.runNextCollectorTimer(); +} + +// And now, since the GC probably actually ran *after* the CC last time, +// run the whole thing again. m_tb_domWindowUtils.garbageCollect(); +for (let poke = 0; poke 11; poke++) { + m_tb_domWindowUtils.runNextCollectorTimer(); +} + +torbutton_log(3, Completed New Identity GC pass); }); // Close the current window for added safety ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor-browser-bundle/master] Add changelog draft for 4.5.
commit a73cdf8b099adcae40aea2c7426fc6b248fcd3ec Author: Mike Perry mikeperry-...@torproject.org Date: Mon Apr 20 18:05:31 2015 -0700 Add changelog draft for 4.5. Warning: This contains things in the tbb-4.5-alpha tag that we haven't merged yet, as well as component version updates we haven't done yet. --- Bundle-Data/Docs/ChangeLog.txt | 32 1 file changed, 32 insertions(+) diff --git a/Bundle-Data/Docs/ChangeLog.txt b/Bundle-Data/Docs/ChangeLog.txt index 056caf3..70fe201 100644 --- a/Bundle-Data/Docs/ChangeLog.txt +++ b/Bundle-Data/Docs/ChangeLog.txt @@ -1,3 +1,35 @@ +Tor Browser 4.5 -- Apr 28 2015 + * All Platforms + * Update Tor to 0.2.6.7 with additional patches: + * Bug 15482: Reset timestamp_dirty each time a SOCKSAuth circuit is used + * Update NoScript to 2.6.9.22 + * Update HTTPS-Everywhere to 5.0.2 + * Bug 15689: Resume building HTTPS-Everywhere from git tags + * Update meek to 0.17 + * Update obfs4proxy to 0.0.5 + * Update Tor Launcher to 0.2.7.4 + * Bug 15704: Do not enable network if wizard is opened + * Bug 11879: Stop bootstrap if Cancel or Open Settings is clicked + * Bug 13576: Don't strip bridge from the middle of bridge lines + * Bug 15657: Display the host:port of any connection faiures in bootstrap + * Update Torbutton to 1.9.2.0 + * Bug 15562: Bind SharedWorkers to thirdparty pref + * Bug 15533: Restore default security level when restoring defaults + * Bug 15510: Close Tor Circuit UI control port connections on New Identity + * Bug 15472: Make node text black in circuit status UI + * Bug 15502: Wipe blob URIs on New Identity + * Bug 4100: Raise HTTP Keep-Alive back to 115 second default + * Bug 13875: Spoof window.devicePixelRatio to avoid DPI fingerprinting + * Bug 15411: Remove old (and unused) cacheDomain cache isolation mechanism + * Bug 14716: Fix issues with HTTP Auth usage and TLS connection info display + * Bug 15562: Disable Javascript SharedWorkers due to third party tracking + * Linux + * Bug 15747: Improve start-tor-browser argument handling + * Bug 15672: Provide desktop app registration+unregistration for Linux + * Windows + * Bug 15539: Make installer exe signatures reproducibly removable + * Bug 10761: Fix instances of shutdown crashes + Tor Browser 4.5a5 -- Mar 31 2015 * All Platforms * Update Firefox to 31.6.0esr ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [stem/master] Test for 'python setup.py install'
commit a6ea923c7a6dfb6c20620955382a4b6d469ab31f Author: Damian Johnson ata...@torproject.org Date: Mon Apr 20 19:09:30 2015 -0700 Test for 'python setup.py install' This has been a hole in our tests for quite some time, biting us from time to time during releas time... https://trac.torproject.org/projects/tor/ticket/15258 Just a simple test for now. Might expand this in the future with more assertions. --- stem/util/system.py| 11 --- test/integ/installation.py | 32 test/settings.cfg |1 + 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/stem/util/system.py b/stem/util/system.py index c263ce3..aa13cb9 100644 --- a/stem/util/system.py +++ b/stem/util/system.py @@ -957,7 +957,7 @@ def call(command, default = UNDEFINED, ignore_exit_status = False): results. This is not actually ran in a shell so pipes and other shell syntax are not permitted. - :param str command: command to be issued + :param str,list command: command to be issued :param object default: response if the query fails :param bool ignore_exit_status: reports failure if our command's exit status was non-zero @@ -967,11 +967,16 @@ def call(command, default = UNDEFINED, ignore_exit_status = False): :raises: **OSError** if this fails and no default was provided + if isinstance(command, str): +command_list = command.split(' ') + else: +command_list = command + try: -is_shell_command = command.split(' ')[0] in SHELL_COMMANDS +is_shell_command = command_list[0] in SHELL_COMMANDS start_time = time.time() -process = subprocess.Popen(command.split(), stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell = is_shell_command) +process = subprocess.Popen(command_list, stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell = is_shell_command) stdout, stderr = process.communicate() stdout, stderr = stdout.strip(), stderr.strip() diff --git a/test/integ/installation.py b/test/integ/installation.py new file mode 100644 index 000..618cd4e --- /dev/null +++ b/test/integ/installation.py @@ -0,0 +1,32 @@ +import glob +import os +import shutil +import unittest + +import stem +import stem.util.system + +import test.runner + + +class TestInstallation(unittest.TestCase): + def test_installing_stem(self): +base_directory = os.path.sep.join(__file__.split(os.path.sep)[:-3]) + +if not os.path.exists(os.path.sep.join([base_directory, 'setup.py'])): + test.runner.skip(self, (only for git checkout)) + +original_cwd = os.getcwd() + +try: + os.chdir(base_directory) + stem.util.system.call('python setup.py install --prefix /tmp/stem_test') + site_packages_paths = glob.glob('/tmp/stem_test/lib/*/site-packages') + + if len(site_packages_paths) != 1: +self.fail(We should only have a single site-packages directory, but instead had: %s % site_packages_paths) + + self.assertEqual(stem.__version__, stem.util.system.call(['python', '-c', import sys;sys.path.insert(0, '%s');import stem;print stem.__version__ % site_packages_paths[0]])[0]) +finally: + shutil.rmtree('/tmp/stem_test') + os.chdir(original_cwd) diff --git a/test/settings.cfg b/test/settings.cfg index 21f5eb2..79fec01 100644 --- a/test/settings.cfg +++ b/test/settings.cfg @@ -201,6 +201,7 @@ test.integ_tests |test.integ.util.connection.TestConnection |test.integ.util.proc.TestProc |test.integ.util.system.TestSystem +|test.integ.installation.TestInstallation |test.integ.descriptor.remote.TestDescriptorDownloader |test.integ.descriptor.server_descriptor.TestServerDescriptor |test.integ.descriptor.extrainfo_descriptor.TestExtraInfoDescriptor ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [stem/master] Only run installation test once
commit 2f44df7aa01ffd2aa2d68e3e07966e6785e4f1d1 Author: Damian Johnson ata...@torproject.org Date: Mon Apr 20 19:54:59 2015 -0700 Only run installation test once This test is unimpacted by targets and can take a sec, so no reason to run it multiple times. --- test/integ/installation.py |5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/integ/installation.py b/test/integ/installation.py index 618cd4e..f0ce9ed 100644 --- a/test/integ/installation.py +++ b/test/integ/installation.py @@ -10,11 +10,12 @@ import test.runner class TestInstallation(unittest.TestCase): + @test.runner.only_run_once def test_installing_stem(self): base_directory = os.path.sep.join(__file__.split(os.path.sep)[:-3]) if not os.path.exists(os.path.sep.join([base_directory, 'setup.py'])): - test.runner.skip(self, (only for git checkout)) + test.runner.skip(self, '(only for git checkout)') original_cwd = os.getcwd() @@ -24,7 +25,7 @@ class TestInstallation(unittest.TestCase): site_packages_paths = glob.glob('/tmp/stem_test/lib/*/site-packages') if len(site_packages_paths) != 1: -self.fail(We should only have a single site-packages directory, but instead had: %s % site_packages_paths) +self.fail('We should only have a single site-packages directory, but instead had: %s' % site_packages_paths) self.assertEqual(stem.__version__, stem.util.system.call(['python', '-c', import sys;sys.path.insert(0, '%s');import stem;print stem.__version__ % site_packages_paths[0]])[0]) finally: ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [stem/master] Fixed twitter example to work with twitter API version 1.1
commit cdcde6a479fba4910eecb676a71bbc43cff697ac Author: Sambuddha Basu sambuddhaba...@gmail.com Date: Sat Apr 18 12:17:20 2015 +0530 Fixed twitter example to work with twitter API version 1.1 --- docs/tutorials/to_russia_with_love.rst | 66 ++-- 1 file changed, 62 insertions(+), 4 deletions(-) diff --git a/docs/tutorials/to_russia_with_love.rst b/docs/tutorials/to_russia_with_love.rst index 75f9735..7d91f4b 100644 --- a/docs/tutorials/to_russia_with_love.rst +++ b/docs/tutorials/to_russia_with_love.rst @@ -121,33 +121,91 @@ Besides SocksiPy, you can also use `PycURL http://pycurl.sourceforge.net/`_ to Reading Twitter --- -Now lets do somthing a little more interesting, and read a Twitter feed over Tor. This can be easily done `using thier API https://dev.twitter.com/docs/api/1/get/statuses/user_timeline`_ (**warning: Twitter has deprecated the API that this example uses,** :trac:`9003`)... +Now lets do somthing a little more interesting, and read a Twitter feed over Tor. This can be easily done `using thier API https://dev.twitter.com/rest/reference/get/statuses/user_timeline`_ :: import json import socket import urllib + import urllib2 + import time + import binascii + import hmac + from hashlib import sha1, md5 import socks # SockiPy module import stem.process SOCKS_PORT = 7000 - TWITTER_API_URL = http://api.twitter.com/1/statuses/user_timeline.json?screen_name=%scount=%iinclude_rts=1; + KEY_DICT = dict() + TWITTER_API_URL = https://api.twitter.com/1.1/statuses/user_timeline.json; + CONSUMER_KEY = + CONSUMER_SECRET = + ACCESS_TOKEN = + ACCESS_TOKEN_SECRET = + HTTP_METHOD = GET + OAUTH_VERSION = 1.0 socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', SOCKS_PORT) socket.socket = socks.socksocket + def init_key_dict(): + +Initializes KEY_DICT + + +global KEY_DICT +KEY_DICT['oauth_consumer_key'] = urllib.quote(CONSUMER_KEY, '') +KEY_DICT['oauth_nonce'] = urllib.quote(md5(str(time.time())).hexdigest(), '') +KEY_DICT['oauth_signature_method'] = urllib.quote(HMAC-SHA1, '') +KEY_DICT['oauth_timestamp'] = urllib.quote(str(int(time.time())), '') +KEY_DICT['oauth_token'] = urllib.quote(ACCESS_TOKEN, '') +KEY_DICT['oauth_version'] = urllib.quote(OAUTH_VERSION, '') + + def get_signature(values): + +Generates KEY_DICT['oauth_signature'] + +for value in values: + KEY_DICT[value] = urllib.quote(values[value], '') +fin_key = +for key in sorted(KEY_DICT.keys()): + fin_key += key + = + KEY_DICT[key] + +fin_key = fin_key[:-1] +fin_key = HTTP_METHOD + + urllib.quote(TWITTER_API_URL, '') + + urllib.quote(fin_key, '') +key = urllib.quote(CONSUMER_SECRET, '') + + urllib.quote(ACCESS_TOKEN_SECRET, '') +hashed = hmac.new(key, fin_key, sha1) +fin_key = binascii.b2a_base64(hashed.digest())[:-1] +KEY_DICT['oauth_signature'] = urllib.quote(fin_key, '') + + def get_header_string(): + +Returns the header string + +ret = OAuth +key_list =['oauth_consumer_key', 'oauth_nonce', 'oauth_signature', 'oauth_signature_method', 'oauth_timestamp', 'oauth_token', 'oauth_version'] +for key in key_list: + ret = ret + key + =\ + KEY_DICT[key] + \, +ret = ret[:-2] +return ret + def poll_twitter_feed(user_id, tweet_count): Polls Twitter for the tweets from a given user. -api_url = TWITTER_API_URL % (user_id, tweet_count) +init_key_dict() +values = {'screen_name': user_id, 'count': str(tweet_count), 'include_rts': '1'} +api_url = TWITTER_API_URL +get_signature(values) +headers = {'Authorization': get_header_string()} +data = urllib.urlencode(values) +api_request = urllib2.Request(api_url + ? + data, headers= headers) try: - api_response = urllib.urlopen(api_url).read() + api_response = urllib2.urlopen(api_request).read() except: raise IOError(Unable to reach %s % api_url) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [stem/master] Simplifying twitter example
commit d293eb8b52a1bf23e9ac1767cc7fdc0c54a12520 Author: Damian Johnson ata...@torproject.org Date: Mon Apr 20 21:01:03 2015 -0700 Simplifying twitter example Replacing the KEY_DICT global and helpers with a shorter script. I don't have a Twitter account so unfortunately can't exercise this sucker, but should be equivalent to what we had previously. This and the prior commit are for... https://trac.torproject.org/projects/tor/ticket/9003 --- docs/tutorials/to_russia_with_love.rst | 87 +--- 1 file changed, 36 insertions(+), 51 deletions(-) diff --git a/docs/tutorials/to_russia_with_love.rst b/docs/tutorials/to_russia_with_love.rst index 7d91f4b..6bb4252 100644 --- a/docs/tutorials/to_russia_with_love.rst +++ b/docs/tutorials/to_russia_with_love.rst @@ -121,93 +121,78 @@ Besides SocksiPy, you can also use `PycURL http://pycurl.sourceforge.net/`_ to Reading Twitter --- -Now lets do somthing a little more interesting, and read a Twitter feed over Tor. This can be easily done `using thier API https://dev.twitter.com/rest/reference/get/statuses/user_timeline`_ +Now lets do somthing a little more interesting, and read a Twitter feed over Tor. This can be done `using thier API https://dev.twitter.com/rest/reference/get/statuses/user_timeline`_, for authentication `see their instructions https://dev.twitter.com/oauth/overview/application-owner-access-tokens`_... :: + import binascii + import hashlib + import hmac import json import socket + import time import urllib import urllib2 - import time - import binascii - import hmac - from hashlib import sha1, md5 import socks # SockiPy module import stem.process SOCKS_PORT = 7000 - KEY_DICT = dict() TWITTER_API_URL = https://api.twitter.com/1.1/statuses/user_timeline.json; CONSUMER_KEY = CONSUMER_SECRET = ACCESS_TOKEN = ACCESS_TOKEN_SECRET = - HTTP_METHOD = GET - OAUTH_VERSION = 1.0 + + HEADER_AUTH_KEYS = ['oauth_consumer_key', 'oauth_nonce', 'oauth_signature', +'oauth_signature_method', 'oauth_timestamp', 'oauth_token', 'oauth_version'] socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', SOCKS_PORT) socket.socket = socks.socksocket + def oauth_signature(key_dict): +fin_key = - def init_key_dict(): - -Initializes KEY_DICT - - -global KEY_DICT -KEY_DICT['oauth_consumer_key'] = urllib.quote(CONSUMER_KEY, '') -KEY_DICT['oauth_nonce'] = urllib.quote(md5(str(time.time())).hexdigest(), '') -KEY_DICT['oauth_signature_method'] = urllib.quote(HMAC-SHA1, '') -KEY_DICT['oauth_timestamp'] = urllib.quote(str(int(time.time())), '') -KEY_DICT['oauth_token'] = urllib.quote(ACCESS_TOKEN, '') -KEY_DICT['oauth_version'] = urllib.quote(OAUTH_VERSION, '') +for key in sorted(key_dict.keys()): + fin_key += key + = + key_dict[key] + - def get_signature(values): - -Generates KEY_DICT['oauth_signature'] - -for value in values: - KEY_DICT[value] = urllib.quote(values[value], '') -fin_key = -for key in sorted(KEY_DICT.keys()): - fin_key += key + = + KEY_DICT[key] + fin_key = fin_key[:-1] -fin_key = HTTP_METHOD + + urllib.quote(TWITTER_API_URL, '') + + urllib.quote(fin_key, '') +fin_key = 'GET' + + urllib.quote(TWITTER_API_URL, '') + + urllib.quote(fin_key, '') key = urllib.quote(CONSUMER_SECRET, '') + + urllib.quote(ACCESS_TOKEN_SECRET, '') -hashed = hmac.new(key, fin_key, sha1) +hashed = hmac.new(key, fin_key, hashlib.sha1) fin_key = binascii.b2a_base64(hashed.digest())[:-1] -KEY_DICT['oauth_signature'] = urllib.quote(fin_key, '') - - def get_header_string(): - -Returns the header string - -ret = OAuth -key_list =['oauth_consumer_key', 'oauth_nonce', 'oauth_signature', 'oauth_signature_method', 'oauth_timestamp', 'oauth_token', 'oauth_version'] -for key in key_list: - ret = ret + key + =\ + KEY_DICT[key] + \, -ret = ret[:-2] -return ret +return urllib.quote(fin_key, '') def poll_twitter_feed(user_id, tweet_count): Polls Twitter for the tweets from a given user. -init_key_dict() -values = {'screen_name': user_id, 'count': str(tweet_count), 'include_rts': '1'} -api_url = TWITTER_API_URL -get_signature(values) -headers = {'Authorization': get_header_string()} -data = urllib.urlencode(values) -api_request = urllib2.Request(api_url + ? + data, headers= headers) +key_dict = { + 'oauth_consumer_key': urllib.quote(CONSUMER_KEY, ''), + 'oauth_nonce': urllib.quote(hashlib.md5(str(time.time())).hexdigest(), ''), + 'oauth_signature_method': urllib.quote(HMAC-SHA1, ''), + 'oauth_timestamp': urllib.quote(str(int(time.time())), ''), + 'oauth_token': urllib.quote(ACCESS_TOKEN, ''), + 'oauth_version': urllib.quote('1.0', ''), +} + +url_values =
[tor-commits] [metrics-tasks/master] Add another introduction-point graph (#15513).
commit f8d2801f34b79b21a51a5ace7fb46ec08874fbcf Author: Karsten Loesing karsten.loes...@gmx.net Date: Mon Apr 20 22:22:00 2015 +0200 Add another introduction-point graph (#15513). --- task-15513/plot.R | 13 + 1 file changed, 13 insertions(+) diff --git a/task-15513/plot.R b/task-15513/plot.R index f1ce9d3..26fc854 100644 --- a/task-15513/plot.R +++ b/task-15513/plot.R @@ -79,3 +79,16 @@ ggplot(data) + ggtitle(paste(Number of introduction points established on\nthe same, relay (in the measurement period)\n)) +l - read.csv(intros-per-desc.csv) +l - aggregate(list(introsperdesc = l$introsperdesc), by = list( + publication = (l$publication %/% (1 * 3600 * 1000)) * (1 * 3600), + service = l$service), FUN = max) +ggplot(l, aes(x = as.POSIXct(publication, +origin = 1970-01-01 00:00:00), y = introsperdesc, fill = service)) + + geom_area() + + scale_fill_hue(, guide = none) + + facet_grid(service ~ .) + + scale_x_datetime() + + scale_y_continuous() + + ggtitle(Number of introduction points over time\n) + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor-browser-bundle/master] Bug #15672: Provide desktop app registration+unregistration for Linux
commit c9266daa8ce6501e6f24446dc0da05caf7fa955d Author: Mike Perry mikeperry-...@torproject.org Date: Mon Apr 13 11:27:29 2015 -0700 Bug #15672: Provide desktop app registration+unregistration for Linux --- RelativeLink/start-tor-browser | 55 ++-- 1 file changed, 41 insertions(+), 14 deletions(-) diff --git a/RelativeLink/start-tor-browser b/RelativeLink/start-tor-browser index aac5a6e..098f506 100755 --- a/RelativeLink/start-tor-browser +++ b/RelativeLink/start-tor-browser @@ -100,11 +100,18 @@ fi debug=0 show_usage=0 +register_desktop_app=0 # !!! We may have more than one argument, changed -eq to -ge in if elif clauses below if [ $# -ge 1 -a \( x$1 = x--debug -o x$1 = x-debug \) ]; then debug=1 shift # pop the debug argument printf \nDebug enabled.\n\n +elif [ $# -ge 1 -a \( x$1 = x--register-app -o x$1 = x-register-app \) ]; then + register_desktop_app=1 + shift # pop the register arg +elif [ $# -ge 1 -a \( x$1 = x--unregister-app -o x$1 = x-unregister-app \) ]; then + register_desktop_app=-1 + shift # pop the register arg elif [ $# -ge 1 -a \( x$1 = x--help -o x$1 = x-help \) ]; then show_usage=1 else @@ -160,6 +167,13 @@ fi mydir=`dirname $myname` test -d $mydir cd $mydir +# If ${PWD} results in a zero length string, we can try something else... +if [ ! ${PWD} ]; then + # hacking around some braindamage + PWD=`pwd` + surveysays=This system has a messed up shell.\n +fi + # This is a fix for an ibus issue on some Linux systems. See #9353 for more # details. The symlink needs to be created before we change HOME. if [ ! -d .config/ibus ]; then @@ -167,23 +181,34 @@ if [ ! -d .config/ibus ]; then ln -nsf ~/.config/ibus/bus .config/ibus fi -# If ${PWD} results in a zero length HOME, we can try something else... -if [ ! ${PWD} ]; then - # hacking around some braindamage - HOME=`pwd` - export HOME - surveysays=This system has a messed up shell.\n -else - HOME=${PWD} - export HOME -fi - # Fix up .desktop Icon and Exec Paths, and update the .desktop file from the # canonical version if it was changed by the updater. cp start-tor-browser.desktop ../ sed -i -e s,^Name=.*,Name=Tor Browser,g ../start-tor-browser.desktop -sed -i -e s,^Icon=.*,Icon=$HOME/browser/icons/mozicon128.png,g ../start-tor-browser.desktop -sed -i -e s,^Exec=.*,Exec=sh -c '\$HOME/start-tor-browser\ || ([ ! -x \$HOME/start-tor-browser\ ] \\ \\$(dirname \\$*\)\/Browser/start-tor-browser)' dummy %k,g ../start-tor-browser.desktop +sed -i -e s,^Icon=.*,Icon=$PWD/browser/icons/mozicon128.png,g ../start-tor-browser.desktop +sed -i -e s,^Exec=.*,Exec=sh -c '\$PWD/start-tor-browser\ || ([ ! -x \$PWD/start-tor-browser\ ] \\ \\$(dirname \\$*\)\/Browser/start-tor-browser)' dummy %k,g ../start-tor-browser.desktop + +if [ $register_desktop_app -eq 1 ]; then + mkdir -p $HOME/.local/share/applications/ + cp ../start-tor-browser.desktop $HOME/.local/share/applications/ + update-desktop-database $HOME/.local/share/applications/ + printf Tor Browser has been registered as a desktop app for this user in ~/.local/share/applications/\n + exit 0 +fi + +if [ $register_desktop_app -eq -1 ]; then + if [ -e $HOME/.local/share/applications/start-tor-browser.desktop ]; then + rm -f $HOME/.local/share/applications/start-tor-browser.desktop + update-desktop-database $HOME/.local/share/applications/ + printf Tor Browser has been removed as a user desktop app (from ~/.local/share/applications/)\n + else + printf Tor Browser does not appear to be a desktop app (not present in ~/.local/share/applications/)\n + fi + exit 0 +fi + +HOME=${PWD} +export HOME SYSARCHITECTURE=$(getconf LONG_BIT) TORARCHITECTURE=$(expr $(file TorBrowser/Tor/tor) : '.*ELF \([[:digit:]]*\)') @@ -279,7 +304,9 @@ if [ $show_usage -eq 1 ]; then TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class Tor Browser \ -profile TorBrowser/Data/Browser/profile.default ${@} 2/dev/null printf \nTor Browser Script Options\n -printf --debug Display Tor and Firefox output and record in tor-browser-debug.log\n +printf --debug Display Tor and Firefox output and record in tor-browser-debug.log\n +printf --register-appRegister Tor Browser as a desktop app for this user\n +printf --unregister-app Unregister Tor Browser as a desktop app for this user\n elif [ $debug -ne 1 ] ; then TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class Tor Browser \ -profile TorBrowser/Data/Browser/profile.default ${@} /dev/null 21 /dev/null ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor-browser-bundle/master] Revert Bug 15670: add support for the no_update_for option in config.yml
commit 6fddec33ed9d3baf343f3848bc3d85553de6b03b Author: Georg Koppen g...@torproject.org Date: Mon Apr 20 08:42:39 2015 + Revert Bug 15670: add support for the no_update_for option in config.yml This reverts commit 7d7faa30b4443f0cc76474738a36fd3f45e875f4. --- tools/update-responses/update_responses |4 1 file changed, 4 deletions(-) diff --git a/tools/update-responses/update_responses b/tools/update-responses/update_responses index 6c497ef..07efc7c 100755 --- a/tools/update-responses/update_responses +++ b/tools/update-responses/update_responses @@ -283,10 +283,6 @@ sub write_htaccess { my $version = $config-{channels}{$channel}; my $files = $config-{versions}{$version}{files}; $htaccess .= RewriteRule ^[^\/]+/$version/ no-update.xml $flags\n; -my $noup_for = $config-{no_update_for}{$channel}; -for my $noup_ver (ref $noup_for eq 'ARRAY' ? @$noup_for : ()) { -$htaccess .= RewriteRule ^[^\/]+/$noup_ver/ no-update.xml $flags\n; -} foreach my $os (sort keys %$files) { my $bt = build_target_by_os($os); foreach my $lang (sort keys %{$files-{$os}}) { ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor-browser-bundle/master] Merge remote-tracking branch 'mikeperry/bug15672'
commit 44e59e8d6e91bab002d93a978b8a4e36fbb5b9fb Merge: 33f867c c9266da Author: Georg Koppen g...@torproject.org Date: Mon Apr 20 08:41:44 2015 + Merge remote-tracking branch 'mikeperry/bug15672' RelativeLink/start-tor-browser | 55 ++-- 1 file changed, 41 insertions(+), 14 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor-messenger-build/master] Update the Tor Messenger logo for Tor Launcher
commit 6216393a2f09dff6a74ae9eae2b2e9496cbd0e21 Author: Sukhbir Singh sukh...@torproject.org Date: Mon Apr 20 10:33:55 2015 -0400 Update the Tor Messenger logo for Tor Launcher --- projects/tor-launcher/build |5 - projects/tor-launcher/config |3 ++- projects/tor-launcher/logo.patch | 13 + projects/tor-launcher/messenger.png | Bin 0 - 7749 bytes projects/tor-launcher/torbirdy-logo.patch | 13 - 5 files changed, 19 insertions(+), 15 deletions(-) diff --git a/projects/tor-launcher/build b/projects/tor-launcher/build index a3c5f48..66909f9 100644 --- a/projects/tor-launcher/build +++ b/projects/tor-launcher/build @@ -8,7 +8,10 @@ patch -p1 ../controlport.patch [% END -%] [% IF c(var/tor-mail) -%] cp ../torbirdy.png src/chrome/skin/tbb-logo.png -patch -p1 ../torbirdy-logo.patch [% END -%] +[% IF c(var/tor-messenger) -%] +cp ../messenger.png src/chrome/skin/tbb-logo.png +[% END -%] +patch -p1 ../logo.patch make package mv pkg/*.xpi [% dest_dir _ '/' _ c('filename') %] diff --git a/projects/tor-launcher/config b/projects/tor-launcher/config index baceb0d..3e8c704 100644 --- a/projects/tor-launcher/config +++ b/projects/tor-launcher/config @@ -7,7 +7,8 @@ tag_gpg_id: 1 filename: [% project %]-[% c('version') %]-[% c('var/build_id') %].xpi input_files: - filename: torbirdy.png - - filename: torbirdy-logo.patch + - filename: messenger.png + - filename: logo.patch - filename: topdir.patch - filename: controlport.patch content: '[% INCLUDE controlport.patch.tmpl -%]' diff --git a/projects/tor-launcher/logo.patch b/projects/tor-launcher/logo.patch new file mode 100644 index 000..0e5daa1 --- /dev/null +++ b/projects/tor-launcher/logo.patch @@ -0,0 +1,13 @@ +diff --git a/src/chrome/skin/network-settings.css b/src/chrome/skin/network-settings.css +index 331ae42..3331854 100644 +--- a/src/chrome/skin/network-settings.css b/src/chrome/skin/network-settings.css +@@ -90,7 +90,7 @@ button.firstAnswer { + .tbb-logo { + list-style-image: url(chrome://torlauncher/skin/tbb-logo.png); + width: 115px; +- height: 80px; ++ height: 94px; + margin-right: 20px; + } + diff --git a/projects/tor-launcher/messenger.png b/projects/tor-launcher/messenger.png new file mode 100644 index 000..0b4d39c Binary files /dev/null and b/projects/tor-launcher/messenger.png differ diff --git a/projects/tor-launcher/torbirdy-logo.patch b/projects/tor-launcher/torbirdy-logo.patch deleted file mode 100644 index 0e5daa1..000 --- a/projects/tor-launcher/torbirdy-logo.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/chrome/skin/network-settings.css b/src/chrome/skin/network-settings.css -index 331ae42..3331854 100644 a/src/chrome/skin/network-settings.css -+++ b/src/chrome/skin/network-settings.css -@@ -90,7 +90,7 @@ button.firstAnswer { - .tbb-logo { - list-style-image: url(chrome://torlauncher/skin/tbb-logo.png); - width: 115px; -- height: 80px; -+ height: 94px; - margin-right: 20px; - } - ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/bridgedb_completed] Update translations for bridgedb_completed
commit afca4e0fb52ecabca7bc585df53ec03ed35c3f1a Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 14:45:10 2015 + Update translations for bridgedb_completed --- zh_CN/LC_MESSAGES/bridgedb.po |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zh_CN/LC_MESSAGES/bridgedb.po b/zh_CN/LC_MESSAGES/bridgedb.po index c0500cb..7b387cd 100644 --- a/zh_CN/LC_MESSAGES/bridgedb.po +++ b/zh_CN/LC_MESSAGES/bridgedb.po @@ -16,8 +16,8 @@ msgid msgstr Project-Id-Version: The Tor Project\n Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n -PO-Revision-Date: 2015-04-19 13:22+\n -Last-Translator: YF yfdyh...@gmail.com\n +PO-Revision-Date: 2015-04-20 14:43+\n +Last-Translator: khi\n Language-Team: Chinese (China) (http://www.transifex.com/projects/p/torproject/language/zh_CN/)\n MIME-Version: 1.0\n Content-Type: text/plain; charset=UTF-8\n ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/bridgedb] Update translations for bridgedb
commit aa34b8742c63dc21434ae8105a2a701fc33940da Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 14:45:05 2015 + Update translations for bridgedb --- zh_CN/LC_MESSAGES/bridgedb.po |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zh_CN/LC_MESSAGES/bridgedb.po b/zh_CN/LC_MESSAGES/bridgedb.po index c0500cb..7b387cd 100644 --- a/zh_CN/LC_MESSAGES/bridgedb.po +++ b/zh_CN/LC_MESSAGES/bridgedb.po @@ -16,8 +16,8 @@ msgid msgstr Project-Id-Version: The Tor Project\n Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n -PO-Revision-Date: 2015-04-19 13:22+\n -Last-Translator: YF yfdyh...@gmail.com\n +PO-Revision-Date: 2015-04-20 14:43+\n +Last-Translator: khi\n Language-Team: Chinese (China) (http://www.transifex.com/projects/p/torproject/language/zh_CN/)\n MIME-Version: 1.0\n Content-Type: text/plain; charset=UTF-8\n ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/bridgedb] Update translations for bridgedb
commit 31b392655b0c372db2ab4f6b49c91e6c0710772b Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 17:45:03 2015 + Update translations for bridgedb --- ca/LC_MESSAGES/bridgedb.po | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/ca/LC_MESSAGES/bridgedb.po b/ca/LC_MESSAGES/bridgedb.po index 483f4a1..2b9376b 100644 --- a/ca/LC_MESSAGES/bridgedb.po +++ b/ca/LC_MESSAGES/bridgedb.po @@ -8,14 +8,14 @@ # Eloi GarcÃa i Fargas, 2014 # Humbert humbert.cos...@gmail.com, 2014 # isis i...@torproject.org, 2015 -# laia_ laiaado...@gmail.com, 2014-2015 +# laia_, 2014-2015 # Toni Hermoso Pulido toni...@softcatala.cat, 2012 msgid msgstr Project-Id-Version: The Tor Project\n Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n -PO-Revision-Date: 2015-04-19 08:23+\n -Last-Translator: runasand runa.sand...@gmail.com\n +PO-Revision-Date: 2015-04-20 17:44+\n +Last-Translator: laia_\n Language-Team: Catalan (http://www.transifex.com/projects/p/torproject/language/ca/)\n MIME-Version: 1.0\n Content-Type: text/plain; charset=UTF-8\n @@ -37,11 +37,11 @@ msgstr #. Tor Browser #: lib/bridgedb/HTTPServer.py:107 msgid Sorry! Something went wrong with your request. -msgstr Perdoni! Quelcom ha anat malament amb la seva petició. +msgstr Quelcom ha anat malament amb la petició. #: lib/bridgedb/strings.py:18 msgid [This is an automated message; please do not reply.] -msgstr [Aquest es un missatge automà tic; si us plau, no respongui.] +msgstr [Aquest és un missatge automà tic, no el respongui.] #: lib/bridgedb/strings.py:20 msgid Here are your bridges: @@ -52,7 +52,7 @@ msgstr Els vostres ponts: msgid You have exceeded the rate limit. Please slow down! The minimum time between\n emails is %s hours. All further emails during this time period will be ignored. -msgstr Has superat el lÃmit. Siusplau baixa el ritme! El mÃnim de temps entre\nels correus és de %s hores. La resta de correus durant aquest perÃode de temps seran ignorats. +msgstr Heu superat el lÃmit. El mÃnim de temps entre\nels correus és de %s hores. La resta de correus durant aquest perÃode de temps seran ignorats. #: lib/bridgedb/strings.py:25 msgid @@ -72,7 +72,7 @@ msgstr Actualment suportant transport TYPEs: #: lib/bridgedb/strings.py:31 #, python-format msgid Hey, %s! -msgstr Ei, %s! +msgstr Hola, %s! #: lib/bridgedb/strings.py:32 msgid Hello, friend! @@ -90,7 +90,7 @@ msgstr Claus Públiques msgid This email was generated with rainbows, unicorns, and sparkles\n for %s on %s at %s. -msgstr Aquest correu va ser creat amb unicorns, arcs de Sant Martà i espurnes\nper %s a %s en %s. +msgstr Aquest correu va ser creat amb unicorns, arcs de Sant Martà i espurnes\nper a %s el %s a les %s. #. TRANSLATORS: Please DO NOT translate BridgeDB. #. TRANSLATORS: Please DO NOT translate Pluggable Transports. @@ -104,7 +104,7 @@ msgid difficult for anyone watching your internet traffic to determine that you are\n using Tor.\n \n -msgstr BridgeDB pot proveïr ponts amb diversos %stypes de Pluggable Transports%s,\nque pot provocar ofuscacions a la teva connexió a Tor Network, fent-ho més difÃcil per a qualsevol veient el teu trà fic de connexió a internet de determinar que està s\nusant Tor.\n +msgstr BridgeDB pot proveïr ponts amb diversos %stypes de Pluggable Transports%s,\nque poden provocar ofuscacions a la vostra connexió a Tor Network, fent més difÃcil determinar que esteu usant Tor a qualsevol que vegi el vostre trà fic de connexió a\ninternet \n #. TRANSLATORS: Please DO NOT translate Pluggable Transports. #: lib/bridgedb/strings.py:54 @@ -112,7 +112,7 @@ msgid Some bridges with IPv6 addresses are also available, though some Pluggable\n Transports aren't IPv6 compatible.\n \n -msgstr També hi ha alguns ponts amb adreces IPv6, tot i que alguns Pluggable\nTransports no són compatibles amb IPv6.\n\n +msgstr També hi ha ponts disponibles amb adreces IPv6, tot i que alguns Pluggable\nTransports no són compatibles amb IPv6.\n\n #. TRANSLATORS: Please DO NOT translate BridgeDB. #. TRANSLATORS: The phrase plain-ol'-vanilla means plain, boring, @@ -209,7 +209,7 @@ msgid To enter bridges into Tor Browser, first go to the %s Tor Browser download\n page %s and then follow the instructions there for downloading and starting\n Tor Browser. -msgstr +msgstr Per introduir ponts al Navegador Tor, primer cal anar a %s de la pà gina de descà rrega\n%s i després seguir les instruccions per descarregar i iniciar\nel Navegador Tor. #. TRANSLATORS: Please DO NOT translate Tor. #: lib/bridgedb/strings.py:126 ___ tor-commits mailing list tor-commits@lists.torproject.org
[tor-commits] [translation/bridgedb_completed] Update translations for bridgedb_completed
commit 07f1b5766a4fb1b338d3fe12cf7e546dd64120df Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 18:15:08 2015 + Update translations for bridgedb_completed --- ca/LC_MESSAGES/bridgedb.po | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ca/LC_MESSAGES/bridgedb.po b/ca/LC_MESSAGES/bridgedb.po index 2b9376b..36f8c24 100644 --- a/ca/LC_MESSAGES/bridgedb.po +++ b/ca/LC_MESSAGES/bridgedb.po @@ -14,7 +14,7 @@ msgid msgstr Project-Id-Version: The Tor Project\n Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n -PO-Revision-Date: 2015-04-20 17:44+\n +PO-Revision-Date: 2015-04-20 18:02+\n Last-Translator: laia_\n Language-Team: Catalan (http://www.transifex.com/projects/p/torproject/language/ca/)\n MIME-Version: 1.0\n @@ -126,7 +126,7 @@ msgid Pluggable Transports %s which maybe doesn't sound as cool, but they can still\n help to circumvent internet censorship in many cases.\n \n -msgstr A més, BridgeDB té molts ponts %s està ndard sense \nPluggable Transports %s, que potser no són tan interessants, però que també\npoden ajudar a esquivar la censura d'internet, en molts casos.\n +msgstr A més a més, BridgeDB té molts ponts %s està ndard sense \nPluggable Transports %s, que potser no són tan interessants, però que també\npoden ajudar a esquivar la censura d'internet en molts casos.\n #: lib/bridgedb/strings.py:76 msgid What are bridges? @@ -135,11 +135,11 @@ msgstr Què són els ponts? #: lib/bridgedb/strings.py:77 #, python-format msgid %s Bridges %s are Tor relays that help you circumvent censorship. -msgstr %s Ponts %s són mecanismes Tor que ajuden a esquivar la censura. +msgstr %s Ponts %s són repetidors Tor que ajuden a esquivar la censura. #: lib/bridgedb/strings.py:82 msgid I need an alternative way of getting bridges! -msgstr Necessito una manera alternativa d'obtenir ponts +msgstr Em cal una manera alternativa d'obtenir ponts. #: lib/bridgedb/strings.py:83 #, python-format @@ -157,7 +157,7 @@ msgstr No em funcionen els ponts! Ajuda! #: lib/bridgedb/strings.py:92 #, python-format msgid If your Tor doesn't work, you should email %s. -msgstr Si el teu Tor no funciona, hauries d'enviar un correu a %s. +msgstr Si Tor no us funciona, haurÃeu d'enviar un correu a %s. #. TRANSLATORS: Please DO NOT translate Pluggable Transports. #. TRANSLATORS: Please DO NOT translate Tor Browser. @@ -175,32 +175,32 @@ msgstr Les vostres lÃnies de ponts: #: lib/bridgedb/strings.py:104 msgid Get Bridges! -msgstr Descarrega ponts! +msgstr Descarregueu ponts! #: lib/bridgedb/strings.py:108 msgid Please select options for bridge type: -msgstr Si us plau, sel·leccioni les opcions pel tipus de pont: +msgstr Seleccioneu les opcions pel tipus de pont: #: lib/bridgedb/strings.py:109 msgid Do you need IPv6 addresses? -msgstr Necessites adreces IPv6? +msgstr Necessiteu adreces IPv6? #: lib/bridgedb/strings.py:110 #, python-format msgid Do you need a %s? -msgstr Necessites un %s? +msgstr Necessiteu un %s? #: lib/bridgedb/strings.py:114 msgid Your browser is not displaying images properly. -msgstr El seu navegador no està mostrant les imatges correctament. +msgstr El navegador no està mostrant les imatges correctament. #: lib/bridgedb/strings.py:115 msgid Enter the characters from the image above... -msgstr Introdueixi els carà cters de la imatge superior... +msgstr Introduïu els carà cters de la imatge superior... #: lib/bridgedb/strings.py:119 msgid How to start using your bridges -msgstr Per començar a utilitzar els ponts +msgstr Com començar a utilitzar els ponts #. TRANSLATORS: Please DO NOT translate Tor Browser. #: lib/bridgedb/strings.py:121 @@ -209,7 +209,7 @@ msgid To enter bridges into Tor Browser, first go to the %s Tor Browser download\n page %s and then follow the instructions there for downloading and starting\n Tor Browser. -msgstr Per introduir ponts al Navegador Tor, primer cal anar a %s de la pà gina de descà rrega\n%s i després seguir les instruccions per descarregar i iniciar\nel Navegador Tor. +msgstr Per introduir ponts al Tor Browser, primer cal anar a %s de la pà gina de descà rrega\n%s i després seguir les instruccions per descarregar i iniciar\nel Tor Browser. #. TRANSLATORS: Please DO NOT translate Tor. #: lib/bridgedb/strings.py:126 @@ -232,7 +232,7 @@ msgid paste the bridge lines into the text input box. Finally, click 'Connect', and\n you should be good to go! If you experience trouble, try clicking the 'Help'\n button in the 'Tor Network Settings' wizard for further assistance. -msgstr Seleccioneu 'SÃ' i després cliqueu 'Següent'. Per configurar els vostres ponts nous, copieu i\nenganxeu les lÃnies del pont al següent quadre d'entrada de text. Finalment,
[tor-commits] [translation/bridgedb_completed] Update translations for bridgedb_completed
commit 8248c19c602cdd009a7320944c0c63c135f58591 Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 17:45:08 2015 + Update translations for bridgedb_completed --- ca/LC_MESSAGES/bridgedb.po | 48 ++-- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/ca/LC_MESSAGES/bridgedb.po b/ca/LC_MESSAGES/bridgedb.po index ebf752f..2b9376b 100644 --- a/ca/LC_MESSAGES/bridgedb.po +++ b/ca/LC_MESSAGES/bridgedb.po @@ -8,15 +8,14 @@ # Eloi GarcÃa i Fargas, 2014 # Humbert humbert.cos...@gmail.com, 2014 # isis i...@torproject.org, 2015 -# laia_ laiaado...@gmail.com, 2014-2015 +# laia_, 2014-2015 # Toni Hermoso Pulido toni...@softcatala.cat, 2012 msgid msgstr Project-Id-Version: The Tor Project\n -Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'\n -POT-Creation-Date: 2015-02-03 03:24+\n -PO-Revision-Date: 2015-03-21 22:22+\n -Last-Translator: isis i...@torproject.org\n +Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n +PO-Revision-Date: 2015-04-20 17:44+\n +Last-Translator: laia_\n Language-Team: Catalan (http://www.transifex.com/projects/p/torproject/language/ca/)\n MIME-Version: 1.0\n Content-Type: text/plain; charset=UTF-8\n @@ -36,13 +35,13 @@ msgstr #. fteproxy #. Tor #. Tor Browser -#: lib/bridgedb/HTTPServer.py:122 +#: lib/bridgedb/HTTPServer.py:107 msgid Sorry! Something went wrong with your request. -msgstr Perdoni! Quelcom ha anat malament amb la seva petició. +msgstr Quelcom ha anat malament amb la petició. #: lib/bridgedb/strings.py:18 msgid [This is an automated message; please do not reply.] -msgstr [Aquest es un missatge automà tic; si us plau, no respongui.] +msgstr [Aquest és un missatge automà tic, no el respongui.] #: lib/bridgedb/strings.py:20 msgid Here are your bridges: @@ -53,7 +52,7 @@ msgstr Els vostres ponts: msgid You have exceeded the rate limit. Please slow down! The minimum time between\n emails is %s hours. All further emails during this time period will be ignored. -msgstr Has superat el lÃmit. Siusplau baixa el ritme! El mÃnim de temps entre\nels correus és de %s hores. La resta de correus durant aquest perÃode de temps seran ignorats. +msgstr Heu superat el lÃmit. El mÃnim de temps entre\nels correus és de %s hores. La resta de correus durant aquest perÃode de temps seran ignorats. #: lib/bridgedb/strings.py:25 msgid @@ -73,7 +72,7 @@ msgstr Actualment suportant transport TYPEs: #: lib/bridgedb/strings.py:31 #, python-format msgid Hey, %s! -msgstr Ei, %s! +msgstr Hola, %s! #: lib/bridgedb/strings.py:32 msgid Hello, friend! @@ -91,7 +90,7 @@ msgstr Claus Públiques msgid This email was generated with rainbows, unicorns, and sparkles\n for %s on %s at %s. -msgstr Aquest correu va ser creat amb unicorns, arcs de Sant Martà i espurnes\nper %s a %s en %s. +msgstr Aquest correu va ser creat amb unicorns, arcs de Sant Martà i espurnes\nper a %s el %s a les %s. #. TRANSLATORS: Please DO NOT translate BridgeDB. #. TRANSLATORS: Please DO NOT translate Pluggable Transports. @@ -105,7 +104,7 @@ msgid difficult for anyone watching your internet traffic to determine that you are\n using Tor.\n \n -msgstr BridgeDB pot proveïr ponts amb diversos %stypes de Pluggable Transports%s,\nque pot provocar ofuscacions a la teva connexió a Tor Network, fent-ho més difÃcil per a qualsevol veient el teu trà fic de connexió a internet de determinar que està s\nusant Tor.\n +msgstr BridgeDB pot proveïr ponts amb diversos %stypes de Pluggable Transports%s,\nque poden provocar ofuscacions a la vostra connexió a Tor Network, fent més difÃcil determinar que esteu usant Tor a qualsevol que vegi el vostre trà fic de connexió a\ninternet \n #. TRANSLATORS: Please DO NOT translate Pluggable Transports. #: lib/bridgedb/strings.py:54 @@ -113,7 +112,7 @@ msgid Some bridges with IPv6 addresses are also available, though some Pluggable\n Transports aren't IPv6 compatible.\n \n -msgstr També hi ha alguns ponts amb adreces IPv6, tot i que alguns Pluggable\nTransports no són compatibles amb IPv6.\n\n +msgstr També hi ha ponts disponibles amb adreces IPv6, tot i que alguns Pluggable\nTransports no són compatibles amb IPv6.\n\n #. TRANSLATORS: Please DO NOT translate BridgeDB. #. TRANSLATORS: The phrase plain-ol'-vanilla means plain, boring, @@ -207,26 +206,27 @@ msgstr Per començar a utilitzar els ponts #: lib/bridgedb/strings.py:121 #, python-format msgid -To enter bridges into Tor Browser, follow the instructions on the %s Tor\n -Browser download page %s to start Tor Browser. -msgstr Per introduir ponts al Tor Browser, seguiu les instruccions de la pà gina\nde baixada %s del
[tor-commits] [translation/bridgedb] Update translations for bridgedb
commit d7f675dd5b70df01cf275c5f94769c022a37fb6b Author: Translation commit bot translat...@torproject.org Date: Mon Apr 20 18:15:03 2015 + Update translations for bridgedb --- ca/LC_MESSAGES/bridgedb.po | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ca/LC_MESSAGES/bridgedb.po b/ca/LC_MESSAGES/bridgedb.po index 2b9376b..36f8c24 100644 --- a/ca/LC_MESSAGES/bridgedb.po +++ b/ca/LC_MESSAGES/bridgedb.po @@ -14,7 +14,7 @@ msgid msgstr Project-Id-Version: The Tor Project\n Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDBkeywords=bridgedb-reported,msgidcc=isis,sysrqbowner=isis'POT-Creation-Date: 2015-03-19 22:13+\n -PO-Revision-Date: 2015-04-20 17:44+\n +PO-Revision-Date: 2015-04-20 18:02+\n Last-Translator: laia_\n Language-Team: Catalan (http://www.transifex.com/projects/p/torproject/language/ca/)\n MIME-Version: 1.0\n @@ -126,7 +126,7 @@ msgid Pluggable Transports %s which maybe doesn't sound as cool, but they can still\n help to circumvent internet censorship in many cases.\n \n -msgstr A més, BridgeDB té molts ponts %s està ndard sense \nPluggable Transports %s, que potser no són tan interessants, però que també\npoden ajudar a esquivar la censura d'internet, en molts casos.\n +msgstr A més a més, BridgeDB té molts ponts %s està ndard sense \nPluggable Transports %s, que potser no són tan interessants, però que també\npoden ajudar a esquivar la censura d'internet en molts casos.\n #: lib/bridgedb/strings.py:76 msgid What are bridges? @@ -135,11 +135,11 @@ msgstr Què són els ponts? #: lib/bridgedb/strings.py:77 #, python-format msgid %s Bridges %s are Tor relays that help you circumvent censorship. -msgstr %s Ponts %s són mecanismes Tor que ajuden a esquivar la censura. +msgstr %s Ponts %s són repetidors Tor que ajuden a esquivar la censura. #: lib/bridgedb/strings.py:82 msgid I need an alternative way of getting bridges! -msgstr Necessito una manera alternativa d'obtenir ponts +msgstr Em cal una manera alternativa d'obtenir ponts. #: lib/bridgedb/strings.py:83 #, python-format @@ -157,7 +157,7 @@ msgstr No em funcionen els ponts! Ajuda! #: lib/bridgedb/strings.py:92 #, python-format msgid If your Tor doesn't work, you should email %s. -msgstr Si el teu Tor no funciona, hauries d'enviar un correu a %s. +msgstr Si Tor no us funciona, haurÃeu d'enviar un correu a %s. #. TRANSLATORS: Please DO NOT translate Pluggable Transports. #. TRANSLATORS: Please DO NOT translate Tor Browser. @@ -175,32 +175,32 @@ msgstr Les vostres lÃnies de ponts: #: lib/bridgedb/strings.py:104 msgid Get Bridges! -msgstr Descarrega ponts! +msgstr Descarregueu ponts! #: lib/bridgedb/strings.py:108 msgid Please select options for bridge type: -msgstr Si us plau, sel·leccioni les opcions pel tipus de pont: +msgstr Seleccioneu les opcions pel tipus de pont: #: lib/bridgedb/strings.py:109 msgid Do you need IPv6 addresses? -msgstr Necessites adreces IPv6? +msgstr Necessiteu adreces IPv6? #: lib/bridgedb/strings.py:110 #, python-format msgid Do you need a %s? -msgstr Necessites un %s? +msgstr Necessiteu un %s? #: lib/bridgedb/strings.py:114 msgid Your browser is not displaying images properly. -msgstr El seu navegador no està mostrant les imatges correctament. +msgstr El navegador no està mostrant les imatges correctament. #: lib/bridgedb/strings.py:115 msgid Enter the characters from the image above... -msgstr Introdueixi els carà cters de la imatge superior... +msgstr Introduïu els carà cters de la imatge superior... #: lib/bridgedb/strings.py:119 msgid How to start using your bridges -msgstr Per començar a utilitzar els ponts +msgstr Com començar a utilitzar els ponts #. TRANSLATORS: Please DO NOT translate Tor Browser. #: lib/bridgedb/strings.py:121 @@ -209,7 +209,7 @@ msgid To enter bridges into Tor Browser, first go to the %s Tor Browser download\n page %s and then follow the instructions there for downloading and starting\n Tor Browser. -msgstr Per introduir ponts al Navegador Tor, primer cal anar a %s de la pà gina de descà rrega\n%s i després seguir les instruccions per descarregar i iniciar\nel Navegador Tor. +msgstr Per introduir ponts al Tor Browser, primer cal anar a %s de la pà gina de descà rrega\n%s i després seguir les instruccions per descarregar i iniciar\nel Tor Browser. #. TRANSLATORS: Please DO NOT translate Tor. #: lib/bridgedb/strings.py:126 @@ -232,7 +232,7 @@ msgid paste the bridge lines into the text input box. Finally, click 'Connect', and\n you should be good to go! If you experience trouble, try clicking the 'Help'\n button in the 'Tor Network Settings' wizard for further assistance. -msgstr Seleccioneu 'SÃ' i després cliqueu 'Següent'. Per configurar els vostres ponts nous, copieu i\nenganxeu les lÃnies del pont al següent quadre d'entrada de text. Finalment, cliqueu
[tor-commits] [tor-messenger-build/master] Change directory before applying patches
commit 7962e189f632a7eb47bb9c63980d1afd558a Author: Sukhbir Singh sukh...@torproject.org Date: Mon Apr 20 12:00:57 2015 -0400 Change directory before applying patches --- projects/instantbird/build |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/instantbird/build b/projects/instantbird/build index a999f32..c4bd842 100644 --- a/projects/instantbird/build +++ b/projects/instantbird/build @@ -36,13 +36,13 @@ cd ../[% project %]-[% c('version') %] mkdir im/branding/messenger cp -R im/branding/nightly/* im/branding/messenger/ -cd mozilla for patch in $(ls -1 ../*.patch | sort) do patch -p1 $patch done cat ../spi-cacert.der mozilla/security/nss/lib/ckfw/builtins/certdata.txt cp ../cert_override.txt im/app/profile +cd mozilla if ls -1 $rootdir/*.mozpatch /dev/null 21 then for patch in $(ls -1 $rootdir/*.mozpatch | sort) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits