Commit Graph

46 Commits

Author SHA1 Message Date
David Anderson 5cdc6f3efd - tweaks 2013-02-28 15:56:43 +01:00
David Anderson aa289f0916 - A bunch of tweaks from Steffen Moller, e.g. using MAXPATHLEN
svn path=/trunk/boinc/; revision=26133
2012-09-21 03:52:24 +00:00
David Anderson b412b9d172 - client: fix bug that broke file signing with X.509 certificates.
From matszpk.  Fixes .


svn path=/trunk/boinc/; revision=26071
2012-09-02 20:05:20 +00:00
David Anderson 53782b7de4 - lib: switch include order to the way it was (general to specific).
Should fix MinGW compile


svn path=/trunk/boinc/; revision=26008
2012-08-11 05:47:18 +00:00
David Anderson c4b337d276 - scheduler: compile fixes for FCGI
svn path=/trunk/boinc/; revision=25955
2012-08-02 16:17:10 +00:00
David Anderson 405f567c81 - code cleanup: in foo.cpp, include foo.h first
svn path=/trunk/boinc/; revision=25933
2012-08-01 20:04:05 +00:00
David Anderson 9a84980792 - lib: treat MINGW32 like CYGWIN32 (in 1 place - should do everywhere?)
from Oliver


svn path=/trunk/boinc/; revision=25874
2012-07-17 03:59:12 +00:00
David Anderson f9a9c3090f - Client (Win): in file_size(), use _stat64() instead of stat().
Otherwise it doesn't work for files >= 2GB
	- Client: TIME_STATS::trim_stats_log() wasn't working because
		it's called in the constructor of TIME_STATS,
		which is called before we've done a chdir() to the data dir.

	Note: for this reason, no disk access should be done in constructors
	of global objects.  A quick scan found no instances of this.

svn path=/trunk/boinc/; revision=25846
2012-07-03 22:36:59 +00:00
David Anderson f022b566de - Win compile fixes
svn path=/trunk/boinc/; revision=25665
2012-05-09 20:06:54 +00:00
David Anderson 32a08d27d9 - C++ code: use MAXPATHLEN for char arrays that hold paths
svn path=/trunk/boinc/; revision=25659
2012-05-09 16:11:50 +00:00
David Anderson 9caa637a4d - server: is_project_dir() was checking that cgi-bin is a directory.
This doesn't work if it's a symlink to a dir.
    Check for that too.


svn path=/trunk/boinc/; revision=25480
2012-03-23 17:45:04 +00:00
David Anderson 0224ea7bb2 - client: fix a memory leak; would lose ~120 bytes each time a job is started
svn path=/trunk/boinc/; revision=24333
2011-10-05 19:20:53 +00:00
David Anderson e279b59913 - Updates Linux notifications to use current libnotify.
- Fix build problems on Mac OS X using autotools
- Consistently use #if HAVE_X for platform checks,
    rather than #ifdef HAVE_X or #if defined(HAVE_X)
- In Unix build, make lots of compiler checks standard
- Fix some compile warnings

From Matt Arsenault.

Note: there are now lots of compile warnings in clientgui/ on Unix,
    mostly in WxWidgets code


svn path=/trunk/boinc/; revision=24303
2011-09-27 19:45:27 +00:00
David Anderson 7932dde4d7 - lib: fix compile warning
svn path=/trunk/boinc/; revision=23638
2011-06-06 05:36:28 +00:00
David Anderson 365137b3f1 - client: fix boinc_make_dirs() (from Josh Highley)
- client: allow "non_cpu_intensive" to be specified independently
    for different apps in a project.
    This is intended to support projects that use the
    Attic file distribution system,
    which needs to have a daemon running.


svn path=/trunk/boinc/; revision=23610
2011-05-25 21:16:45 +00:00
Charlie Fenton 23ecffe57d lib: Fix compile break on Windows
svn path=/trunk/boinc/; revision=23538
2011-05-13 12:42:06 +00:00
David Anderson 26ae326349 - client: fix problem with recursion in dir_size(), this time for real.
svn path=/trunk/boinc/; revision=23529
2011-05-12 05:26:37 +00:00
David Anderson e4f104f917 - Change the way update_versions works, and reimplement it in PHP.
Problems with the old version:
    - Lots of info encoded in file and directory names: messy kludge
    - The convention that directory name == main program name
        created a bad situation when using the wrapper:
        if you made a new version of your application,
        you were forced make a new version of the wrapper
        just so it could have a different name.
    The new version is described here:
    http://boinc.berkeley.edu/trac/wiki/AppVersionNew
- Remove some Python code that suppored the old version
- client: some fixes to dir_size() that might fox
    a buffer overflow when using symbolic links


