+ a_part_find->dump_status = stralloc("PARTIAL");
+ else {
+ a_part_find->dump_status = stralloc("FAIL");
+ amfree(a_part_find->message);
+ a_part_find->message = stralloc(rest);
+ }
+ }
+ } else {
+ if (maxparts > -1) { /* format with part */
+ /* must check if all part are there */
+ int num_part = maxparts;
+ for (a_part_find = part_find;
+ a_part_find;
+ a_part_find = a_part_find->next) {
+ if (a_part_find->partnum == num_part &&
+ strcmp(a_part_find->status, "OK") == 0)
+ num_part--;
+ }
+ /* set dump_status of each part */
+ for (a_part_find = part_find;
+ a_part_find;
+ a_part_find = a_part_find->next) {
+ amfree(a_part_find->dump_status);
+ if (num_part == 0) {
+ a_part_find->dump_status =
+ stralloc("OK");
+ } else {
+ a_part_find->dump_status =
+ stralloc("FAIL");
+ amfree(a_part_find->message);
+ a_part_find->message =
+ stralloc("Missing part");
+ }
+ }
+ }
+ }
+ if (curlog == L_DONE) {
+ for (a_part_find = part_find;
+ a_part_find;
+ a_part_find = a_part_find->next) {
+ if (a_part_find->totalparts == -1) {
+ a_part_find->totalparts = maxparts;
+ }
+ if (a_part_find->orig_kb == 0) {
+ a_part_find->orig_kb = orig_kb;
+ }