Commit Graph

3065 Commits

Author SHA1 Message Date
Rom Walton 0a737b6579 - CLI: CreateEnvironmentBlock always creates a Unicode Environment block.
- MGR: CreateProcessAsUser doesn't always error out when the ACLs haven't
        been changed for a specific Desktop and WindowStation so go ahead
        and Modify the ACLs with every call. It appears the ACLs revert
        themselves after CreateProcessAsUser is called anyway.
        
    client/
        app_start.C
    lib/
        util.C

svn path=/trunk/boinc/; revision=14819
2008-02-28 20:37:10 +00:00
David Anderson c8384113e4 - changes to many files to fix gcc4.3 compile
svn path=/trunk/boinc/; revision=14811
2008-02-27 23:26:38 +00:00
David Anderson 53274d8b24 - client: fix crashing bug in SCHEDULER_OP::backoff().
Was using cur_proj (which is potentially NULL) instead of p

svn path=/trunk/boinc/; revision=14782
2008-02-23 22:57:26 +00:00
Charlie Fenton fb46f06881 - Mac client: Fix bug which erroneously set powerpc_emulated_on_i386 true for X86_64 native applications.
svn path=/trunk/boinc/; revision=14766
2008-02-20 12:04:56 +00:00
Rom Walton d97dbe8209 Quick Updates
svn path=/trunk/boinc/; revision=14752
2008-02-16 17:05:42 +00:00
Rom Walton 75e334811a - client: prevent information disclosure by creating a new environment
block for applications launched using the 'boinc_project' account.
        
        Windows contains environment variables that describe username,
        domain name, profile directory and even logon server.
        
    - client: correctly parse domain name information from the
        client_auth.xml file when a different account is used for
        'boinc_master'.
    - SCR/MGR: Add two API's to adjust the ACLs on the current users
        desktop and windowstation so that graphics applications can
        properly create controls and dialogs for applications
        launched using 'boinc_project'.
        
    client/
        app_start.C
    lib/
        boinc_win.h
        util.C, .h
    lib/
        win_util.C, .h
    win_build/
        boinc_cli_curl.vcproj

svn path=/trunk/boinc/; revision=14748
2008-02-15 15:52:16 +00:00
David Anderson 51764d5abc compile fixes
svn path=/trunk/boinc/; revision=14726
2008-02-12 20:49:44 +00:00
David Anderson 35dab13859 - client code: my next-to-last checkin was flawed
svn path=/trunk/boinc/; revision=14725
2008-02-12 20:33:05 +00:00
David Anderson daf63d7d59 - client: if a non-CPU-intensive project already has a job
(even if suspended or downloading) don't ask for another one
    (from John McLeod)

svn path=/trunk/boinc/; revision=14723
2008-02-12 15:39:35 +00:00
David Anderson cf9b2b7c4a - compile fixes
svn path=/trunk/boinc/; revision=14722
2008-02-12 15:28:31 +00:00
David Anderson ee34cf3ab7 - client: removed sprawl
svn path=/trunk/boinc/; revision=14721
2008-02-12 15:04:27 +00:00
John McLeod VII 3173c1158a A fix for the client asking non-cpu intensive projects for work when the project already has work on the client.
svn path=/workspaces/jm7/boinc/; revision=14719
2008-02-12 05:07:59 +00:00
David Anderson a323eba986 - scheduler: fix bone-head mistake in HR code
svn path=/trunk/boinc/; revision=14715
2008-02-10 05:17:57 +00:00
Rom Walton e8f615cef8 - client: only construct the path to ca-bundle.crt once.
client/
        http_curl.C

svn path=/trunk/boinc/; revision=14712
2008-02-08 19:16:14 +00:00
Rom Walton b0d48cbe2b Quick Updates
svn path=/trunk/boinc/; revision=14704
2008-02-07 17:46:56 +00:00
Rom Walton 83e0feedfd - client: expand the <force_ntlm> functionality so that we can
force any authentication type. The new tag is called
        <force_auth> whihc can contain basic, digest, ntlm, and
        gss-negotiate.
        
    client/
        http_curl.C
        log_flags.C, .h

svn path=/trunk/boinc/; revision=14696
2008-02-07 16:05:56 +00:00
David Anderson d70d9f0183 - client: win compile fixes
svn path=/trunk/boinc/; revision=14685
2008-02-06 00:42:59 +00:00
David Anderson aab1e97f7d - GUI RPC: fix some XML errors (missing / in single-tag elements)
Fixes #524 (from Nicolas)

svn path=/trunk/boinc/; revision=14682
2008-02-06 00:17:13 +00:00
Rom Walton 0daa1932cf - client: remove the auth_type and auth_flag code.
- client: remove forbid reuse flag.
        
    client/
        http_curl.C, .h

svn path=/trunk/boinc/; revision=14670
2008-02-04 17:50:35 +00:00
Rom Walton 51462682db - client: remove the auth_type and auth_flag code.
client/
        http_curl.C, .h