svn path=/trunk/boinc/; revision=23525
2011-05-12 04:11:40 +00:00
David Anderson 22e0b9172b - client: fix disk-space accounting bug when user quotas in use
(Windows)


svn path=/trunk/boinc/; revision=23079
2011-02-21 07:37:49 +00:00
David Anderson f8e2d07cf9 - scheduler: add vbox32 and vbox64 plan classes for VirtualBox apps.
svn path=/trunk/boinc/; revision=22778
2010-11-30 19:36:07 +00:00
David Anderson 55eca25ed5 - Rappture stuff
svn path=/trunk/boinc/; revision=22777
2010-11-30 05:27:05 +00:00
Rom Walton 2aacdfaa60 Fix build break.
svn path=/trunk/boinc/; revision=22368
2010-09-16 04:35:54 +00:00
David Anderson 5cb66db61d - client (Win): use MoveFileEx() to rename file.
More atomic than delete/rename.
		fixes 

svn path=/trunk/boinc/; revision=22364
2010-09-15 23:25:23 +00:00
David Anderson 780b77036b svn path=/trunk/boinc/; revision=22227 2010-08-14 01:20:29 +00:00
Rom Walton a5dee555f9 - lib: prevent crash on startup if slot directories have been deleted.
lib/
        filesys.cpp

svn path=/trunk/boinc/; revision=22226
2010-08-13 18:43:24 +00:00
David Anderson a7376343cf - client: fix a bug that caused GPU apps to fail on startup
in the following situation.
    Suppose GPU job A is running,
    and GPU job B (which has never run before) preempts it.
    Then
    1) an ACTIVE_TASK and slot dir are allocated for B (slot dir is empty)
    2) A is told to quit; B isn't started until A exits
        (because they're GPU jobs)
    3) before A exits, B is suspended
    4) eventually B is started.
        Its scheduler state is SUSPENDED rather than UNINITIALIZED,
        so the scheduler thinks it slot dir has already been populated.
        But it hasn't, and when the app starts it fails immediately
        because no files are there.

    Fix: decide whether a slot dir needs to be populated by
    seeing whether it's empty,
    rather than looking at the scheduler state of the task.


svn path=/trunk/boinc/; revision=22206
2010-08-11 23:03:09 +00:00
David Anderson 50724b0ed9 - API: compile fixes for MinGW
svn path=/trunk/boinc/; revision=21522
2010-05-14 16:22:57 +00:00
Rom Walton 9cb3e6ffc7 - client & lib: bring header inclusion up-to-date for the CC to begin
hunting down a memory leak.
        
    client/
        <Various Files>
    lib/
        <Various Files>

svn path=/trunk/boinc/; revision=21457
2010-05-11 19:10:29 +00:00
Rom Walton e14e1cad34 - Remove BOINC_RCSID tags from source files, we are doing branching and tagging
properly.
        
    <Various Files>

svn path=/trunk/boinc/; revision=20873
2010-03-12 16:51:57 +00:00
David Anderson fd1d46d17f - client: Unix: if can't create client lock file,
report ERR_OPEN rather than ERR_ALREADY_RUNNING
    fixes 

svn path=/trunk/boinc/; revision=20051
2009-12-31 02:15:26 +00:00
Bernd Machenschalk 3f38b286d3 lib: some changes to help building the WIN32 library with MinGW/gcc
enable by defining MINGW_WIN32 macro, nothing should change if
this is not set

svn path=/trunk/boinc/; revision=19280
2009-10-07 19:17:52 +00:00
David Anderson 563a55f37e - client/libs/samples: remove "#define read _read" etc. from boinc_win.h
These cause problems when "read" is a member name, etc.
		Do these #defines, conditioned on _MSC_VER,
		in the files that actually need them.
	- don't include boinc_win.h from parse.h.
		principle of minimal inclusion

svn path=/trunk/boinc/; revision=18902
2009-08-22 17:00:19 +00:00
David Anderson 10f9e11ee6 - lib: created a new file for declaring "replacements"
for functions like strlcpy() etc.
    config.h is included here rather than in str_util.h


svn path=/trunk/boinc/; revision=18437
2009-06-16 20:54:44 +00:00
Charlie Fenton dfc0bb3184 lib: FILE_LOCK::lock() makes lockfile group-writable so both client and manager can create and write it under sandbox security
svn path=/trunk/boinc/; revision=18340
2009-06-09 18:46:47 +00:00
Charlie Fenton 39c7422457 lib: Fix compiler error on Windows
svn path=/trunk/boinc/; revision=18324
2009-06-08 07:20:17 +00:00
Charlie Fenton c814ae229a lib: Fix FILE_LOCK::unlock() to reset fd to -1 so FILE_LOCK works correctly with repeated calls.
svn path=/trunk/boinc/; revision=18320
2009-06-07 00:29:35 +00:00
David Anderson 44c02144e9 - lib: return proper error codes from boinc_rename() and boinc_mkdir()
- client: Haiku support (from Urias McCullough)
- client: include plan class in other_result list in sched request
    (for resource-specific jobs-in-progress limit)

