[SCM] BOINC packaging branch, master, updated. debian/7.0.33+dfsg-1-30-gaa1b4eb
Steffen Moeller
steffen_moeller at gmx.de
Sun Sep 2 09:04:37 UTC 2012
The following commit has been merged in the master branch:
commit aa1b4eb5ac7373934be8d75bd0f92960a7973267
Author: Steffen Moeller <steffen_moeller at gmx.de>
Date: Sun Sep 2 11:03:51 2012 +0200
Addressing upstream ticket 1168.
diff --git a/debian/changelog b/debian/changelog
index 042df8f..41ab6cf 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+boinc (7.0.34+dfsg-6) UNRELEASED; urgency=low
+
+ * Fixing upstream bug
+ https://boinc.berkeley.edu/trac/ticket/1168
+ on dir_scan usage.
+
+ -- Steffen Moeller <moeller at debian.org> Sun, 02 Sep 2012 11:04:19 +0200
+
boinc (7.0.34+dfsg-5) UNRELEASED; urgency=low
* Added better error messages for opendir() failures
diff --git a/debian/patches/series b/debian/patches/series
index 7a49d50..453253e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -70,3 +70,4 @@ slot_dir_source_trace.patch
ignored_return_value.patch
cppcheck_avoid_redundant_check.patch
opendir_errno.patch
+ticket_1168_verifycerts.patch
diff --git a/debian/patches/ticket_1168_verifycerts.patch b/debian/patches/ticket_1168_verifycerts.patch
new file mode 100644
index 0000000..5454e77
--- /dev/null
+++ b/debian/patches/ticket_1168_verifycerts.patch
@@ -0,0 +1,52 @@
+Index: boinc/client/cs_files.cpp
+===================================================================
+--- boinc.orig/client/cs_files.cpp 2012-08-30 21:03:35.490956131 +0200
++++ boinc/client/cs_files.cpp 2012-09-02 10:40:36.478032727 +0200
+@@ -90,12 +90,12 @@
+ // Is app signed by one of the Application Certifiers?
+ //
+ bool FILE_INFO::verify_file_certs() {
+- char file[256];
++ char file[MAXPATHLEN];
+ bool retval = false;
+
+ if (!is_dir(CERTIFICATE_DIRECTORY)) return false;
+ DIRREF dir = dir_open(CERTIFICATE_DIRECTORY);
+- while (dir_scan(file, dir, sizeof(file))) {
++ while (!dir_scan(file, dir, sizeof(file))) {
+ if (cert_verify_file(cert_sigs, file, CERTIFICATE_DIRECTORY)) {
+ msg_printf(project, MSG_INFO,
+ "Signature verified using certificate %s", file
+@@ -156,7 +156,7 @@
+ int FILE_INFO::verify_file(
+ bool verify_contents, bool show_errors, bool allow_async
+ ) {
+- char cksum[64], pathname[256];
++ char cksum[64], pathname[MAXPATHLEN];
+ bool verified;
+ int retval;
+ double size, local_nbytes;
+@@ -177,7 +177,9 @@
+ //
+ if (download_gzipped && !boinc_file_exists(pathname)) {
+ char gzpath[MAXPATHLEN];
+- sprintf(gzpath, "%s.gz", pathname);
++ snprintf(gzpath, sizeof(gzpath), "%s.gz", pathname);
++ //FIXME: a distinction is missing for the case that the .gz suffix goes beyond the MAXPATHLEN and is hence not found because
++ // one should then not reperform the download as intended below
+ if (boinc_file_exists(gzpath) ) {
+ if (allow_async && nbytes > ASYNC_FILE_THRESHOLD) {
+ ASYNC_VERIFY* avp = new ASYNC_VERIFY;
+Index: boinc/lib/crypt.cpp
+===================================================================
+--- boinc.orig/lib/crypt.cpp 2012-09-02 10:27:39.420339596 +0200
++++ boinc/lib/crypt.cpp 2012-09-02 10:42:50.568254414 +0200
+@@ -604,7 +604,7 @@
+ DIRREF dir = dir_open(certPath);
+
+ char file[MAXPATHLEN];
+- while (dir_scan(file, dir, sizeof(file))) {
++ while (!dir_scan(file, dir, sizeof(file))) {
+ char fpath[MAXPATHLEN];
+ snprintf(fpath, sizeof(fpath), "%s/%s", certPath, file);
+ // TODO : replace '128'
--
BOINC packaging
More information about the pkg-boinc-commits
mailing list