*** empty log message ***

svn path=/trunk/boinc/; revision=4038
This commit is contained in:
David Anderson 2004-08-11 09:42:29 +00:00
parent 9a1f870da7
commit ecbd2945d0
3 changed files with 23 additions and 6 deletions

View File

@ -16132,3 +16132,14 @@ Karl 2004-08-10
tools/
add.C (removed - obsolete)
David 11 Aug 2004
- FILE_INFO::write(): don't write signed_xml if it's not relevant
(i.e. if there's no xml_signature)
This caused an XML syntax error in client_state.xml
NOTE: this looks similar to Rom's bug fix yesterday.
Two fixes are better than one, hopefully.
client/
client_types.C,h

View File

@ -725,7 +725,7 @@ int FILE_INFO::write(MIOFILE& out, bool to_server) {
if (upload_when_present) out.printf(" <upload_when_present/>\n");
if (sticky) out.printf(" <sticky/>\n");
if (signature_required) out.printf(" <signature_required/>\n");
if (file_signature) out.printf(" <file_signature>\n%s</file_signature>\n", file_signature);
if (strlen(file_signature)) out.printf(" <file_signature>\n%s</file_signature>\n", file_signature);
if (time_last_used) out.printf(" <time_last_used>%d</time_last_used>\n", time_last_used);
if (priority) out.printf(" <priority>%d</priority>\n", priority);
if (exp_date) out.printf(" <exp_date>%ld</exp_date>\n", exp_date);
@ -738,11 +738,12 @@ int FILE_INFO::write(MIOFILE& out, bool to_server) {
if (retval) return retval;
}
if (!to_server) {
if (strlen(signed_xml)) {
out.printf(" <signed_xml>\n%s </signed_xml>\n", signed_xml);
}
if (strlen(xml_signature)) {
out.printf(" <xml_signature>\n%s </xml_signature>\n", xml_signature);
if (strlen(signed_xml) && strlen(xml_signature)) {
out.printf(
" <signed_xml>\n%s </signed_xml>\n"
" <xml_signature>\n%s </xml_signature>\n",
signed_xml, xml_signature
);
}
}
if (!error_msg.empty()) {

View File

@ -77,8 +77,13 @@ public:
int start_url;
int current_url;
char signed_xml[MAX_BLOB_LEN];
// if the file_info is signed (for uploadable files)
// this is the text that is signed
char xml_signature[MAX_BLOB_LEN];
// ... and this is the signature
char file_signature[MAX_BLOB_LEN];
// if the file itself is signed (for executable files)
// this is the signature
int priority;
time_t time_last_used; // time of last use of FILE_INFO, update during parsing, writing, or application usage
time_t exp_date;