Hello community, here is the log from the commit of package boinc-client for openSUSE:Factory checked in at Thu May 19 13:46:07 CEST 2011.
-------- --- boinc-client/boinc-client.changes 2010-12-28 18:22:22.000000000 +0100 +++ /mounts/work_src_done/STABLE/boinc-client/boinc-client.changes 2011-05-17 16:59:23.000000000 +0200 @@ -1,0 +2,35 @@ +Mon May 16 18:49:58 CEST 2011 - [email protected] + +- Avoid buffer overflow in filesys.cpp(dir_size). + +------------------------------------------------------------------- +Sun May 1 23:27:45 UTC 2011 - [email protected] + +- update to 6.10.60 + * Fix: Project list issue in the attach wizard that lead to a crash +- fix deps + o wxGTK-devel +- enable parallel build + +------------------------------------------------------------------- +Fri Apr 29 06:11:10 UTC 2011 - [email protected] + +- filed shared-lib-calls-exit in boinc as + http://boinc.berkeley.edu/trac/ticket/1098 +- filed binary-or-shlib-calls-gethostbyname as + http://boinc.berkeley.edu/trac/ticket/1099 + +------------------------------------------------------------------- +Thu Apr 28 13:28:25 UTC 2011 - [email protected] + +- Rewritten the Spec based on Malcolm Lewis Improvements (THX) + +------------------------------------------------------------------- +Wed Apr 27 17:37:08 UTC 2011 - [email protected] + +- Removed boinc-bnc_465676.patch (Fixed Upstream) +- Removed boinc-bnc_465676.patch (Fixed Upstream) +- Removed boinc-client-NotebookWxPanel.patch (Fixed Upstream) +- Removed boinc-client-wxWindowListNode.patch (Fixed Upstream) + +------------------------------------------------------------------- @@ -4,0 +40,13 @@ + +------------------------------------------------------------------- +Tue Oct 5 04:24:40 UTC 2010 - [email protected] + +- Fix boinc-manager-lang requires + +------------------------------------------------------------------- +Tue Oct 5 03:41:39 UTC 2010 - [email protected] + +- Major spec file makeover +- Updated version +- Cleaned up patches +- Fixed most deprecated conversion from string constant to 'char*' calling whatdependson for head-i586 Old: ---- boinc-bnc_465676.patch boinc-ca_cert_deactivate.patch boinc-client-NotebookWxPanel.patch boinc-client-hostinfo.patch boinc-client-wxWindowListNode.patch boinc-fs_start_included.patch boinc-icon_old.patch boinc-rcscript.patch boinc-sysconfig.patch boinc_core_release_6_4_5.tar.bz2 boincmgr sysconfig.boinc New: ---- README.SUSE boinc-client-dynamic_buffers.patch boinc-completion.patch boinc-guirpcauth.patch boinc-init.patch boinc-server.patch boinc_core_release_6_10_60.tar.bz2 boincmanager generate-tarball.sh sysconfig.boinc-client ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ boinc-client.spec ++++++ ++++ 622 lines (skipped) ++++ between boinc-client/boinc-client.spec ++++ and /mounts/work_src_done/STABLE/boinc-client/boinc-client.spec ++++++ README.SUSE ++++++ ##################################################################################################################### Exported from http://boinc.berkeley.edu/wiki/Installing_BOINC on May 15, 2010, see current version online. ##################################################################################################################### Installing BOINC on openSUSE * 1 Basic installation * 2 What the installer does * 3 Verify the installation * 4 Set up your accounts * 5 Optional setup hints * 6 Uninstallation * 7 Known problems Basic installation Installs BOINC Client as a daemon (autostarts the BOINC client at boot time) and puts a BOINC Manager icon on the applications menu. The steps are: 1. Open a terminal, enter |su|, give the root password when prompted. 2. Enter |zypper install boinc-client boinc-manager| (be patient while the BOINC package downloads and installs). 3. Optional: after the installation is finished, enter |/sbin/chkconfig boinc-client on| to have Linux auto-start the boinc-client daemon at boot time. (See Stop or start BOINC daemon after boot page for helpful commands for managing the daemon) What the installer does 1. Creates the daemon script at /etc/init.d/boinc-client. 2. Places the BOINC binaries (boinc_client, boinc_cmd and boincmgr) in /usr/bin/. 3. Creates /var/lib/boinc/ for BOINC data files and the slots and projects directories. 4. Names the daemon boinc-client. 5. Creates a user named boinc. For security, boinc owns the BOINC data directory (/var/lib/boinc/) and all the data files and sub-directories it creates in the data directory. Verify the installation 1. If you elected to have Linux start the daemon at boot time (see step 3 in section Basic installation), logout and reboot Linux now and login under your normal user account. 2. If you elected to not have Linux start the daemon at boot time, start the daemon manually with |/sbin/service boinc-client start| 3. Open a terminal and enter |ps aux | grep boinc| to print a partial list of running processes. You should see |boinc_client --daemon| in that list, if not then something went wrong in the steps above. Set up your accounts To use the GUI to set up your accounts and monitor progress: * Start "boincmgr" on the command line or select Applications -> System Tools -> Boinc Manager from the GNOME menu. * Select Advanced -> Select computer... from the Boinc Manager menu. * Put "localhost" in for "Host name" and the contents of /var/lib/boinc/gui_rpc_auth.cfg for "Password" and hit "OK". If you do only the basic installation as described above, BOINC manager will not be able to automatically connect to the client. To connect the client you will be required to give the GUI RPC password every time you start BOINC manager. That is not a bug, it is a security feature to prevent other users from using the manager to manipulate the client, change your projects, etc. If you don't want to put the password every time you run the BOINC manager, you can: 1. disable the password at all [*not recommended*] To make the GUI passwordless, do "echo > /var/lib/boinc/gui_rpc_auth.cfg" (which replaces the contents of the file with a newline) and then restart boinc-client (with e.g. "/sbin/service boinc-client restart"). 2. *with boinc-client-6.4.7-1.r17542svn and newer* it is enough if you just add your user account into the "boinc" group, e.g. by typing |/usr/sbin/usermod -G boinc -a username| 3. *with older versions* the procedure is a bit more complicated: Boinc (the user named boinc) owns /var/lib/boinc/ and all the files and directories in it so you will not be able to edit those files easily from your regular user account. The steps below add your username to the boinc group and adjust some permissions so that BOINC manager will automatically connect to BOINC client whenever you start the manager from your regular Linux user account. Also you will be able to edit files in the BOINC directory without becoming root. As you type in each command below, substitute your Linux username wherever you see |username|. Enter the following commands in a terminal, as root: 1. |/usr/sbin/usermod -G boinc -a username| 2. |chmod g+rw /var/lib/boinc| 3. |chmod g+rw /var/lib/boinc/*.*| 4. |ln -s /var/lib/boinc/gui_rpc_auth.cfg /home/username/gui_rpc_auth.cfg| 5. |chown boinc:boinc /home/username/gui_rpc_auth.cfg| Uninstallation As root, in a terminal, enter yum remove boinc-client boinc-manager Known problems boinc-client sometimes has problems connecting to the network, if the network connection comes up after the client has already started. This is a known BOINC bug, which is filed as #707. In the meantime, you can fix this by restarting boinc-client. On the command line as root, do "/sbin/service boinc-client restart". Alternatively, from the GNOME menu, you can choose System -> Administration -> Services and then stop and start the boinc-client service. ++++++ boinc-LC_MESSAGES.patch ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,15 +1,14 @@ -diff -Naur boinc_core_release_6_4_5/locale/client/Makefile.am boinc_core_release_6_4_5p/locale/client/Makefile.am ---- boinc_core_release_6_4_5/locale/client/Makefile.am 2009-02-07 10:14:49.000000000 +0100 -+++ boinc_core_release_6_4_5p/locale/client/Makefile.am 2009-02-10 22:53:18.000000000 +0100 +--- locale/Makefile.am 2010-04-15 13:59:36.000000000 -0500 ++++ locale/Makefile.am.orig 2010-10-04 11:03:57.000000000 -0500 @@ -45,9 +45,9 @@ install-exec-hook: mydir=$(DESTDIR)$(datadir) ;\ for ldir in $(locale_dirs) ; do \ - $(INSTALL) -d $$mydir/$$ldir ; \ + $(INSTALL) -d $$mydir/$$ldir/LC_MESSAGES ; \ - if [ -f "$$ldir/BOINC Manager.mo" ] ; then \ -- $(INSTALL) "$$ldir/BOINC Manager.mo" "$$mydir/$$ldir/BOINC Manager.mo" ; \ -+ $(INSTALL) "$$ldir/BOINC Manager.mo" "$$mydir/$$ldir/LC_MESSAGES/BOINC-Manager.mo" ; \ + if [ -f $$ldir/BOINC-Manager.mo ] ; then \ +- $(INSTALL) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/BOINC-Manager.mo ; \ ++ $(INSTALL) $$ldir/BOINC-Manager.mo $$mydir/$$ldir/LC_MESSAGES/BOINC-Manager.mo ; \ fi ;\ done ++++++ boinc-client-dynamic_buffers.patch ++++++ Index: lib/filesys.cpp =================================================================== --- lib/filesys.cpp.orig 2011-05-16 18:13:03.000000000 +0200 +++ lib/filesys.cpp 2011-05-16 18:49:23.426248908 +0200 @@ -36,6 +36,7 @@ #include <sys/time.h> #include <unistd.h> #include <dirent.h> +#include <climits> #ifdef HAVE_SYS_RESOURCE_H #include <sys/resource.h> @@ -371,7 +372,8 @@ int dir_size(const char* dirpath, double } while (FindNextFileA(hFind, &findData)); ::FindClose(hFind); #else - char filename[256], subdir[256]; + char filename[PATH_MAX]; + char *subdir; int retval=0; DIRREF dirp; double x; @@ -382,7 +384,7 @@ int dir_size(const char* dirpath, double while (1) { retval = dir_scan(filename, dirp, sizeof(filename)); if (retval) break; - sprintf(subdir, "%s/%s", dirpath, filename); + asprintf(&subdir, "%s/%s", dirpath, filename); if (is_dir(subdir)) { if (recurse) { @@ -395,6 +397,9 @@ int dir_size(const char* dirpath, double if (retval) continue; size += x; } + + if(subdir != NULL) + free(subdir); } dir_close(dirp); #endif ++++++ boinc-client-rpmlintrc ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,6 +1,8 @@ # This line is mandatory to access the configuration functions from Config import * -addFilter("incoherent-init-script-name") -addFilter("invalid-lc-messages-dir") -addFilter("file-not-in-%lang") +addFilter("suse-branding-unversioned-requires hicolor-icon-theme") +addFilter("non-standard-uid") +addFilter("libdir-macro-in-noarch-package") +addFilter("no-manual-page-for-binary") +addFilter("macro-in-comment") ++++++ boinc-client-str_util.patch ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,6 +1,7 @@ -diff -uNrp boinc_core_release_6_4_5/lib/str_util.h boinc_core_release_6_4_5p/lib/str_util.h ---- boinc_core_release_6_4_5/lib/str_util.h 2009-02-07 10:15:12.000000000 +0100 -+++ boinc_core_release_6_4_5p/lib/str_util.h 2009-05-31 23:02:27.000000000 +0200 +Index: lib/str_util.h +=================================================================== +--- lib/str_util.h.orig ++++ lib/str_util.h @@ -17,6 +17,7 @@ #ifndef STR_UTIL_H ++++++ boinc-completion.patch ++++++ --- client/scripts/boinc.bash 2008-05-16 10:01:52.000000000 -0500 +++ client/scripts/boinc.bash.orig 2010-10-04 11:19:36.000000000 -0500 @@ -36,7 +36,7 @@ return 0 fi } -complete -F _boinc -o default boinc +complete -F _boinc -o default boinc-client _boinccmd() { ++++++ boinc-docbook2x.patch ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,7 +1,6 @@ -diff -Naur boinc_core_release_6_6_1/configure.ac boinc_core_release_6_6_1p/configure.ac ---- boinc_core_release_6_6_1/configure.ac 2009-01-18 23:52:57.000000000 +0100 -+++ boinc_core_release_6_6_1p/configure.ac 2009-01-23 13:02:07.000000000 +0100 -@@ -153,7 +153,7 @@ +--- configure.ac 2010-07-01 12:09:41.000000000 -0500 ++++ configure.ac.orig 2010-10-03 16:24:03.000000000 -0500 +@@ -284,7 +284,7 @@ dnl Check for docbook2x-man, which we use to create the manpages in dnl doc/manpages, and set the conditional HAVE_DOCBOOK2X_MAN to build dnl the manpages only if docbook2x-man is available. ++++++ boinc-gui.desktop ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,6 +1,6 @@ [Desktop Entry] Encoding=UTF-8 -Exec=boincmgr +Exec=boincmanager Icon=boinc-gui Terminal=false Type=Application ++++++ boinc-guirpcauth.patch ++++++ --- client/gui_rpc_server.cpp 2010-06-18 11:45:45.000000000 -0500 +++ client/gui_rpc_server.cpp.orig 2010-10-04 13:23:39.000000000 -0500 @@ -146,12 +146,7 @@ // they can cause code to execute as this user. // So better protect it. // - if (g_use_sandbox) { - // Allow group access so authorized administrator can modify it - chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP); - } else { - chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR); - } + chmod(GUI_RPC_PASSWD_FILE, S_IRUSR|S_IWUSR | S_IRGRP | S_IWGRP); #endif } } ++++++ boinc-init.patch ++++++ Index: client/scripts/boinc-client.in =================================================================== --- client/scripts/boinc-client.in.orig +++ client/scripts/boinc-client.in @@ -19,13 +19,13 @@ # For more information about BOINC (the Berkeley Open Infrastructure # for Network Computing) see http://boinc.berkeley.edu # processname: boinc -# config: /etc/sysconfig/boinc +# config: /etc/sysconfig/boinc-client # ### BEGIN INIT INFO # Provides: boinc -# Required-Start: $network -# Required-Stop: $network -# Default-Start: 3 4 5 +# Required-Start: $network $remote_fs +# Required-Stop: $network $remote_fs +# Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Short-Description: This script monitors the BOINC client. # Description: This script starts the local BOINC client as a daemon @@ -117,6 +117,10 @@ fi # BOINCUSER=boinc +# Name of group to run as: +# +BOINCGROUP=boinc + # Working directory. Could be /home/boinc, /var/lib/boinc, etc.. # The reason I prefer /var/lib/boinc is that this works best for a # cluster of computers where /home/anything might be shared between machines @@ -128,7 +132,7 @@ BOINCDIR=/var/lib/boinc # but I like to rename it and put it in a public place. # (Hint: move boincmgr to /usr/local/bin too so anyone can easily use it). # -BOINCEXE_NAME=boinc_client +BOINCEXE_NAME=boinc-client BOINCEXE=${bindir}/${BOINCEXE_NAME} BOINCCMD_NAME=boinccmd BOINCCMD=${bindir}/${BOINCCMD_NAME} @@ -178,8 +182,8 @@ export TERM=dumb # but if the functions are not found we create our own simple replacements. # (The idea for replacing the functions comes from OpenAFS. Thanks guys!) -if [ -f /etc/rc.d/init.d/functions ] ; then - . /etc/rc.d/init.d/functions +if [ -f /etc/init.d/functions ] ; then + . /etc/init.d/functions else if printf "Hello" >/dev/null 2>/dev/null ; then # printf works @@ -279,7 +283,7 @@ if [ ! -d $BOINCDIR ]; then echo -n "Creating $BOINCDIR " if mkdir -p $BOINCDIR 2>/dev/null ; then if [ -n "$BOINCUSER" ] ; then - if chown $BOINCUSER $BOINCDIR ; then + if chown $BOINCUSER:$BOINCGROUP $BOINCDIR ; then echo_success else echo_failure @@ -329,8 +333,10 @@ if [ "${USERNOW}" = "${BOINCUSER}" ] ; t exit 8 fi elif [ "${USERNOW}" = "root" ] ; then - cmd="if test -O ${BOINCDIR} ; then echo success ; fi" - if [ -z `su $BOINCUSER -c "$cmd"` ]; then + #cmd="if test -O ${BOINCDIR} ; then echo success ; fi" + #if [ -z `su $BOINCUSER -c "$cmd"` ]; then + if [ -z `sudo -u $BOINCUSER /bin/sh -c "if test -O ${BOINCDIR} ; + then echo success ; fi"` ]; then echo -n ERROR: $BOINCDIR is not owned by $BOINCUSER. echo_failure echo ++++++ boinc-logrotate ++++++ --- /var/tmp/diff_new_pack.FNvnng/_old 2011-05-19 13:45:52.000000000 +0200 +++ /var/tmp/diff_new_pack.FNvnng/_new 2011-05-19 13:45:52.000000000 +0200 @@ -1,4 +1,4 @@ -/var/log/boinc_client.log { +/var/log/boinc-client.log { daily compress dateext @@ -12,7 +12,7 @@ endscript } -/var/log/boinc_client_err.log { +/var/log/boinc-client_err.log { daily compress dateext ++++++ boinc-server.patch ++++++ --- sched/handle_request.cpp 2010-01-14 15:18:06.000000000 -0600 +++ sched/handle_request.cpp.orig 2010-10-04 11:24:03.000000000 -0500 @@ -143,7 +143,9 @@ // write PID into the CGI_<HOSTID> file and flush to disk // count = sprintf(pid_string, "%d\n", getpid()); - write(fd, pid_string, count); + if( write(fd, pid_string, count) < 0 ) { + perror("Cannot write PID to host-file") ; exit(errno) ; + }; fsync(fd); g_reply->lockfile_fd = fd; ++++++ boinc_core_release_6_4_5.tar.bz2 -> boinc_core_release_6_10_60.tar.bz2 ++++++ boinc-client/boinc_core_release_6_4_5.tar.bz2 /mounts/work_src_done/STABLE/boinc-client/boinc_core_release_6_10_60.tar.bz2 differ: char 11, line 1 ++++++ boincmanager ++++++ #!/bin/sh # # BOINC Manager on Unix #!/bin/sh # # BOINC - start the BOINC Manager # Source the configuration file for the boinc-client init script. # config_files="/etc/boinc-client.conf /etc/sysconfig/boinc-client" # provide a default BOINCDIR=/var/lib/boinc # Find the correct config file # for config_file in $config_files ; do if [ -f ${config_file} ] ; then . ${config_file}; break; fi done # Checking for gui_rpc_auth.cfg if ! test -f ~/gui_rpc_auth.cfg ; then ln -s /var/lib/boinc/gui_rpc_auth.cfg . fi # Change directory and start BOINC Manager # cd "$BOINCDIR" exec boinc-gui ++++++ generate-tarball.sh ++++++ #!/bin/sh VERSION=$1 svn co http://boinc.berkeley.edu/svn/tags/boinc_core_release_$VERSION boinc_core_release_$VERSION if [ -z $1 ]; then echo "No path specified: use \"trim [PATH_TO_SOURCE_TOP_DIR]\""; exit 1; fi # remove all binaries and other unnecessary things echo "Trimming directories..." DIRS="win_build html openssl client/os2 client/win clientgui/mac clientlib clienttray curl/include curl/mswin curl/patches lib/mac mac_build mac_installer zip/zip/macos zip/zip/win32 zip/unzip/macos zip/unzip/win32 zlib RSAEuro stripchart coprocs" for DIR in $DIRS; do /bin/rm -rf $1/$DIR; echo $1/$DIR; done echo "Trimming wxWidgets translations..." # remove wxWidgets translations find $1/locale -name wxstd.mo -delete echo "Done." tar -cvjf boinc_core_release-$VERSION.tar.bz2 boinc_core_release_$VERSION --exclude=.svn ++++++ sysconfig.boinc-client ++++++ # -*- mode:sh; mode:font-lock; -*- # Default variable values for the boinc-client /etc/init.d script # BOINCEXE_NAME=boinc-client BOINCCMD_NAME=boinccmd # The userid under which boinc-client is run BOINCUSER=boinc BOINCGROUP=boinc # The directory in which boinc-client is run BOINCDIR=/var/lib/boinc # log files LOGFILE=/var/log/${BOINCEXE_NAME}.log ERRORLOG=/var/log/${BOINCEXE_NAME}_err.log # pid file PIDFILE=/var/run/${BOINCEXE_NAME}.pid # placement of the lockfile depends upon the operating system # it will probably be one of the following: #LOCKFILE=/var/lock/${BOINCEXE_NAME} #LOCKFILE=/var/run/${BOINCEXE_NAME}.lock LOCKFILE=/var/lock/subsys/${BOINCEXE_NAME} # BOINC options: for the command line when running the client. # Be aware that --allow_remote_gui_rpc opens up your machine to the world! # # The default is no options. BOINCOPTS= # Add this option if you want to allow boinc manager connections from remote # machines #BOINCOPTS="--allow_remote_gui_rpc" # Add this option if you want to turn off all logging #BOINCOPTS="--daemon" # Add this option if you want to redirect logging to the files stderrdae.txt # and stdoutdae.txt in BOINCDIR rather than LOGFILE and ERRORLOG #BOINCOPTS="--redirectio" # Add this option if you want to run only when no logins from anywhere are # active #BOINCOPTS="--check_all_logins" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