svn path=/trunk/boinc/; revision=14669
2008-02-04 17:48:48 +00:00
David Anderson 7ea74282f4 - client: limit global prefs mod time to now
- server: limit global prefs mod time to now
    These changes address the situation where a server
    sends out prefs with mod time far in the future,
    and there's no way to undo them

svn path=/trunk/boinc/; revision=14664
2008-02-03 21:46:30 +00:00
Rom Walton bda057588a - WINSETUP: disable creation of client_auth.xml on Win2k.
Win2k requires any user account that is going to attempt
        to logon as another account to have admin privs.
    - WINSETUP: Give 'boinc_project' the right to be able to
        logon as a service, we denied the right to logon
        interactively.
    - WINSETUP: Disable the 'failed to shutdown BOINC service'
        dialog box.
    - CC: Use the client_auth.xml file if present to launch
        boinc applications as boinc_project if it exists.
    - LIB: Use the client_auth.xml file if present to launch
        boinc graphics applications as boinc_project if it
        exists.
        
    client/
        app_start.C
    lib/
        diagnostics_win.C
    lib/
        util.C, .h
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        CACreateBOINCGroups.cpp
        CACreateClientAuthFile.cpp
        CAGrantBOINCMasterRights.cpp
        CAGrantBOINCProjectRights.cpp
        CAShutdownBOINC.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll
    win_build/
        boinc_ss.vcproj
        boincmgr_curl.vcproj
        libboinc.vcproj

svn path=/trunk/boinc/; revision=14659
2008-02-01 22:08:48 +00:00
Charlie Fenton 167da5c015 API: Add executing_as_daemon bool to get_state rpc. SCR: When running V5 GFX applications as a service / daemon, display appropriate error message instead of trying to display graphics.
svn path=/trunk/boinc/; revision=14641
2008-01-30 02:47:06 +00:00
David Anderson c715d51bff - web: add "% of CPUs to use on multiprocessors" pref
- client: enforce the above pref; remove the max_cpus pref.

svn path=/trunk/boinc/; revision=14639
2008-01-29 21:01:04 +00:00
David Anderson 9c89b45af2 - client: add <force_ntlm> config flag.
Causes client to use NTLM auth and HTTP 1.0
- client: we weren't doing exponential backoff if scheduler
    requests failed at initialization; fix this

svn path=/trunk/boinc/; revision=14628
2008-01-28 16:52:52 +00:00
David Anderson daac96c05f - create_work: added -opaque option (to specify workunit.opaque)
svn path=/trunk/boinc/; revision=14605
2008-01-21 14:02:22 +00:00
Charlie Fenton 79d8c0420f Mac Sandbox: make files in slots and project directories world-readable so Client can read files written by project applications with user and group boinc_project; remove code which makes user boinc_master part of group boinc_project
svn path=/trunk/boinc/; revision=14590
2008-01-18 02:08:25 +00:00
David Anderson 1e5b72068e - make old-style graphics (though not supported) still compile
svn path=/trunk/boinc/; revision=14588
2008-01-17 18:09:30 +00:00
Charlie Fenton caed968f50 Mac Sandbox: make user boinc_master part of group boinc_project.
svn path=/trunk/boinc/; revision=14584
2008-01-17 10:11:30 +00:00
Rom Walton feb3441601 - MGR: If the project_init.xml file suggests a project to attach too
attempt to attach to it.
    - CLIENT: Move the code that deletes the project_init.xml from detach
        project to attach project.  It is only needed for as long as
        it takes to attach to a project.
        
    client/
        gui_rpc_server_ops.C
    clientgui/
        AdvancedFrame.cpp
        sg_BoincSimpleGUI.cpp

svn path=/trunk/boinc/; revision=14582
2008-01-16 22:10:34 +00:00
Charlie Fenton 3ad653d8ac Mac Sandbox: make BOINC Data directory and files not world-readable to hide account keys from unauthorized users
svn path=/trunk/boinc/; revision=14566
2008-01-16 10:38:21 +00:00
David Anderson cf4e42b4a3 - client: restore proper sense of --check_all_logins
(should this be set by default?)
- web: removed addslashes() when building language translation arrays.
    These caused 's to be displayed as \' everywhere.
    They may serve some purpose, but I can't think of what it is.
- web: changed max profile image dimensions from 800x600 to 640x480.
    The new profile page puts a column to the right
    of the image, so it shouldn't be quite that wide.

svn path=/trunk/boinc/; revision=14562
2008-01-15 22:22:08 +00:00
David Anderson 80c6f55d7d - client: a project (Ralph) had accidentally included a .svn directory in a zip archive,
resulting in a lot of read-only files in its slot directories.
        When the client attempts to delete these files,
        each delete fails and the client retries for about 5 seconds.
        This adds up to a delay of about 20 minutes,
        during which the client (and Manager) appear to be hung.

        Solution:
        1) if a file delete fails with error ERROR_ACCESS_DENIED,
            use SetFileAttributes() to clear the read-only flag, then try again.
        2) Don't use the 5-second retry mechanism when clearing out
            slot directories.  These can contain unbounded numbers of files,
            and this can lead to long periods where the client appears hung.

