diff --git a/api/boinc_api.C b/api/boinc_api.C
index e249bcda7e..8b41cf042a 100644
--- a/api/boinc_api.C
+++ b/api/boinc_api.C
@@ -80,6 +80,7 @@ static double last_wu_cpu_time;
static bool standalone = false;
static double initial_wu_cpu_time;
static bool have_new_trickle_up = false;
+static bool have_trickle_down = false;
static double seconds_until_heartbeat_giveup;
static bool heartbeat_active; // if false, suppress heartbeat mechanism
@@ -321,6 +322,7 @@ static void handle_core_app_msgs() {
heartbeat_active = false;
}
if (match_tag(msg_buf, "")) {
+ have_trickle_down = true;
}
}
@@ -501,3 +503,18 @@ int boinc_fraction_done(double x) {
fraction_done = x;
return 0;
}
+
+bool boinc_receive_trickle_down(char* buf, int len) {
+ std::string filename;
+ if (have_trickle_down) {
+ DirScanner dirscan(".");
+ while (dirscan.scan(filename)) {
+ if (strstr(filename.c_str(), "trickle_down")) {
+ strncpy(buf, filename.c_str(), len);
+ return true;
+ }
+ }
+ }
+ return false;
+}
+
diff --git a/checkin_notes b/checkin_notes
index 978d539982..67f124f802 100755
--- a/checkin_notes
+++ b/checkin_notes
@@ -14444,13 +14444,17 @@ Daniel 2004-07-01
David 1 July 2004
- trickle message support:
- core client: send message to app when appropriate
+ - boinc_api: implement boinc_receive_trickle_down()
- blind attempt to fix HTTP auth crash:
check for empty URL on redirect
+ api/
+ boinc_api.C
client/
app.C,h
cs_trickle.C
hostinfo_unix.C
http.C
lib/
+ app_ipc.h
error_numbers.h
diff --git a/lib/app_ipc.h b/lib/app_ipc.h
index 9553178dec..23f0e1f69b 100755
--- a/lib/app_ipc.h
+++ b/lib/app_ipc.h
@@ -135,7 +135,7 @@ public:
//
struct APP_INIT_DATA {
char app_name[256];
- char project_preferences[4096];
+ char project_preferences[65536];
char user_name[256];
char team_name[256];
char project_dir[256];