[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Monotone-commits-diffs] org.debian.monotone: c3e434fed45b495e7c2f2ecb7a
From: |
code |
Subject: |
[Monotone-commits-diffs] org.debian.monotone: c3e434fed45b495e7c2f2ecb7ae1e92cfad40dba |
Date: |
Tue, 16 Jul 2013 23:21:17 +0200 (CEST) |
revision: c3e434fed45b495e7c2f2ecb7ae1e92cfad40dba
date: 2013-05-24T13:30:19
author: address@hidden
branch: org.debian.monotone
changelog:
merge of '99a1a408f8f617c61f6f0c209edccd5bac733dd9'
and 'fe6c6bf926bbe5e6518d5d66a7d6f3b0dfa24ad8'
manifest:
format_version "1"
new_manifest [ca283a71b588b8a71dbfae66e1fe0a776fc4dd92]
old_revision [99a1a408f8f617c61f6f0c209edccd5bac733dd9]
add_dir "ATTIC"
add_file "ATTIC/05-hurd-compilation-fix.diff"
content [8d2765907988c7ea9abbe92ec8a72160576a0ebe]
add_file "ATTIC/06-broken-dns-work-around.diff"
content [20357fa33ad157dab9602406fc79c4816e1b9f9d]
add_file "ATTIC/pt_BR.po"
content [51c8cd56d1f39b98e6ed63b2f9767adb4fa2ff46]
old_revision [fe6c6bf926bbe5e6518d5d66a7d6f3b0dfa24ad8]
add_file "patches/05-hurd-compilation-fix.diff"
content [8d2765907988c7ea9abbe92ec8a72160576a0ebe]
add_file "patches/06-broken-dns-work-around.diff"
content [20357fa33ad157dab9602406fc79c4816e1b9f9d]
add_file "patches/07-support-boost-1.53.diff"
content [bb7f7a257c5892dd3eac9612ce12feadac11363f]
add_file "po/pt_BR.po"
content [51c8cd56d1f39b98e6ed63b2f9767adb4fa2ff46]
patch "control"
from [278e8677fbdac3723de99c93338164f1cb4be42c]
to [edb6392e8b0af8208aee255f1c25b2d6b9580f20]
============================================================
--- /dev/null
+++ ATTIC/05-hurd-compilation-fix.diff 8d2765907988c7ea9abbe92ec8a72160576a0ebe
@@ -0,0 +1,80 @@
+Description: fix compilation on hurd-i386
+ Do not rely on MAXPATHLEN to be defined. Instead iteratively call getcwd()
+ with an increasing buffer size until the current path fits.
+Bug-Debian: http://bugs.debian.org/624779
+Origin: upstream, backport of 64e690fd0e14f6a0ad816d8fd55044f36d8559d5,
+ d23dbf2ce78cd11fc1a1dc85cd78cc28ab2df8ca and
+ c14cb021dafa331f859634a14087f6f81d870aed
+============================================================
+--- a/src/netxx/serverbase.cxx
++++ b/src/netxx/serverbase.cxx
+@@ -44,6 +44,9 @@
+ #include "probeinfo.h"
+ #include "socket.h"
+
++// Monotone specific, for get_current_working_dir()
++#include <src/platform.hh>
++
+ // standard includes
+ #include <map>
+ #include <vector>
+@@ -167,14 +170,16 @@
+ if (saun->sun_path[0] == '/') {
+ files_.push_back(saun->sun_path);
+ } else {
+- char buffer[MAXPATHLEN];
+-
+- if (getcwd(buffer, sizeof(buffer))) {
+- std::string fullpath = buffer; fullpath += '/'; fullpath += saun->sun_path;
+- files_.push_back(fullpath);
+- } else {
+- files_.push_back(saun->sun_path);
+- }
++ /*
++ * the original (netxx) code here relied on MAXPATHLEN,
++ * which isn't defined on hurd. As netxx seems to only
++ * live on within monotone, we can as well make it
++ * inter-dependent. And the unix/fs.cc variant certainly
++ * gets more test mileage than anything special here.
++ */
++ std::string fullpath = get_current_working_dir();
++ fullpath += '/'; fullpath += saun->sun_path;
++ files_.push_back(fullpath);
+ }
+ }
+ # endif
+--- a/src/unix/fs.cc
++++ b/src/unix/fs.cc
+@@ -41,14 +41,26 @@
+ string
+ get_current_working_dir()
+ {
+- char buffer[4096];
+- if (!getcwd(buffer, 4096))
++ std::vector<char> cwd_buf;
++ size_t cwd_sz = 4096;
++
++ // This funny loop prevents having to specify a MAXPATHLEN or similar, but
++ // uses a dynamic approach, repeatedly calling getcwd() until our buffer
++ // is big enough for the current path to fit. Think of it as a portable
++ // replacement for get_current_dir_name(), which is GNU-only.
++ do
+ {
+- const int err = errno;
+- E(false, origin::system,
+- F("cannot get working directory: %s") % os_strerror(err));
++ cwd_buf.resize(cwd_sz);
++ if (getcwd(&cwd_buf[0], cwd_sz))
++ return string(&cwd_buf[0]);
++
++ cwd_sz += 4096;
+ }
+- return string(buffer);
++ while (errno == ERANGE);
++
++ const int err = errno;
++ E(false, origin::system,
++ F("cannot get working directory: %s") % os_strerror(err));
+ }
+
+ void
============================================================
--- /dev/null
+++ ATTIC/06-broken-dns-work-around.diff 20357fa33ad157dab9602406fc79c4816e1b9f9d
@@ -0,0 +1,31 @@
+Description: work-around to skip a test in case we are behind a broken DNS
+ Checks a domain that's supposed to be inexistent and skips a test that
+ fails in case a broken DNS tries to be helpful and resolves such an
+ inexistent name.
+Bug-Debian: http://bugs.debian.org/671080
+Origin: upstream, commit: 7b87eec0dc2298a18531b95c1cd2d1b72986e71c
+--- a/test/func/netsync_badhost_gives_nice_error/__driver__.lua
++++ b/test/func/netsync_badhost_gives_nice_error/__driver__.lua
+@@ -1,3 +1,22 @@
++skip_if(not existsonpath("host"))
++
++-- We punt in case of misconfigured DNS servers that resolve inexistant
++-- domain names. (Don't even think about buying that domain name!)
++L("\nChecking DNS resolution for nosuchhost__blahblah__asdvasoih.com: ")
++local pid = spawn_redirected("", "host-lookup.out", "host-lookup.err",
++ "host", "nosuchhost__blahblah__asdvasoih.com")
++local ec = wait(pid)
++
++if ec == 0 then
++ L("failed\n",
++ "\n",
++ "Your DNS resolver is trying to be helpful by resolving names that do\n",
++ "not exist. `host nosuchhost__blahblah__asdvasoih.com` returned:\n\n")
++ log_file_contents("host-lookup.out")
++ skip_if(true)
++else
++ L("good\n")
++end
+
+ mtn_setup()
+
============================================================
--- /dev/null
+++ ATTIC/pt_BR.po 51c8cd56d1f39b98e6ed63b2f9767adb4fa2ff46
@@ -0,0 +1,70 @@
+# Brazilian Portuguese debconf templates translation for monotone.
+# Copyright (C) 2012 Adriano Rafael Gomes <address@hidden>.
+#
+# This file is made available under the GNU GPL version 2.0 or
+# greater. See the accompanying file COPYING for details.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: monotone 1.0-6\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2009-09-04 14:30-0700\n"
+"PO-Revision-Date: 2012-03-07 21:21-0300\n"
+"Last-Translator: Adriano Rafael Gomes <address@hidden>\n"
+"Language-Team: Brazilian Portuguese <address@hidden"
+"org>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../monotone-server.templates:1001
+msgid "Automatically manage monotone database?"
+msgstr "Gerenciar o banco de dados do monotone automaticamente?"
+
+#. Type: boolean
+#. Description
+#: ../monotone-server.templates:1001
+msgid ""
+"Select this option to automatically manage the monotone database. If "
+"selected, the database will automatically be created. Also when upgrading, "
+"the database will be automatically migrated if necessary."
+msgstr ""
+"Selecione essa opção para gerenciar o banco de dados do monotone "
+"automaticamente. Se selecionada, o banco de dados será automaticamente "
+"criado. Também, ao atualizar, o banco de dados será migrado automaticamente, "
+"se necessário."
+
+#. Type: string
+#. Description
+#: ../monotone-server.templates:2001
+msgid "Monotone key id:"
+msgstr "Id da chave do monotone:"
+
+#. Type: string
+#. Description
+#: ../monotone-server.templates:2001
+msgid ""
+"Enter the id of the key your monotone server will use. The key id is "
+"typically an email address."
+msgstr ""
+"Informe o id da chave que o seu servidor monotone usará. O id da chave é "
+"geralmente um endereço de e-mail."
+
+#. Type: password
+#. Description
+#: ../monotone-server.templates:3001
+msgid "Monotone key passphrase:"
+msgstr "Senha da chave do monotone:"
+
+#. Type: password
+#. Description
+#: ../monotone-server.templates:3001
+msgid ""
+"Please choose a passphrase for your monotone key. If left blank, one will be "
+"generated for you."
+msgstr ""
+"Por favor, escolha uma senha para a sua chave do monotone. Se deixada em "
+"branco, uma senha será gerada para você."
============================================================
--- control 278e8677fbdac3723de99c93338164f1cb4be42c
+++ control edb6392e8b0af8208aee255f1c25b2d6b9580f20
@@ -8,7 +8,7 @@ Vcs-Mtn: mtn://monotone.ca/debian-mtn?or
Homepage: http://monotone.ca/
Vcs-Browser: https://code.monotone.ca/p/debian-mtn/source/tree/h:org.debian.monotone/
Vcs-Mtn: mtn://monotone.ca/debian-mtn?org.debian.monotone
-Build-Depends: debhelper (>= 9), autotools-dev, po-debconf,
+Build-Depends: debhelper (>= 9), autotools-dev, po-debconf, bind9-host,
libboost-dev, libbotan1.10-dev, libidn11-dev, liblua5.1-0-dev,
libpcre3-dev, libsqlite3-dev, libz-dev, texinfo, expect, bash-completion,
bash (>= 4.0), source-highlight, mime-construct
============================================================
--- /dev/null
+++ patches/05-hurd-compilation-fix.diff 8d2765907988c7ea9abbe92ec8a72160576a0ebe
@@ -0,0 +1,80 @@
+Description: fix compilation on hurd-i386
+ Do not rely on MAXPATHLEN to be defined. Instead iteratively call getcwd()
+ with an increasing buffer size until the current path fits.
+Bug-Debian: http://bugs.debian.org/624779
+Origin: upstream, backport of 64e690fd0e14f6a0ad816d8fd55044f36d8559d5,
+ d23dbf2ce78cd11fc1a1dc85cd78cc28ab2df8ca and
+ c14cb021dafa331f859634a14087f6f81d870aed
+============================================================
+--- a/src/netxx/serverbase.cxx
++++ b/src/netxx/serverbase.cxx
+@@ -44,6 +44,9 @@
+ #include "probeinfo.h"
+ #include "socket.h"
+
++// Monotone specific, for get_current_working_dir()
++#include <src/platform.hh>
++
+ // standard includes
+ #include <map>
+ #include <vector>
+@@ -167,14 +170,16 @@
+ if (saun->sun_path[0] == '/') {
+ files_.push_back(saun->sun_path);
+ } else {
+- char buffer[MAXPATHLEN];
+-
+- if (getcwd(buffer, sizeof(buffer))) {
+- std::string fullpath = buffer; fullpath += '/'; fullpath += saun->sun_path;
+- files_.push_back(fullpath);
+- } else {
+- files_.push_back(saun->sun_path);
+- }
++ /*
++ * the original (netxx) code here relied on MAXPATHLEN,
++ * which isn't defined on hurd. As netxx seems to only
++ * live on within monotone, we can as well make it
++ * inter-dependent. And the unix/fs.cc variant certainly
++ * gets more test mileage than anything special here.
++ */
++ std::string fullpath = get_current_working_dir();
++ fullpath += '/'; fullpath += saun->sun_path;
++ files_.push_back(fullpath);
+ }
+ }
+ # endif
+--- a/src/unix/fs.cc
++++ b/src/unix/fs.cc
+@@ -41,14 +41,26 @@
+ string
+ get_current_working_dir()
+ {
+- char buffer[4096];
+- if (!getcwd(buffer, 4096))
++ std::vector<char> cwd_buf;
++ size_t cwd_sz = 4096;
++
++ // This funny loop prevents having to specify a MAXPATHLEN or similar, but
++ // uses a dynamic approach, repeatedly calling getcwd() until our buffer
++ // is big enough for the current path to fit. Think of it as a portable
++ // replacement for get_current_dir_name(), which is GNU-only.
++ do
+ {
+- const int err = errno;
+- E(false, origin::system,
+- F("cannot get working directory: %s") % os_strerror(err));
++ cwd_buf.resize(cwd_sz);
++ if (getcwd(&cwd_buf[0], cwd_sz))
++ return string(&cwd_buf[0]);
++
++ cwd_sz += 4096;
+ }
+- return string(buffer);
++ while (errno == ERANGE);
++
++ const int err = errno;
++ E(false, origin::system,
++ F("cannot get working directory: %s") % os_strerror(err));
+ }
+
+ void
============================================================
--- /dev/null
+++ patches/06-broken-dns-work-around.diff 20357fa33ad157dab9602406fc79c4816e1b9f9d
@@ -0,0 +1,31 @@
+Description: work-around to skip a test in case we are behind a broken DNS
+ Checks a domain that's supposed to be inexistent and skips a test that
+ fails in case a broken DNS tries to be helpful and resolves such an
+ inexistent name.
+Bug-Debian: http://bugs.debian.org/671080
+Origin: upstream, commit: 7b87eec0dc2298a18531b95c1cd2d1b72986e71c
+--- a/test/func/netsync_badhost_gives_nice_error/__driver__.lua
++++ b/test/func/netsync_badhost_gives_nice_error/__driver__.lua
+@@ -1,3 +1,22 @@
++skip_if(not existsonpath("host"))
++
++-- We punt in case of misconfigured DNS servers that resolve inexistant
++-- domain names. (Don't even think about buying that domain name!)
++L("\nChecking DNS resolution for nosuchhost__blahblah__asdvasoih.com: ")
++local pid = spawn_redirected("", "host-lookup.out", "host-lookup.err",
++ "host", "nosuchhost__blahblah__asdvasoih.com")
++local ec = wait(pid)
++
++if ec == 0 then
++ L("failed\n",
++ "\n",
++ "Your DNS resolver is trying to be helpful by resolving names that do\n",
++ "not exist. `host nosuchhost__blahblah__asdvasoih.com` returned:\n\n")
++ log_file_contents("host-lookup.out")
++ skip_if(true)
++else
++ L("good\n")
++end
+
+ mtn_setup()
+
============================================================
--- /dev/null
+++ patches/07-support-boost-1.53.diff bb7f7a257c5892dd3eac9612ce12feadac11363f
@@ -0,0 +1,89 @@
+--- a/src/database.cc
++++ b/src/database.cc
+@@ -92,7 +92,7 @@
+ using std::accumulate;
+
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+ using boost::lexical_cast;
+ using boost::get;
+ using boost::tuple;
+@@ -3430,7 +3430,7 @@
+
+ shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
+ shared_ptr<RSA_PublicKey> pub_key
+- = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++ = dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+ if (!pub_key)
+ throw recoverable_failure(origin::system,
+ "Failed to get RSA encrypting key");
+@@ -3481,7 +3481,7 @@
+ L(FL("building verifier for %d-byte pub key") % pub_block.size());
+ shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
+ shared_ptr<RSA_PublicKey> pub_key
+- = boost::shared_dynamic_cast<RSA_PublicKey>(x509_key);
++ = boost::dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+
+ E(pub_key, id.inner().made_from,
+ F("Failed to get RSA verifying key for %s") % id);
+--- a/src/key_store.cc
++++ b/src/key_store.cc
+@@ -43,7 +43,7 @@
+
+ using boost::scoped_ptr;
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+
+ using Botan::RSA_PrivateKey;
+ using Botan::RSA_PublicKey;
+@@ -641,7 +641,7 @@
+ I(pkcs8_key);
+
+ shared_ptr<RSA_PrivateKey> priv_key;
+- priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
++ priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
+ E(priv_key, origin::no_fault,
+ F("failed to extract RSA private key from PKCS#8 keypair"));
+
+@@ -879,7 +879,8 @@
+ L(FL("make_signature: building %d-byte pub key") % pub_block.size());
+ shared_ptr<X509_PublicKey> x509_key =
+ shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
+- shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++ shared_ptr<RSA_PublicKey> pub_key =
++ dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+
+ if (!pub_key)
+ throw recoverable_failure(origin::system,
+@@ -1092,7 +1093,7 @@
+ continue;
+ }
+
+- priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
++ priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
+ I(priv_key);
+
+ // now we can write out the new key
+--- a/src/ssh_agent.cc
++++ b/src/ssh_agent.cc
+@@ -32,7 +32,7 @@
+ using std::vector;
+
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+
+ using Botan::RSA_PublicKey;
+ using Botan::RSA_PrivateKey;
+@@ -391,7 +391,8 @@
+ L(FL("has_key: building %d-byte pub key") % pub_block.size());
+ shared_ptr<X509_PublicKey> x509_key =
+ shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
+- shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++ shared_ptr<RSA_PublicKey> pub_key =
++ dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+
+ if (!pub_key)
+ throw recoverable_failure(origin::system,
============================================================
--- /dev/null
+++ po/pt_BR.po 51c8cd56d1f39b98e6ed63b2f9767adb4fa2ff46
@@ -0,0 +1,70 @@
+# Brazilian Portuguese debconf templates translation for monotone.
+# Copyright (C) 2012 Adriano Rafael Gomes <address@hidden>.
+#
+# This file is made available under the GNU GPL version 2.0 or
+# greater. See the accompanying file COPYING for details.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: monotone 1.0-6\n"
+"Report-Msgid-Bugs-To: address@hidden"
+"POT-Creation-Date: 2009-09-04 14:30-0700\n"
+"PO-Revision-Date: 2012-03-07 21:21-0300\n"
+"Last-Translator: Adriano Rafael Gomes <address@hidden>\n"
+"Language-Team: Brazilian Portuguese <address@hidden"
+"org>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../monotone-server.templates:1001
+msgid "Automatically manage monotone database?"
+msgstr "Gerenciar o banco de dados do monotone automaticamente?"
+
+#. Type: boolean
+#. Description
+#: ../monotone-server.templates:1001
+msgid ""
+"Select this option to automatically manage the monotone database. If "
+"selected, the database will automatically be created. Also when upgrading, "
+"the database will be automatically migrated if necessary."
+msgstr ""
+"Selecione essa opção para gerenciar o banco de dados do monotone "
+"automaticamente. Se selecionada, o banco de dados será automaticamente "
+"criado. Também, ao atualizar, o banco de dados será migrado automaticamente, "
+"se necessário."
+
+#. Type: string
+#. Description
+#: ../monotone-server.templates:2001
+msgid "Monotone key id:"
+msgstr "Id da chave do monotone:"
+
+#. Type: string
+#. Description
+#: ../monotone-server.templates:2001
+msgid ""
+"Enter the id of the key your monotone server will use. The key id is "
+"typically an email address."
+msgstr ""
+"Informe o id da chave que o seu servidor monotone usará. O id da chave é "
+"geralmente um endereço de e-mail."
+
+#. Type: password
+#. Description
+#: ../monotone-server.templates:3001
+msgid "Monotone key passphrase:"
+msgstr "Senha da chave do monotone:"
+
+#. Type: password
+#. Description
+#: ../monotone-server.templates:3001
+msgid ""
+"Please choose a passphrase for your monotone key. If left blank, one will be "
+"generated for you."
+msgstr ""
+"Por favor, escolha uma senha para a sua chave do monotone. Se deixada em "
+"branco, uma senha será gerada para você."
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Monotone-commits-diffs] org.debian.monotone: c3e434fed45b495e7c2f2ecb7ae1e92cfad40dba,
code <=