// This file is part of BOINC. // http://boinc.berkeley.edu // Copyright (C) 2008 University of California // // BOINC is free software; you can redistribute it and/or modify it // under the terms of the GNU Lesser General Public License // as published by the Free Software Foundation, // either version 3 of the License, or (at your option) any later version. // // BOINC is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. // See the GNU Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with BOINC. If not, see . // request_file_list [-host_id host_id] // -host_id number of host to upload from // or 'all' if for all active hosts // // Create a msg_to_host_that requests the list of permanant files // associated with the project // // Run this in the project root dir #include "config.h" #include #include #include #include #include "boinc_db.h" #include "str_util.h" #include "error_numbers.h" #include "svn_version.h" #include "sched_config.h" #include "sched_util.h" int request_file_list(int host_id) { DB_MSG_TO_HOST mth; int retval; mth.clear(); mth.create_time = time(0); mth.hostid = host_id; strcpy(mth.variety, "request_file_list"); mth.handled = false; strcpy(mth.xml, ""); retval = mth.insert(); if (retval) { fprintf(stderr, "msg_to_host.insert(): %d\n", retval); return retval; } return 0; } int request_files_from_all() { DB_HOST host; while(1) { int retval = host.enumerate(); if (retval) { if (retval != ERR_DB_NOT_FOUND) { fprintf(stderr, "lost DB connection\n"); exit(1); } break; } request_file_list(host.get_id()); } return 0; } void usage(char *name) { fprintf(stderr, "Create a msg_to_host_that requests the list of permanant files\n" "associated with the project\n" "Run this in the project root dir\n\n" "Usage: %s [OPTION]...\n\n" "Options:\n" " -host_id number of host to upload from\n" " " "or 'all' or '0' if for all active hosts\n" " [ -v | -version | --version ] show version information\n" " [ -h | -help | --help ] show this help text\n", name ); } int main(int argc, char** argv) { int i, retval; int host_id; host_id = 0; check_stop_daemons(); for (i=1; i