Bug#520091: boinc-client: Init script incorrectly detects "--daemon" option

Paul Saunders darac at darac.org.uk
Tue Mar 17 10:21:31 UTC 2009


Package: boinc-client
Version: 6.2.18-3
Severity: normal
Tags: patch

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

The init script for boinc-client finds the "--daemon" option in
/etc/default/boinc-client, even when it is not there. This appears to be
due, in part, to checking the uninitialise variable $FOO for this
option. In addition, the test of the result from grep seems unreliable. 

I have supplied a patch which seems to reliably detect and remove the
offending option. In addition, I've added the /g option to the sed
command to avoid the functionality being bypassed by doubling up the
option.

Thanks,


Paul


- -- Package-specific info:
- -- Contents of /etc/default/boinc-client:
# This file is /etc/default/boinc-client, it is a configuration file for the
# /etc/init.d/boinc-client init script.

# Set this to 1 to enable and to 0 to disable the init script.
ENABLED="1"

# Set this to 1 to enable advanced scheduling of the BOINC core client and
# all its sub-processes (reduces the impact of BOINC on the system's
# performance).
SCHEDULE="1"

# The BOINC core client will be started with the permissions of this user.
BOINC_USER="boinc"

# This is the data directory of the BOINC core client.
BOINC_DIR="/var/lib/boinc-client"

# This is the location of the BOINC core client, that the init script uses.
# If you do not want to use the client program provided by the boinc-client
# package, you can specify here an alternative client program.
#BOINC_CLIENT="/usr/local/bin/boinc"
BOINC_CLIENT="/usr/bin/boinc"

# Here you can specify additional options to pass to the BOINC core client.
# Type 'boinc --help' or 'man boinc' for a full summary of allowed options.
#BOINC_OPTS="--return_results_immediately --allow_remote_gui_rpc"
BOINC_OPTS="--allow_remote_gui_rpc"

- -- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (450, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.28.7 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages boinc-client depends on:
ii  adduser                3.110             add and remove users and groups
ii  ca-certificates        20081127          Common CA certificates
ii  debconf [debconf-2.0]  1.5.26            Debian configuration management sy
ii  libc6                  2.9-6             GNU C Library: Shared libraries
ii  libcurl3               7.18.2-8.1        Multi-protocol file transfer libra
ii  libssl0.9.8            0.9.8g-15         SSL shared libraries
ii  libstdc++6             4.3.3-5           The GNU Standard C++ Library v3
ii  lsb-base               3.2-20            Linux Standard Base 3.2 init scrip
ii  python                 2.5.4-2           An interactive high-level object-o
ii  zlib1g                 1:1.2.3.3.dfsg-13 compression library - runtime

boinc-client recommends no packages.

Versions of packages boinc-client suggests:
pn  boinc-app-seti                <none>     (no description available)
ii  boinc-manager                 6.2.18-3   GUI to control and monitor the BOI
ii  schedtool                     1.3.0-1    Queries/alters process' scheduling

- -- debconf information:
  boinc-client/remove_boinc_dir: false

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iQIcBAEBCgAGBQJJv3mhAAoJEKB7YbRsd8TGQRcP/3Zrr08BzcZbqXb//10isO2v
qG/HT8sn5lNfyKAvcf/5oJgQA50OuKu8naYIcxeGb+HQ52inQ8ODNeFbKzM7gQc7
NvgS03EoDILVkI26+9uJFInUd6Ft8nvvV9mbxuLZxhrggUmwtmJRwL+FZVCqyyLo
7Yxc6Hr1B8YtrwJyZgwaIsxQnGI5pSLIldQ+/GpkEJiW+cGEfaae5mx28L970pYS
qr2lqVwAXhUEzHjGwfeMZdLtk2zq94hmCrEwCkuvFxtZkgLyOFHyKAxj2J5lgIzl
QYC4+qyU6/WE0senKiPgXCnnUBuFnkbQCJzQ51EvggRLYaWPuNmdvQtRvM9/2kgY
vP9GGuFx6p9ChTtHiH0Wli+vrrS3Iep9onDxQemGEcCZYo2rhvEtfzCIKVXF8elN
q/q3RVk4ROWVuhBB19W8RBGORLuWjv54/P50RFjtI2TpJ7V+oem2HQ29HJAbwLfM
EhzyfnpZTvvbGwKJZ7OBHxirV7D10H0m3Z5CLq+/+IJiO3GFO3iEqmXY3pluYeu1
25pf6oluTjhDUDwD+KdpGLgK/0knnKXQ/y/q2oZsDU46UuE0qclSU8Ya6+/C3YCu
ft4xMeQC/HOD+deWIDoZd6+zRlOCYqMWmorSRSXBgFtOLN3kN/bcH7iMz8LJw7G5
bCPIkE9SosFBBnBGfiLC
=7ZOp
-----END PGP SIGNATURE-----
-------------- next part --------------
--- boinc-client.dpkg-dist	2009-03-17 09:18:06.000000000 +0000
+++ boinc-client	2009-03-17 10:07:53.000000000 +0000
@@ -55,13 +55,12 @@
 fi
 
 if [ ! -z "$BOINC_OPTS" ]; then
-	if [ ! `echo $FOO | grep  -- '--daemon' 1>/dev/null` ]; then
-		log_warning_msg "\`--deamon' option detected \
+	(echo $BOINC_OPTS | grep -- '--daemon' 1>/dev/null) &&
+		log_warning_msg "\`--daemon' option detected \
 			on /etc/default/boinc-client, this \
 			can cause problems on boinc. The option \
 			will be suppressed"
-			BOINC_OPTS=`echo "$BOINC_OPTS" | sed 's/--daemon//'`
-	fi
+	BOINC_OPTS=`echo "$BOINC_OPTS" | sed 's/--daemon//g'`
 fi
 
 PIDFILE=/var/run/boinc.pid


More information about the pkg-boinc-devel mailing list