Changeset 1663 in MondoRescue for branches/stable/mondo/src/common/libmondo-fork.c
- Timestamp:
- Sep 27, 2007, 12:21:18 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/stable/mondo/src/common/libmondo-fork.c
r1626 r1663 23 23 extern bool g_text_mode; 24 24 extern char *MONDO_LOGFILE; 25 26 /* Reference to global bkpinfo */ 27 extern struct s_bkpinfo *bkpinfo; 25 28 pid_t g_buffer_pid = 0; 26 29 extern struct mr_ar_conf *mr_conf; … … 91 94 */ 92 95 int 93 eval_call_to_make_ISO(struct s_bkpinfo *bkpinfo, 94 char *basic_call, char *isofile, 96 eval_call_to_make_ISO(char *basic_call, char *isofile, 95 97 int cd_no, char *logstub, char *what_i_am_doing) 96 98 { … … 211 213 } 212 214 mr_asprintf(&callstr, 213 "%s > /tmp/mondo-run-prog-thing.tmp 2> /tmp/mondo-run-prog-thing.err",214 program);215 "%s > %s/mondo-run-prog-thing.tmp 2> %s/mondo-run-prog-thing.err", 216 program, bkpinfo->tmpdir, bkpinfo->tmpdir); 215 217 while ((p = strchr(callstr, '\r'))) { 216 218 *p = ' '; … … 228 230 mr_free(callstr); 229 231 230 if (log_if_failure 231 && 232 system 233 ("cat /tmp/mondo-run-prog-thing.err >> /tmp/mondo-run-prog-thing.tmp 2> /dev/null")) 234 { 232 mr_asprintf(&callstr, "cat %s/mondo-run-prog-thing.err >> %s/mondo-run-prog-thing.tmp 2> /dev/null", bkpinfo->tmpdir, bkpinfo->tmpdir); 233 if (log_if_failure && system(callstr)) { 235 234 log_OS_error("Command failed"); 236 235 } 237 unlink("/tmp/mondo-run-prog-thing.err"); 238 fin = fopen("/tmp/mondo-run-prog-thing.tmp", "r"); 236 mr_asprintf(&tmp, "%s/mondo-run-prog-thing.err", bkpinfo->tmpdir); 237 unlink(tmp); 238 mr_free(tmp); 239 240 mr_asprintf(&tmp, "%s/mondo-run-prog-thing.tmp", bkpinfo->tmpdir); 241 fin = fopen(tmp, "r"); 239 242 if (fin) { 240 243 for (mr_getline(&incoming, &n, fin); !feof(fin); mr_getline(&incoming, &n, fin)) { … … 252 255 paranoid_fclose(fin); 253 256 } 254 unlink("/tmp/mondo-run-prog-thing.tmp"); 257 unlink(tmp); 258 mr_free(tmp); 259 255 260 if ((res == 0 && log_if_success) || (res != 0 && log_if_failure)) { 256 261 mr_msg(0, … … 293 298 assert_string_is_neither_NULL_nor_zerolength(basic_call); 294 299 295 mr_asprintf(&lockfile, "/tmp/mojo-jojo.blah.XXXXXX");296 mkstemp(lockfile); 300 sprintf(lockfile, "%s/mojo-jojo.bla.bla", bkpinfo->tmpdir); 301 297 302 mr_asprintf(&command, 298 303 "echo hi > %s ; %s >> %s 2>> %s; res=$?; sleep 1; rm -f %s; exit $res", … … 363 368 char *tmp1 = NULL; 364 369 char *buf = NULL; 370 char filestr[MAX_STR_LEN]; 365 371 long int bytes_to_be_read, bytes_read_in, bytes_written_out = 366 372 0, bufcap, subsliceno = 0; … … 469 475 mr_msg(5, "tmpB is %s", tmp); 470 476 if (!strstr(tmp, PIMP_END_SZ)) { 471 ftmp = fopen("/tmp/out.leftover", "w"); 477 sprintf(filestr, "%s/out.leftover", bkpinfo->tmpdir); 478 ftmp = fopen(filestr, "w"); 472 479 bytes_read_in = fread(tmp, 1, 64L, fin); 473 480 mr_msg(1, "bytes_read_in = %ld", bytes_read_in); … … 539 546 540 547 strcpy(title, tt); 541 strcpy(tempfile, 542 call_program_and_get_last_line_of_output 543 ("mktemp -q /tmp/mondo.XXXXXXXX")); 548 sprintf(tempfile, "%s/mondo.binperc", bkpinfo->tmpdir); 544 549 mr_asprintf(&command, "%s >> %s 2>> %s; rm -f %s", cmd, tempfile, tempfile, 545 550 tempfile);
Note:
See TracChangeset
for help on using the changeset viewer.