svn path=/trunk/boinc/; revision=18250
2009-05-31 16:38:37 +00:00
Rom Walton 28c72cab79 - WIN: First pass through the code to fix compliation errors when
building in a Unicode enabled environment.
        
        NOTE: For files that are shared between the core client and
          the manager, it was simpliar to just call the ANSI versions
          of the specific Windows API functions then to monkey with
          all of the string handling code and convert between ANSI
          and UCS-2 strings.  CreateFile becomes CreateFileA instead
          of the default of CreateFileW.
          
        Down to 11 compile time errors from over 100.

    clientgui/
        BOINCBaseFrame.cpp
        BOINCTaskBar.cpp
        browser.cpp
        browser.h
        sg_StatImageLoader.cpp
    lib/
        boinc_win.h
        diagnostics_win.cpp
        filesys.cpp
        gui_rpc_client_ops.cpp
        proc_control.cpp
        stackwalker_imports.h
        stackwalker_win.cpp
        str_util.cpp
        util.cpp
        win_util.cpp, .h

svn path=/trunk/boinc/; revision=17859
2009-04-23 03:40:49 +00:00
David Anderson ae90eb4865 - API: more lockfile messages
svn path=/trunk/boinc/; revision=17647
2009-03-23 17:26:20 +00:00
David Anderson 6c4cc20aa1 - API: don't try to unlock lockfile if we failed to lock it
- API: more detailed message if failed to lock

svn path=/trunk/boinc/; revision=17645
2009-03-23 17:00:34 +00:00
Eric J. Korpela 8f3abcc835 - Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out
which of those files to include
    - Modified MAC address check to work on some non-Linux unixes.
      (mac_address.cpp)
    - Added suggested change to "already attached to project" checking.
      (ProjectInfoPage.cpp)
    - changed includes of standard c header files to their c++ equivalents
      (i.e. replaced <stdio.h> with <cstdio>) for namespace protection.
    - replaced "using namespace std;" with more explicit "using std::function" in
      several files.
    - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2
      to the build environment. (boinc_platform.m4,configure.ac)
    - Changed build environment to not use -nostandardlibs unless we are using
      G++ and static linkage is specified. (configure.ac)
    - Added makefiles and package building files for solaris CSW package manager.
    - Fixed bug with attempting to find login name using logname. (configure.ac)
    - Added ifdef HAVE_* protection around some include files commonly found in
      sys.
    - Added support for unified binary for x86_64/i686-pc-solaris.
      (cs_platforms.cpp)
    - generate_host_cpid() now uses MAC address on non-linux unix.
      (hostinfo_network.cpp)
    - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc
      compilers. (boinc_set_compile_flags.m4)
    - Library compiles no longer depend upon the library extension or require
      the library to be prefixed with lib.
    - More fixes for fcgi builds.
    - Added declaration of "struct ether_addr" and ether_ntoa().  Have not yet
      implemented ether_ntoa() for machines that don't have it, or where it is
      buggy.  (unix_util.h)
    - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp})
    - Fixed library Makefiles so that all required headers get installed.


svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
Charlie Fenton be2b680f1d client: fix boinc_copy (again); Mac Mgr: fix bugs showing Mgr when minimized to Dock; fix XCode project for moved src file.
svn path=/trunk/boinc/; revision=16929
2009-01-16 06:41:52 +00:00
David Anderson 85d65bd849 - client: GPU bug fix; compile warning fixes
svn path=/trunk/boinc/; revision=16901
2009-01-13 20:02:50 +00:00
Charlie Fenton b7699eb6bc client: preserve ownership when copying files to slot directory.
svn path=/trunk/boinc/; revision=16827
2009-01-07 04:11:30 +00:00
David Anderson 0ded726fe7 - client: fix a long-standing error: if prefs say leave X GB free,
and BOINC is using Y GB, and there are Z GB free,
        the limit on BOINC is Y + Z - X (not Z - X).

svn path=/trunk/boinc/; revision=16388
2008-11-02 20:09:59 +00:00
David Anderson 98cfb8d3b0 - rename .C files to .cpp so that Doxygen will work
svn path=/trunk/boinc/; revision=16069
2008-09-26 18:20:24 +00:00