Changeset 3870 in MondoRescue for branches/3.3/mondo/src/common/libmondo-cli.c
- Timestamp:
- Mar 7, 2024, 6:05:50 PM (2 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3.3/mondo/src/common/libmondo-cli.c
r3866 r3870 16 16 #include "mondostructures.h" 17 17 #include "libmondo-cli-EXT.h" 18 #include "libmondo-newt-specific-EXT.h" 18 19 #include "libmondo.h" 19 20 … … 45 46 extern pid_t g_main_pid; 46 47 extern char *resolve_softlinks_to_get_to_actual_device_file(char *); 47 extern char *mr_popup_and_get_string(const char *, const char *, const char *);48 48 extern char *call_program_and_get_last_line_of_output(const char *); 49 49 … … 294 294 295 295 if ((flag_set['c'] || flag_set['w'] || flag_set['C'] || flag_set['r']) && (! bkpinfo->restore_data)) { 296 if (!flag_set['r'] && g_kernel_version <= 2.5 && strstr(flag_val['d'], "/dev/")) {297 fatal_error("Please don't give a /dev entry. Give a SCSI node for the parameter of the -d flag.");298 }299 if (flag_set['r'] && g_kernel_version <= 2.5 && !strstr(flag_val['d'], "/dev/")) {300 fatal_error("Please give a /dev entry, not a SCSI node, as the parameter of the -d flag.");301 }302 if (g_kernel_version >= 2.6 && !strstr(flag_val['d'], "/dev/")) {303 log_to_screen("Linus says 2.6 has a broken ide-scsi module. Proceed at your own risk...");304 }305 306 296 if (system("which cdrecord > /dev/null 2> /dev/null") && system("which dvdrecord > /dev/null 2> /dev/null")) { 307 297 fatal_error("Please install dvdrecord/cdrecord and try again."); … … 336 326 if ((flag_set['t'] && !flag_set['d']) && (! bkpinfo->restore_data)) { 337 327 log_it("Hmm! No tape drive specified. Let's see what we can do."); 338 if ( find_tape_device(flag_val['d'])) {339 fatal_error("Tape device not specified . I couldn't find it either.");328 if ((bkpinfo->media_device = find_tape_device()) == NULL) { 329 fatal_error("Tape device not specified and I couldn't find it either. Please use option -d"); 340 330 } 341 331 flag_set['d'] = TRUE; 342 log_to_screen("You didn't specify a tape streamer device. I'm assuming %s", flag_val['d']);332 log_to_screen("You didn't specify a tape streamer device. I'm assuming %s", bkpinfo->media_device); 343 333 } 344 334 … … 359 349 } 360 350 if (!flag_set['d']) { 361 if ( !find_dvd_device(flag_val['d'])) {351 if ((bkpinfo->media_device = find_dvd_device()) != NULL) { 362 352 flag_set['d'] = TRUE; 363 log_to_screen("I guess DVD drive is at %s", flag_val['d']);364 } 365 } 366 if (strchr( flag_val['d'], ',')) {353 log_to_screen("I guess DVD drive is at %s", bkpinfo->media_device); 354 } 355 } 356 if (strchr(bkpinfo->media_device, ',')) { 367 357 fatal_error("Please don't give a SCSI node. Give a _device_, preferably a /dev entry, for the parameter of the -d flag."); 368 358 } … … 686 676 if (flag_set['d']) { /* backup directory (if ISO/NETFS) */ 687 677 if (flag_set['i']) { 678 // what is flag_val['d'] is NULL/undefined 688 679 mr_asprintf(bkpinfo->isodir, "%s", flag_val['d']); 689 680 mr_asprintf(tmp1, "ls -l %s", bkpinfo->isodir); … … 695 686 } else if (flag_set['n']) { 696 687 mr_free(bkpinfo->netfs_remote_dir); 688 // what is flag_val['d'] is NULL/undefined 697 689 mr_asprintf(bkpinfo->netfs_remote_dir, "%s", flag_val['d']); 698 690 } else { /* backup device (if tape/CD-R/CD-RW) */ 699 mr_asprintf(bkpinfo->media_device, "%s", flag_val['d']);691 /* bkpinfo-> media_device already setup upper */ 700 692 } 701 693 } … … 720 712 721 713 if (!flag_set['d'] && (flag_set['c'] || flag_set['w'] || flag_set['C'])) { 722 if (g_kernel_version >= 2.6) {723 714 tmp1 = mr_popup_and_get_string("Device", "Please specify the device", bkpinfo->media_device); 724 715 if (tmp1 == NULL) { … … 729 720 bkpinfo->media_device = tmp1; 730 721 } 731 } else if (find_cdrw_device(bkpinfo->media_device)) {732 retval++;733 log_to_screen("Tried and failed to find CD-R[W] drive automatically.\n");734 722 } else { 735 flag_set['d'] = TRUE;736 strncpy(flag_val['d'], bkpinfo->media_device, MAX_STR_LEN / 4);737 }738 723 } 739 724
Note:
See TracChangeset
for help on using the changeset viewer.