svn path=/trunk/boinc/; revision=14557
2008-01-15 19:12:43 +00:00
David Anderson ea8914e7d1 - scheduler: fix weak auth bug
svn path=/trunk/boinc/; revision=14552
2008-01-14 19:59:16 +00:00
David Anderson d0241d359c - renamed clean_out_dir() to client_clean_out_dir(),
and put the original clean_out_dir() back in lib/filesys.C

svn path=/trunk/boinc/; revision=14549
2008-01-14 18:32:20 +00:00
David Anderson deac50f8b1 - client: implement <start_apps_manually> for Windows too
- client: check /dev/input/mice/ for idle detection;
    apparently that's replaced /dev/mouse in Linux
    (from Toby Murray)
- API: make old-style graphics compile again

svn path=/trunk/boinc/; revision=14543
2008-01-13 04:16:58 +00:00
David Anderson 2be6f8e53a - Client: add <run_apps_manually> config flag.
This is for debugging apps (currently works only in Unix).
    What it does: when running an app,
    the client does everything except actually fork/exec the app,
    i.e. it sets up the slot dir, creates shared mem segment etc.
    It then continues as if the app were actually running,
    and you can then manually run your app under a debugger
    in the slot directory.
    Note: the client won't notice the termination of your app.
- API, Unix: in situations where the timer thread wants to exit
    (e.g. it notices a missing heartbeat).
    don't directly call boinc_exit(),
    since this touches data structures that the worker thread
    may be using concurrently.
    Instead, set a flag telling the worker thread to call boinc_exit()
    (which it will do from its signal handler)
    This is an attempt to fix problems reported by Bernd;
    I haven't tested it.
- scheduler: add config flag for uploading usage data
- web: show account key and weak account key on user page
- added some code for multithread support (not finished)

api/
    boinc_api.C


svn path=/trunk/boinc/; revision=14542
2008-01-13 00:12:14 +00:00
David Anderson c43ecb7c13 svn path=/trunk/boinc/; revision=14538 2008-01-11 23:52:49 +00:00
Rom Walton 5790f15ce1 Quick Updates
svn path=/trunk/boinc/; revision=14535
2008-01-11 18:09:50 +00:00
David Anderson 869691f3a3 - fix longstanding bug in CPU throttling
svn path=/trunk/boinc/; revision=14530
2008-01-11 04:34:34 +00:00
David Anderson fd80e135a0 - client: don't count header in bytes_xferred for file uploads
(this causes confusing output in the Manager,
    bytes xferred greater than file size)
- API and client: make boinc_sleep() work regardless of signals
- some code cleanup in http_curl.C

svn path=/trunk/boinc/; revision=14522
2008-01-10 23:27:42 +00:00
David Anderson 22a7caa863 - client: patches to make it work on FreeBSD
- client: fix bug where attaching to a project with existing
    app_info.xml would fail to parse the app_info.xml
(both from Pav Lucistnik)

svn path=/trunk/boinc/; revision=14517
2008-01-09 23:27:25 +00:00
David Anderson b3cc67a480 - client, Win: check for two process exit codes (0x40010004 and 0xc000013a)
that appear to happen when the process is killed externally;
    seems to happen mostly or entirely on Vista

svn path=/trunk/boinc/; revision=14496
2008-01-08 19:45:28 +00:00
Charlie Fenton dcffe3a9e7 Mac Client: more idle time tweaks to allow running as a daemon by using Mac OS X's launchd mechanism.
svn path=/trunk/boinc/; revision=14472
2008-01-06 08:29:47 +00:00
Charlie Fenton 3f4fbb8e65 Mac Client: more idle time tweaks to allow running as a daemon by using Mac OS X's launchd mechanism.
svn path=/trunk/boinc/; revision=14471
2008-01-06 08:19:25 +00:00
Charlie Fenton aa2629a8e0 Mac Client: revert to using older API NXIdleTime() to get user idle time
svn path=/trunk/boinc/; revision=14456
2008-01-02 11:15:20 +00:00
David Anderson 7e44643172 - Partly fix keyboard detection on Linux.
With this change, we detect opening a terminal
    or typing into a terminal;
    we don't detect typing into other applications.
    (from Frank Thomas).  Partly fixes #463

svn path=/trunk/boinc/; revision=14449
2007-12-30 22:45:21 +00:00
David Anderson 9b2998009f - client: add --start_delay cmdline option and <start_delay> config option.
Specifies an amount of time to delay starting apps
    (e.g. so that BOINC doesn't slow down boot process)

    Note: mechanisms that start BOINC at boot time
    need to figure out how to set this flag.

svn path=/trunk/boinc/; revision=14445
2007-12-27 21:40:20 +00:00
David Anderson 1069770a7f - compile fixes for gcc 4.3 (from Frank Thomas)
Fixes #514

svn path=/trunk/boinc/; revision=14436
2007-12-21 21:09:40 +00:00
David Anderson c4d1022ed8 - client: changes to make the client work on "Debian GNU/kFreeBSD",
a hybrid system that acts like Linux at the user
    level but has a FreeBSD kernel.
    Fixes #521

svn path=/trunk/boinc/; revision=14415
2007-12-19 19:29:54 +00:00