int main(int argc, char **argv){ bt_zero("~~~Userspace test program start!~~~\n"); print_string("TEST Command Prompt!\n"); while(true){ char input[128]={0}; print_string("[TEST]>"); get_string(input, 128); if(input[0]=='d') dir_listing(); else if(input[0]=='b') ata_test(); else if(input[0]=='l') dir_listing2(input); else if(input[0]=='f') file_contents(); else if(input[0]=='c') file_contents2(input); else if(input[0]=='m') mount_test(); else if(input[0]=='v') version(); else if(input[0]=='r') run_program(input); else if(input[0]=='p') path(input); else if(input[0]=='t') thread_test(); else if(input[0]=='x') crash_test(); else if(input[0]=='q') break; else { if(strlen(input) && input[0]!='\n') print_string("Unrecognised command.\n"); } } bt_zero("~~~Userspace test program done!~~~\n"); bt_exit(0); return 0; }
ldc_diag_t * diag(int log, ldc_info_t * info) { ldc_info_t * current_info; ldc_diag_t * head = NULL; ldc_diag_t * tail = NULL; for (current_info = info; current_info != NULL; current_info = current_info->next) { tail = new_ldc_diag_t("usbstorage"); head = enqueue_ldc_diag_t(head, tail); // find the logical_name in info tuple_t * current_tuple; for (current_tuple = current_info->info; current_tuple != NULL && strcmp(current_tuple->name, "device_file") != 0; current_tuple = current_tuple->next); if (current_tuple) { char name[100]; char value[1000]; int id; char description[100]; int* part_list = get_part_list(current_info); int part_result = check_part(part_list); SETUP_TUPLE("partition_check", "NULL", part_result, "Partition Check"); tail->info = enqueue_new_tuple_t(tail->info, name, value, id, description); int mount_result = mount_test(current_tuple->value, part_list); SETUP_TUPLE("mount_test", "NULL", mount_result, "Mount Test"); tail->info = enqueue_new_tuple_t(tail->info, name, value, id, description); int fsck_result = fsck_test(current_tuple->value, part_list); SETUP_TUPLE("fsck_test", "NULL", fsck_result, "Fsck Test"); tail->info = enqueue_new_tuple_t(tail->info, name, value, id, description); } } if (log){ insert_diag_log(head); } return head; }