[boinc] 03/04: New upstream release
Gianfranco Costamagna
locutusofborg-guest at moszumanska.debian.org
Mon Feb 8 19:33:43 UTC 2016
This is an automated email from the git hooks/post-receive script.
locutusofborg-guest pushed a commit to branch master
in repository boinc.
commit d752979a105872d128e571fcd34cfaedd39e06e2
Author: Gianfranco Costamagna <costamagnagianfranco at yahoo.it>
Date: Mon Feb 8 20:01:44 2016 +0100
New upstream release
---
debian/changelog | 9 +
.../156b0be9f13b3427973f1d83a004947225b2d8b6.patch | 191 ----------------
.../69abe830e6069ec2139783392e8d3a73fb7e6baf.patch | 220 ------------------
.../85c8d0d85c73bbd3508d4e348226dcbcfec1402e.patch | 46 ----
.../882d0cdd43d39bec7328be79c9da73a04c597ec7.patch | 98 --------
.../fc4446f6027cc0d0e75e634f572b50b88588b57d.patch | 253 ---------------------
debian/patches/filesys_error_message.patch | 2 +-
debian/patches/more_maxpathlen.patch | 2 +-
debian/patches/series | 5 -
locale/az/BOINC-Setup.mo | Bin 3046 -> 0 bytes
10 files changed, 11 insertions(+), 815 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 82f4638..a54aac3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+boinc (7.6.23+dfsg-1) unstable; urgency=medium
+
+ * Upload to unstable
+ * New upstream release (Closes: #811947)
+ * Drop all patches from Preston: upstream.
+ * Patch refresh.
+
+ -- Gianfranco Costamagna <locutusofborg at debian.org> Mon, 08 Feb 2016 20:00:48 +0100
+
boinc (7.6.22+dfsg-3exp1) experimental; urgency=medium
* Upload to experimental again, with the boinc-server-* packages.
diff --git a/debian/patches/156b0be9f13b3427973f1d83a004947225b2d8b6.patch b/debian/patches/156b0be9f13b3427973f1d83a004947225b2d8b6.patch
deleted file mode 100644
index 56c2f09..0000000
--- a/debian/patches/156b0be9f13b3427973f1d83a004947225b2d8b6.patch
+++ /dev/null
@@ -1,191 +0,0 @@
-## Description: add some description
-## Origin/Author: add some origin or author
-## Bug: bug URL
-From 156b0be9f13b3427973f1d83a004947225b2d8b6 Mon Sep 17 00:00:00 2001
-From: Preston Maness <aggroskater at gmail.com>
-Date: Wed, 16 Dec 2015 10:45:57 -0600
-Subject: [PATCH] client (Linux): Reinstate XScreenSaver API-based idle
- detection on GNU/Linux.
-
----
- client/hostinfo_unix.cpp | 68 +++++++++++++++++++++++++++++++++++++++++++++++-
- configure.ac | 20 ++++++++++++++
- lib/prefs.cpp | 2 +-
- lib/prefs.h | 6 ++++-
- 4 files changed, 93 insertions(+), 3 deletions(-)
-
-diff --git a/client/hostinfo_unix.cpp b/client/hostinfo_unix.cpp
-index 617f824..c059895 100644
---- a/client/hostinfo_unix.cpp
-+++ b/client/hostinfo_unix.cpp
-@@ -41,6 +41,10 @@
- #include <cstring>
- #endif
-
-+#if HAVE_XSS
-+#include <X11/extensions/scrnsaver.h> //X-based idle detection
-+#endif
-+
- #include <cstdio>
- #include <cstdlib>
- #include <cstring>
-@@ -1947,6 +1951,62 @@ bool interrupts_idle(time_t t) {
- }
- return last_irq < t;
- }
-+
-+#if HAVE_XSS
-+// Ask the X server for user idle time (using XScreenSaver API)
-+// Return true if the idle time exceeds idle_threshold.
-+//
-+bool xss_idle(long idle_threshold) {
-+ static XScreenSaverInfo* xssInfo = NULL;
-+ static Display* disp = NULL;
-+ static bool error = false;
-+ // some X call failed - always return not idle
-+
-+ if (error) return false;
-+
-+ long idle_time = 0;
-+
-+ if (disp == NULL) {
-+ disp = XOpenDisplay(NULL);
-+ // XOpenDisplay may return NULL if there is no running X
-+ // or DISPLAY points to wrong/invalid display
-+ //
-+ if (disp == NULL) {
-+ error = true;
-+ //msg_printf(NULL, MSG_INFO, "XDisplay not found.");
-+ return false;
-+ }
-+ int event_base_return, error_base_return;
-+ xssInfo = XScreenSaverAllocInfo();
-+ if (!XScreenSaverQueryExtension(
-+ disp, &event_base_return, &error_base_return
-+ )){
-+ error = true;
-+ //msg_printf(NULL, MSG_INFO, "XScreenSaverQueryExtension() failed.");
-+ return false;
-+ }
-+ }
-+
-+ XScreenSaverQueryInfo(disp, DefaultRootWindow(disp), xssInfo);
-+ idle_time = xssInfo->idle;
-+
-+ // convert from milliseconds to seconds
-+ //
-+ idle_time = idle_time / 1000;
-+
-+ //msg_printf(NULL, MSG_INFO, "XSS idle detection succeeded.");
-+ //msg_printf(NULL, MSG_INFO, "idle threshold: %ld", idle_threshold);
-+ //msg_printf(NULL, MSG_INFO, "idle_time: %ld", idle_time);
-+
-+ if ( idle_threshold < idle_time ) {
-+ //msg_printf(NULL, MSG_INFO, "System is idle according to X.");
-+ } else {
-+ //msg_printf(NULL, MSG_INFO, "System is active according to X.");
-+ }
-+ return idle_threshold < idle_time;
-+}
-+#endif // HAVE_XSS
-+
- #endif // LINUX_LIKE_SYSTEM
-
- bool HOST_INFO::users_idle(bool check_all_logins, double idle_time_to_run) {
-@@ -1972,6 +2032,12 @@ bool HOST_INFO::users_idle(bool check_all_logins, double idle_time_to_run) {
- return false;
- }
-
-+#if HAVE_XSS
-+ if (!xss_idle((long)(idle_time_to_run * 60))) {
-+ return false;
-+ }
-+#endif // HAVE_XSS
-+
- // Lets at least check the dev entries which should be correct for
- // USB keyboards and mice. If the linux kernel doc is correct it should
- // also work for bluetooth input devices as well.
-@@ -1990,7 +2056,7 @@ bool HOST_INFO::users_idle(bool check_all_logins, double idle_time_to_run) {
- if (!device_idle(idle_time, "/dev/input/mice")) return false;
- if (!device_idle(idle_time, "/dev/kbd")) return false;
- // solaris
--#endif
-+#endif // LINUX_LIKE_SYSTEM
- return true;
- }
-
-diff --git a/configure.ac b/configure.ac
-index 792c6fb..919fd46 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -200,6 +200,7 @@ configured_to_build=
-
- if test x$enable_client = xyes ; then
- configured_to_build="client"
-+ enable_xss="yes"
- fi
- if test x$enable_manager = xyes ; then
- configured_to_build="${configured_to_build} manager"
-@@ -628,6 +629,15 @@ fi
-
- AM_CONDITIONAL(BUILD_GRAPHICS_API, [ test "$have_glut" = yes -a "$have_jpeg" = 1])
-
-+dnl check for X screen saver lib (X-based idle detection on Linux)
-+if test "$enable_xss" == yes; then
-+ AC_CHECK_LIB([Xss], [XScreenSaverAllocInfo], [have_Xss="yes"], [have_Xss="no"])
-+ AC_CHECK_HEADER([X11/extensions/scrnsaver.h], [have_Xss="yes"], [have_Xss="no"])
-+ if test "$have_Xss" == no; then
-+ AC_MSG_WARN([libxss missing, disabling X ScreenSaver user idle detection])
-+ fi
-+fi
-+
- dnl --------------------------------------------------------------------------------
- dnl put double-inclusion protection into config.h
- AH_TOP([
-@@ -1194,6 +1204,16 @@ if test "${ac_cv_func_res_init}" != "yes" ; then
- fi
- LIBS=$svlibs
-
-+if (test "$enable_xss" == yes) && (test "$have_Xss" == yes); then
-+ SAH_CHECK_LIB([Xss],[XScreenSaverAllocInfo],[
-+ AC_DEFINE([HAVE_XSS],[1],[Define to 1 if you have xss library])
-+ CLIENTLIBS="${sah_lib_last} ${CLIENTLIBS}"])
-+ SAH_CHECK_LIB([X11],[XOpenDisplay],[
-+ AC_DEFINE([HAVE_X11],[1],[Define to 1 if you have X11 library])
-+ CLIENTLIBS="${sah_lib_last} ${CLIENTLIBS}"])
-+ echo DEBUG: CLIENTLIBS=${CLIENTLIBS} >&5
-+fi
-+
- SAH_CHECK_LIB([resolv],[res_query],[
- AC_DEFINE([HAVE_RESOLV],[1],[Define to 1 if you have the resolv library])
- CLIENTLIBS="${sah_lib_last} ${CLIENTLIBS}"])
-diff --git a/lib/prefs.cpp b/lib/prefs.cpp
-index 3a8267e..9bd4160 100644
---- a/lib/prefs.cpp
-+++ b/lib/prefs.cpp
-@@ -149,7 +149,7 @@ bool TIME_SPAN::suspended(double hour) const {
-
- TIME_SPAN::TimeMode TIME_SPAN::mode() const {
- if (end_hour == start_hour || (start_hour == 0 && end_hour == 24)) {
-- return Always;
-+ return Always2;
- } else if (start_hour == 24 && end_hour == 0) {
- return Never;
- }
-diff --git a/lib/prefs.h b/lib/prefs.h
-index ebbe3cc..da81ea7 100644
---- a/lib/prefs.h
-+++ b/lib/prefs.h
-@@ -89,7 +89,11 @@ struct TIME_SPAN {
- double end_hour;
-
- enum TimeMode {
-- Always = 7000,
-+ // "Always" is defined by X.h, which itself is (indirectly) included
-+ // from client/hostinfo_unix.cpp when including the XSS API
-+ // (<X11/extensions/scrnsaver.h>). Hence, renaming here (and in
-+ // prefs.cpp).
-+ Always2 = 7000,
- Never,
- Between
- };
diff --git a/debian/patches/69abe830e6069ec2139783392e8d3a73fb7e6baf.patch b/debian/patches/69abe830e6069ec2139783392e8d3a73fb7e6baf.patch
deleted file mode 100644
index 1e854ec..0000000
--- a/debian/patches/69abe830e6069ec2139783392e8d3a73fb7e6baf.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-## Description: add some description
-## Origin/Author: add some origin or author
-## Bug: bug URL
-From 69abe830e6069ec2139783392e8d3a73fb7e6baf Mon Sep 17 00:00:00 2001
-From: Preston Maness <aggroskater at gmail.com>
-Date: Tue, 29 Dec 2015 20:59:23 -0600
-Subject: [PATCH] Revamped the idle detection after pouring over documentation.
- This new code should be able to handle all local Xservers as they come and
- go. Issue with permitting access to Xservers from boinc user resolved (see
- comments; package managers may include appropriate file in
- /etc/X11/Xsession.d/, otherwise boinc ignores inaccessible DISPLAYs). Pushing
- for CI checks. Not finished though. This commit has generic debug output that
- would clutter the event log. I want to add a debug flag and only dump this
- (noisy, once-per-second) output if the user explicitly asks for it via
- configuration file.
-
----
- client/hostinfo_unix.cpp | 164 +++++++++++++++++++++++++++++++++++++----------
- 1 file changed, 129 insertions(+), 35 deletions(-)
-
-diff --git a/client/hostinfo_unix.cpp b/client/hostinfo_unix.cpp
-index 5adc50e..1e20ad6 100644
---- a/client/hostinfo_unix.cpp
-+++ b/client/hostinfo_unix.cpp
-@@ -46,6 +46,8 @@
- // prevents naming collision between X.h define of Always and boinc's
- // lib/prefs.h definition in an enum.
- #undef Always
-+#include <dirent.h> //for opening /tmp/.X11-unix/
-+// (There is a DirScanner class in BOINC, but it doesn't do what we want)
- #endif
-
- #include <cstdio>
-@@ -1956,59 +1958,151 @@ bool interrupts_idle(time_t t) {
- }
-
- #if HAVE_XSS
--// Ask the X server for user idle time (using XScreenSaver API)
--// Return true if the idle time exceeds idle_threshold.
-+
-+// Initializer for const vector<string> in xss_idle
- //
-+const vector<string> X_display_values_initialize() {
-+
-+ /* According to "man Xserver", each local Xserver will have a socket file
-+ * at /tmp/.X11-unix/Xn, where "n" is the display number (0, 1, 2, etc).
-+ * We will parse this directory for currently open Xservers and attempt
-+ * to ultimately query them for their idle time. If we can't open this
-+ * directory, or the display_values vector is otherwise empty, then a
-+ * static list of guesses for open display servers is utilized instead
-+ * (DISPLAY values ":{0..6}") that will attempt connections to the first
-+ * seven open Xservers.
-+ *
-+ * If we were unable to open _any_ Xserver, then we will log this and
-+ * xss_idle returns true, effectively leaving idle detection up to other
-+ * methods.
-+ */
-+ static const string dir = "/tmp/.X11-unix/";
-+ vector<string> display_values;
-+ vector<string>::iterator it;
-+
-+ DIR *dp;
-+ struct dirent *dirp;
-+ if((dp = opendir(dir.c_str())) == NULL) {
-+ msg_printf(NULL, MSG_INFO, "Error (%d) opening %s.", errno, dir.c_str());
-+ }
-+
-+ while ((dirp = readdir(dp)) != NULL) {
-+ display_values.push_back(string(dirp->d_name));
-+ }
-+ closedir(dp);
-+
-+ // Get rid of non-matching elements and format the matching ones.
-+ for ( it = display_values.begin() ; it != display_values.end() ; ) {
-+ if ( it->c_str()[0] != 'X' ) {
-+ it = display_values.erase(it);
-+ }
-+ else {
-+ replace(it->begin(), it->end(), 'X', ':');
-+ it++;
-+ }
-+
-+ }
-+
-+ // if the display_values vector is empty, assume something went wrong
-+ // (couldn't open directory, no apparent Xn files). Test a static list of
-+ // DISPLAY values instead that is likely to catch most common use cases.
-+ // (I don't know of many environments where there will simultaneously be
-+ // more than seven active, local Xservers. I'm sure they exist... somewhere.
-+ // But seven was the magic number for me).
-+ if ( display_values.size() == 0 ) {
-+ display_values.push_back(":0");
-+ display_values.push_back(":1");
-+ display_values.push_back(":2");
-+ display_values.push_back(":3");
-+ display_values.push_back(":4");
-+ display_values.push_back(":5");
-+ display_values.push_back(":6");
-+ return display_values;
-+ }
-+ else {
-+ return display_values;
-+ }
-+}
-+
-+/* Ask the X server for user idle time (using XScreenSaver API)
-+ * Return true if the idle time exceeds idle_threshold for all accessible
-+ * Xservers. However, if even one Xserver reports busy/non-idle, then
-+ * return false. This function assumes that the boinc user has been
-+ * granted access to the Xservers a la "xhost +SI:localuser:boinc". If
-+ * access isn't available for an Xserver, then that Xserver is skipped.
-+ * One may drop a file in /etc/X11/Xsession.d/ that runs the xhost command
-+ * for all Xservers on a machine when the Xservers start up.
-+ */
- bool xss_idle(long idle_threshold) {
-- static XScreenSaverInfo* xssInfo = NULL;
-- static Display* disp = NULL;
-- // if an X-related error occurs, set this to true and always
-- // report that we are idle (have xss_idle return true). Will report the
-- // failure in Event Log for user visibility.
-- static bool error = false;
--
-- if (error) return true;
-
-+ const vector<string> display_values = X_display_values_initialize();
-+ vector<string>::const_iterator it;
-+
-+ static XScreenSaverInfo* xssInfo = XScreenSaverAllocInfo();
-+ // This shouldn't fail. XScreenSaverAllocInfo just returns a small
-+ // struct (see "man 3 xss"). If we can't allocate this, then we've
-+ // got bigger problems to worry about.
-+ if ( xssInfo == NULL ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "XScreenSaverAllocInfo failed. Out of memory? Skipping XScreenSaver idle detection.");
-+ return true;
-+ }
-+
-+ for (it = display_values.begin() ; it != display_values.end() ; it++) {
-+
-+ Display* disp = NULL;
- long idle_time = 0;
-
-+ disp = XOpenDisplay(it->c_str());
-+ // XOpenDisplay may return NULL if there is no running X
-+ // or DISPLAY points to wrong/invalid display
- if (disp == NULL) {
-- disp = XOpenDisplay(NULL);
-- // XOpenDisplay may return NULL if there is no running X
-- // or DISPLAY points to wrong/invalid display
-- //
-- if (disp == NULL) {
-- error = true;
-- msg_printf(NULL, MSG_INFO, "XDisplay not found. X-based idle detection disabled.");
-- return true;
-- }
-- int event_base_return, error_base_return;
-- xssInfo = XScreenSaverAllocInfo();
-- if (!XScreenSaverQueryExtension(
-- disp, &event_base_return, &error_base_return
-- )){
-- error = true;
-- msg_printf(NULL, MSG_INFO, "XScreenSaverQueryExtension() failed. X-based idle detection disabled.");
-- return true;
-- }
-+ msg_printf(NULL, MSG_INFO,
-+ "DISPLAY '%s' not found or insufficient access.",
-+ it->c_str());
-+ continue;
- }
-
-+ // Determine if the DISPLAY we have accessed has the XScreenSaver
-+ // extension or not.
-+ int event_base_return, error_base_return;
-+ if (!XScreenSaverQueryExtension(
-+ disp, &event_base_return, &error_base_return
-+ )){
-+ msg_printf(NULL, MSG_INFO,
-+ "XScreenSaver extension not available for DISPLAY '%s'.",
-+ it->c_str());
-+ continue;
-+ }
-+
-+ // All checks passed. Get the idle information.
- XScreenSaverQueryInfo(disp, DefaultRootWindow(disp), xssInfo);
- idle_time = xssInfo->idle;
-
- // convert from milliseconds to seconds
-- //
- idle_time = idle_time / 1000;
-
-- //msg_printf(NULL, MSG_INFO, "XSS idle detection succeeded.");
-- //msg_printf(NULL, MSG_INFO, "idle threshold: %ld", idle_threshold);
-- //msg_printf(NULL, MSG_INFO, "idle_time: %ld", idle_time);
-+ msg_printf(NULL, MSG_INFO, "XSS idle detection succeeded on DISPLAY '%s'.", it->c_str());
-+ msg_printf(NULL, MSG_INFO, "idle threshold: %ld", idle_threshold);
-+ msg_printf(NULL, MSG_INFO, "idle_time: %ld", idle_time);
-
- if ( idle_threshold < idle_time ) {
-- //msg_printf(NULL, MSG_INFO, "System is idle according to X.");
-+ msg_printf(NULL, MSG_INFO, "DISPLAY '%s' is idle.", it->c_str());
- } else {
-- //msg_printf(NULL, MSG_INFO, "System is active according to X.");
-+ msg_printf(NULL, MSG_INFO, "DISPLAY '%s' is active.", it->c_str());
-+ return false;
- }
-- return idle_threshold < idle_time;
-+
-+ }
-+
-+ /* We should only ever get here if all Xservers (that were queryable) were
-+ * idle. If none of the Xservers were queryable, we should still end up here,
-+ * and simply report true. In that case, the xss_idle function effectively
-+ * provides no information on the idle state of the system, as no Xservers
-+ * were accessible to interrogate.
-+ */
-+ return true;
-+
- }
- #endif // HAVE_XSS
-
diff --git a/debian/patches/85c8d0d85c73bbd3508d4e348226dcbcfec1402e.patch b/debian/patches/85c8d0d85c73bbd3508d4e348226dcbcfec1402e.patch
deleted file mode 100644
index de1d7e3..0000000
--- a/debian/patches/85c8d0d85c73bbd3508d4e348226dcbcfec1402e.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-## Description: add some description
-## Origin/Author: add some origin or author
-## Bug: bug URL
-From 85c8d0d85c73bbd3508d4e348226dcbcfec1402e Mon Sep 17 00:00:00 2001
-From: Preston Maness <aggroskater at gmail.com>
-Date: Tue, 26 Jan 2016 23:24:36 -0600
-Subject: [PATCH] XSS Idle Detection Bugfix (XCloseDisplay)
-
-Apologies. My initial code didn't close the connections to the X
-displays after opening them. I had thought that falling out of scope
-would close the connection automatically. However, thanks to a bug
-report by Dan Merillat that I was able to replicate, I now know better:
-
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=812835
-
-This simple adjustment closes the connection to the display (if a
-connection succeeded in the first place; if XOpenDisplay() failed, it
-returns NULL and there is no connection). Testing on my end shows that
-this resolves the issue of the boinc client piling up new connections to
-X servers.
----
- client/hostinfo_unix.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/client/hostinfo_unix.cpp b/client/hostinfo_unix.cpp
-index a1fc652..297831d 100644
---- a/client/hostinfo_unix.cpp
-+++ b/client/hostinfo_unix.cpp
-@@ -2090,6 +2090,7 @@ bool xss_idle(long idle_threshold) {
- "[idle_detection] XScreenSaver extension not available for DISPLAY '%s'.",
- it->c_str());
- }
-+ XCloseDisplay(disp);
- continue;
- }
-
-@@ -2098,6 +2099,9 @@ bool xss_idle(long idle_threshold) {
- XScreenSaverQueryInfo(disp, DefaultRootWindow(disp), xssInfo);
- idle_time = xssInfo->idle;
-
-+ // Close the connection to the XServer
-+ XCloseDisplay(disp);
-+
- // convert from milliseconds to seconds
- idle_time = idle_time / 1000;
-
diff --git a/debian/patches/882d0cdd43d39bec7328be79c9da73a04c597ec7.patch b/debian/patches/882d0cdd43d39bec7328be79c9da73a04c597ec7.patch
deleted file mode 100644
index 4f40cf1..0000000
--- a/debian/patches/882d0cdd43d39bec7328be79c9da73a04c597ec7.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-## Description: add some description
-## Origin/Author: add some origin or author
-## Bug: bug URL
-From 882d0cdd43d39bec7328be79c9da73a04c597ec7 Mon Sep 17 00:00:00 2001
-From: Preston Maness <aggroskater at gmail.com>
-Date: Fri, 18 Dec 2015 09:56:24 -0600
-Subject: [PATCH] Adjusting the failure behaviour of xss_idle to report idle
- rather than busy, and send a message to the Event Log that X-based idle
- detection is disabled. Also changed how to handle the 'Always' definition
- conflict with X.h.
-
----
- client/hostinfo_unix.cpp | 17 +++++++++++------
- lib/prefs.cpp | 2 +-
- lib/prefs.h | 6 +-----
- 3 files changed, 13 insertions(+), 12 deletions(-)
-
-diff --git a/client/hostinfo_unix.cpp b/client/hostinfo_unix.cpp
-index c059895..5adc50e 100644
---- a/client/hostinfo_unix.cpp
-+++ b/client/hostinfo_unix.cpp
-@@ -43,6 +43,9 @@
-
- #if HAVE_XSS
- #include <X11/extensions/scrnsaver.h> //X-based idle detection
-+// prevents naming collision between X.h define of Always and boinc's
-+// lib/prefs.h definition in an enum.
-+#undef Always
- #endif
-
- #include <cstdio>
-@@ -1959,10 +1962,12 @@ bool interrupts_idle(time_t t) {
- bool xss_idle(long idle_threshold) {
- static XScreenSaverInfo* xssInfo = NULL;
- static Display* disp = NULL;
-+ // if an X-related error occurs, set this to true and always
-+ // report that we are idle (have xss_idle return true). Will report the
-+ // failure in Event Log for user visibility.
- static bool error = false;
-- // some X call failed - always return not idle
-
-- if (error) return false;
-+ if (error) return true;
-
- long idle_time = 0;
-
-@@ -1973,8 +1978,8 @@ bool xss_idle(long idle_threshold) {
- //
- if (disp == NULL) {
- error = true;
-- //msg_printf(NULL, MSG_INFO, "XDisplay not found.");
-- return false;
-+ msg_printf(NULL, MSG_INFO, "XDisplay not found. X-based idle detection disabled.");
-+ return true;
- }
- int event_base_return, error_base_return;
- xssInfo = XScreenSaverAllocInfo();
-@@ -1982,8 +1987,8 @@ bool xss_idle(long idle_threshold) {
- disp, &event_base_return, &error_base_return
- )){
- error = true;
-- //msg_printf(NULL, MSG_INFO, "XScreenSaverQueryExtension() failed.");
-- return false;
-+ msg_printf(NULL, MSG_INFO, "XScreenSaverQueryExtension() failed. X-based idle detection disabled.");
-+ return true;
- }
- }
-
-diff --git a/lib/prefs.cpp b/lib/prefs.cpp
-index 9bd4160..3a8267e 100644
---- a/lib/prefs.cpp
-+++ b/lib/prefs.cpp
-@@ -149,7 +149,7 @@ bool TIME_SPAN::suspended(double hour) const {
-
- TIME_SPAN::TimeMode TIME_SPAN::mode() const {
- if (end_hour == start_hour || (start_hour == 0 && end_hour == 24)) {
-- return Always2;
-+ return Always;
- } else if (start_hour == 24 && end_hour == 0) {
- return Never;
- }
-diff --git a/lib/prefs.h b/lib/prefs.h
-index da81ea7..ebbe3cc 100644
---- a/lib/prefs.h
-+++ b/lib/prefs.h
-@@ -89,11 +89,7 @@ struct TIME_SPAN {
- double end_hour;
-
- enum TimeMode {
-- // "Always" is defined by X.h, which itself is (indirectly) included
-- // from client/hostinfo_unix.cpp when including the XSS API
-- // (<X11/extensions/scrnsaver.h>). Hence, renaming here (and in
-- // prefs.cpp).
-- Always2 = 7000,
-+ Always = 7000,
- Never,
- Between
- };
diff --git a/debian/patches/fc4446f6027cc0d0e75e634f572b50b88588b57d.patch b/debian/patches/fc4446f6027cc0d0e75e634f572b50b88588b57d.patch
deleted file mode 100644
index f0b621a..0000000
--- a/debian/patches/fc4446f6027cc0d0e75e634f572b50b88588b57d.patch
+++ /dev/null
@@ -1,253 +0,0 @@
-## Description: add some description
-## Origin/Author: add some origin or author
-## Bug: bug URL
-From fc4446f6027cc0d0e75e634f572b50b88588b57d Mon Sep 17 00:00:00 2001
-From: Preston Maness <aggroskater at gmail.com>
-Date: Wed, 30 Dec 2015 17:03:35 -0600
-Subject: [PATCH] Reinstate and Improve XScreenSaver Idle Detection
-
-The set of commits on this pull request:
-
-https://github.com/BOINC/boinc/pull/1453
-
-first reinstated previously existing code to utilize the XScreenSaver
-(XSS) X extension when determining a system's idle state (there was
-also additional DPMS code that was not reinstated).
-
-Original removal:
-
-https://github.com/BOINC/boinc/commit/bfae1032e5c1ac73f2d8d92f222293d8383a6cee
-
-The code would attempt to open a connection to the display at the client
-binary's DISPLAY environment variable and, if unable to connect, always
-report busy (undesirable).
-
-The original motivation for reinstating this code was that the remaining
-idle detection mechanisms did not detect mouse or keyboard movement if
-an Xserver was responsible for them. Only activities in terminals were
-detected. Through the course of extending and improving this code, the
-following changes have been made:
-
- * As per "man Xserver", each local Xserver should have a socket file
- at standard location /tmp/.X11-unix/ with standard naming scheme
-"Xn", where n is the number of the DISPLAY. This code will open this
-directory and parse its contents for open DISPLAYs, adding them to a
-vector for later interrogation of idle time by xss_idle. If no DISPLAYs
-were found, a static guess-list from DISPLAY :0 to DISPLAY :6 is set and
-interrogated.
- * xss_idle uses the XScreenSaver X extension's API, as documented at
- "man 3 xss". Certain checks are performed to determine if the X
-server is accessible, and if so, whether it has the XScreenSaver
-extension. If it does, then we obtain information on the DISPLAY's idle
-time and determine whether the Xserver is idle or not.
- * The user running the boinc client (typically the "boinc" user for
- most distributions), must have access to the Xserver for XSS idle
-detection to work. Dropping an appropriate file in /etc/X11/Xsession.d/
-(Debian flavours) or /etc/X11/xinit/xinitrc.d/ (Fedora and others)
-should permit Xservers to run something like "xhost +SI:localuser:boinc"
-on start. If the boinc client cannot access an Xserver/DISPLAY, it
-simply skips it and treats it as though it is idle. If no DISPLAY is
-accessible, then xss_idle is effectively passed through --xss_idle will
-report the system as idle-- and idle detection is left to other
-mechanisms.
- * A debug logging flag "idle_detection_debug" was added. If this
- flag is defined in the cc_config.xml file as "1", then verbose
-debugging information related to boinc's idle detection determinations is
-provided to the Event Log. This logging flag may also be utilized
-by other components of idle detection as/if needed/desired.
----
- client/hostinfo_unix.cpp | 64 ++++++++++++++++++++++++++++++++++++------------
- client/log_flags.cpp | 1 +
- lib/cc_config.cpp | 3 +++
- lib/cc_config.h | 2 ++
- 4 files changed, 55 insertions(+), 15 deletions(-)
-
-diff --git a/client/hostinfo_unix.cpp b/client/hostinfo_unix.cpp
-index 1e20ad6..a1fc652 100644
---- a/client/hostinfo_unix.cpp
-+++ b/client/hostinfo_unix.cpp
-@@ -47,7 +47,8 @@
- // lib/prefs.h definition in an enum.
- #undef Always
- #include <dirent.h> //for opening /tmp/.X11-unix/
--// (There is a DirScanner class in BOINC, but it doesn't do what we want)
-+ // (There is a DirScanner class in BOINC, but it doesn't do what we want)
-+#include "log_flags.h" // idle_detection_debug flag for verbose output
- #endif
-
- #include <cstdio>
-@@ -1983,7 +1984,10 @@ const vector<string> X_display_values_initialize() {
- DIR *dp;
- struct dirent *dirp;
- if((dp = opendir(dir.c_str())) == NULL) {
-- msg_printf(NULL, MSG_INFO, "Error (%d) opening %s.", errno, dir.c_str());
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] Error (%d) opening %s.", errno, dir.c_str());
-+ }
- }
-
- while ((dirp = readdir(dp)) != NULL) {
-@@ -2010,6 +2014,12 @@ const vector<string> X_display_values_initialize() {
- // more than seven active, local Xservers. I'm sure they exist... somewhere.
- // But seven was the magic number for me).
- if ( display_values.size() == 0 ) {
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] No DISPLAY values found in /tmp/.X11-unix/.");
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] Using static DISPLAY list, :{0..6}.");
-+ }
- display_values.push_back(":0");
- display_values.push_back(":1");
- display_values.push_back(":2");
-@@ -2037,14 +2047,18 @@ bool xss_idle(long idle_threshold) {
-
- const vector<string> display_values = X_display_values_initialize();
- vector<string>::const_iterator it;
-+ // If we can connect to at least one DISPLAY, this is set to false.
-+ bool no_available_x_display = true;
-
- static XScreenSaverInfo* xssInfo = XScreenSaverAllocInfo();
- // This shouldn't fail. XScreenSaverAllocInfo just returns a small
- // struct (see "man 3 xss"). If we can't allocate this, then we've
- // got bigger problems to worry about.
- if ( xssInfo == NULL ) {
-- msg_printf(NULL, MSG_INFO,
-- "XScreenSaverAllocInfo failed. Out of memory? Skipping XScreenSaver idle detection.");
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] XScreenSaverAllocInfo failed. Out of memory? Skipping XScreenSaver idle detection.");
-+ }
- return true;
- }
-
-@@ -2057,9 +2071,11 @@ bool xss_idle(long idle_threshold) {
- // XOpenDisplay may return NULL if there is no running X
- // or DISPLAY points to wrong/invalid display
- if (disp == NULL) {
-- msg_printf(NULL, MSG_INFO,
-- "DISPLAY '%s' not found or insufficient access.",
-- it->c_str());
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] DISPLAY '%s' not found or insufficient access.",
-+ it->c_str());
-+ }
- continue;
- }
-
-@@ -2069,27 +2085,41 @@ bool xss_idle(long idle_threshold) {
- if (!XScreenSaverQueryExtension(
- disp, &event_base_return, &error_base_return
- )){
-- msg_printf(NULL, MSG_INFO,
-- "XScreenSaver extension not available for DISPLAY '%s'.",
-- it->c_str());
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] XScreenSaver extension not available for DISPLAY '%s'.",
-+ it->c_str());
-+ }
- continue;
- }
-
- // All checks passed. Get the idle information.
-+ no_available_x_display = false;
- XScreenSaverQueryInfo(disp, DefaultRootWindow(disp), xssInfo);
- idle_time = xssInfo->idle;
-
- // convert from milliseconds to seconds
- idle_time = idle_time / 1000;
-
-- msg_printf(NULL, MSG_INFO, "XSS idle detection succeeded on DISPLAY '%s'.", it->c_str());
-- msg_printf(NULL, MSG_INFO, "idle threshold: %ld", idle_threshold);
-- msg_printf(NULL, MSG_INFO, "idle_time: %ld", idle_time);
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] XSS idle detection succeeded on DISPLAY '%s'.", it->c_str());
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] idle threshold: %ld", idle_threshold);
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] idle_time: %ld", idle_time);
-+ }
-
- if ( idle_threshold < idle_time ) {
-- msg_printf(NULL, MSG_INFO, "DISPLAY '%s' is idle.", it->c_str());
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] DISPLAY '%s' is idle.", it->c_str());
-+ }
- } else {
-- msg_printf(NULL, MSG_INFO, "DISPLAY '%s' is active.", it->c_str());
-+ if ( log_flags.idle_detection_debug ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] DISPLAY '%s' is active.", it->c_str());
-+ }
- return false;
- }
-
-@@ -2101,6 +2131,10 @@ bool xss_idle(long idle_threshold) {
- * provides no information on the idle state of the system, as no Xservers
- * were accessible to interrogate.
- */
-+ if ( log_flags.idle_detection_debug && no_available_x_display ) {
-+ msg_printf(NULL, MSG_INFO,
-+ "[idle_detection] Could not connect to any DISPLAYs. XSS idle determination impossible.");
-+ }
- return true;
-
- }
-diff --git a/client/log_flags.cpp b/client/log_flags.cpp
-index 16002cb..fe5b1c1 100644
---- a/client/log_flags.cpp
-+++ b/client/log_flags.cpp
-@@ -87,6 +87,7 @@ void LOG_FLAGS::show() {
- show_flag(buf, heartbeat_debug, "heartbeat_debug");
- show_flag(buf, http_debug, "http_debug");
- show_flag(buf, http_xfer_debug, "http_xfer_debug");
-+ show_flag(buf, idle_detection_debug, "idle_detection_debug");
- show_flag(buf, mem_usage_debug, "mem_usage_debug");
- show_flag(buf, network_status_debug, "network_status_debug");
- show_flag(buf, notice_debug, "notice_debug");
-diff --git a/lib/cc_config.cpp b/lib/cc_config.cpp
-index 23f78db..dad863f 100644
---- a/lib/cc_config.cpp
-+++ b/lib/cc_config.cpp
-@@ -80,6 +80,7 @@ int LOG_FLAGS::parse(XML_PARSER& xp) {
- if (xp.parse_bool("heartbeat_debug", heartbeat_debug)) continue;
- if (xp.parse_bool("http_debug", http_debug)) continue;
- if (xp.parse_bool("http_xfer_debug", http_xfer_debug)) continue;
-+ if (xp.parse_bool("idle_detection_debug", idle_detection_debug)) continue;
- if (xp.parse_bool("mem_usage_debug", mem_usage_debug)) continue;
- if (xp.parse_bool("network_status_debug", network_status_debug)) continue;
- if (xp.parse_bool("notice_debug", notice_debug)) continue;
-@@ -127,6 +128,7 @@ int LOG_FLAGS::write(MIOFILE& out) {
- " <heartbeat_debug>%d</heartbeat_debug>\n"
- " <http_debug>%d</http_debug>\n"
- " <http_xfer_debug>%d</http_xfer_debug>\n"
-+ " <idle_detection_debug>%d</idle_detection_debug>\n"
- " <mem_usage_debug>%d</mem_usage_debug>\n"
- " <network_status_debug>%d</network_status_debug>\n"
- " <notice_debug>%d</notice_debug>\n"
-@@ -167,6 +169,7 @@ int LOG_FLAGS::write(MIOFILE& out) {
- heartbeat_debug ? 1 : 0,
- http_debug ? 1 : 0,
- http_xfer_debug ? 1 : 0,
-+ idle_detection_debug ? 1 : 0,
- mem_usage_debug ? 1 : 0,
- network_status_debug ? 1 : 0,
- notice_debug ? 1 : 0,
-diff --git a/lib/cc_config.h b/lib/cc_config.h
-index 29a000f..f9a1f7f 100644
---- a/lib/cc_config.h
-+++ b/lib/cc_config.h
-@@ -83,6 +83,8 @@ struct LOG_FLAGS {
- bool heartbeat_debug;
- bool http_debug;
- bool http_xfer_debug;
-+ bool idle_detection_debug;
-+ // show details leading to idle/not-idle determinations.
- bool mem_usage_debug;
- // memory usage
- bool network_status_debug;
diff --git a/debian/patches/filesys_error_message.patch b/debian/patches/filesys_error_message.patch
index 280758d..1eda2de 100644
--- a/debian/patches/filesys_error_message.patch
+++ b/debian/patches/filesys_error_message.patch
@@ -15,7 +15,7 @@ Description: this patch adds an useful error message in case of dir open failure
#endif
return dirp;
}
-@@ -624,7 +629,7 @@ static int boinc_rename_aux(const char*
+@@ -634,7 +639,7 @@ static int boinc_rename_aux(const char*
//
int retval = rename(old, newf);
if (retval) {
diff --git a/debian/patches/more_maxpathlen.patch b/debian/patches/more_maxpathlen.patch
index db132b5..989c6ef 100644
--- a/debian/patches/more_maxpathlen.patch
+++ b/debian/patches/more_maxpathlen.patch
@@ -41,7 +41,7 @@ Description: use MAXPATHLEN and change sprintf to snprintf
return system(cmd);
#else
// POSIX requires that shells run from an application will use the
-@@ -709,7 +709,7 @@
+@@ -719,7 +719,7 @@
p = strchr(q, '/');
if (!p) break;
*p = 0;
diff --git a/debian/patches/series b/debian/patches/series
index 4d1e05a..dee3e12 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -29,8 +29,3 @@ file_upload_handler_in_sched_linking.patch
disable_silent_rules.patch
envargs.patch
fix-underlinking.patch
-156b0be9f13b3427973f1d83a004947225b2d8b6.patch
-882d0cdd43d39bec7328be79c9da73a04c597ec7.patch
-69abe830e6069ec2139783392e8d3a73fb7e6baf.patch
-fc4446f6027cc0d0e75e634f572b50b88588b57d.patch
-85c8d0d85c73bbd3508d4e348226dcbcfec1402e.patch
diff --git a/locale/az/BOINC-Setup.mo b/locale/az/BOINC-Setup.mo
deleted file mode 100644
index 191a4c3..0000000
Binary files a/locale/az/BOINC-Setup.mo and /dev/null differ
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-boinc/boinc.git
More information about the pkg-boinc-commits
mailing list