diff options
Diffstat (limited to 'sh.c')
-rw-r--r-- | sh.c | 42 |
1 files changed, 21 insertions, 21 deletions
@@ -217,11 +217,11 @@ static int builtin_cd(struct job *cmd, struct jobSet *junk) | |||
217 | newdir = cmd->progs[0].argv[1]; | 217 | newdir = cmd->progs[0].argv[1]; |
218 | if (chdir(newdir)) { | 218 | if (chdir(newdir)) { |
219 | printf("cd: %s: %s\n", newdir, strerror(errno)); | 219 | printf("cd: %s: %s\n", newdir, strerror(errno)); |
220 | return FALSE; | 220 | return EXIT_FAILURE; |
221 | } | 221 | } |
222 | getcwd(cwd, sizeof(char)*MAX_LINE); | 222 | getcwd(cwd, sizeof(char)*MAX_LINE); |
223 | 223 | ||
224 | return TRUE; | 224 | return EXIT_SUCCESS; |
225 | } | 225 | } |
226 | 226 | ||
227 | /* built-in 'env' handler */ | 227 | /* built-in 'env' handler */ |
@@ -245,14 +245,14 @@ static int builtin_exec(struct job *cmd, struct jobSet *junk) | |||
245 | fatalError("Exec to %s failed: %s\n", cmd->progs[0].argv[0], | 245 | fatalError("Exec to %s failed: %s\n", cmd->progs[0].argv[0], |
246 | strerror(errno)); | 246 | strerror(errno)); |
247 | } | 247 | } |
248 | return TRUE; | 248 | return EXIT_SUCCESS; |
249 | } | 249 | } |
250 | 250 | ||
251 | /* built-in 'exit' handler */ | 251 | /* built-in 'exit' handler */ |
252 | static int builtin_exit(struct job *cmd, struct jobSet *junk) | 252 | static int builtin_exit(struct job *cmd, struct jobSet *junk) |
253 | { | 253 | { |
254 | if (!cmd->progs[0].argv[1] == 1) | 254 | if (!cmd->progs[0].argv[1] == 1) |
255 | exit TRUE; | 255 | exit(EXIT_SUCCESS); |
256 | 256 | ||
257 | exit (atoi(cmd->progs[0].argv[1])); | 257 | exit (atoi(cmd->progs[0].argv[1])); |
258 | } | 258 | } |
@@ -267,12 +267,12 @@ static int builtin_fg_bg(struct job *cmd, struct jobSet *jobList) | |||
267 | if (!cmd->progs[0].argv[1] || cmd->progs[0].argv[2]) { | 267 | if (!cmd->progs[0].argv[1] || cmd->progs[0].argv[2]) { |
268 | errorMsg("%s: exactly one argument is expected\n", | 268 | errorMsg("%s: exactly one argument is expected\n", |
269 | cmd->progs[0].argv[0]); | 269 | cmd->progs[0].argv[0]); |
270 | return FALSE; | 270 | return EXIT_FAILURE; |
271 | } | 271 | } |
272 | if (sscanf(cmd->progs[0].argv[1], "%%%d", &jobNum) != 1) { | 272 | if (sscanf(cmd->progs[0].argv[1], "%%%d", &jobNum) != 1) { |
273 | errorMsg("%s: bad argument '%s'\n", | 273 | errorMsg("%s: bad argument '%s'\n", |
274 | cmd->progs[0].argv[0], cmd->progs[0].argv[1]); | 274 | cmd->progs[0].argv[0], cmd->progs[0].argv[1]); |
275 | return FALSE; | 275 | return EXIT_FAILURE; |
276 | for (job = jobList->head; job; job = job->next) { | 276 | for (job = jobList->head; job; job = job->next) { |
277 | if (job->jobId == jobNum) { | 277 | if (job->jobId == jobNum) { |
278 | break; | 278 | break; |
@@ -286,7 +286,7 @@ static int builtin_fg_bg(struct job *cmd, struct jobSet *jobList) | |||
286 | if (!job) { | 286 | if (!job) { |
287 | errorMsg("%s: unknown job %d\n", | 287 | errorMsg("%s: unknown job %d\n", |
288 | cmd->progs[0].argv[0], jobNum); | 288 | cmd->progs[0].argv[0], jobNum); |
289 | return FALSE; | 289 | return EXIT_FAILURE; |
290 | } | 290 | } |
291 | 291 | ||
292 | if (*cmd->progs[0].argv[0] == 'f') { | 292 | if (*cmd->progs[0].argv[0] == 'f') { |
@@ -305,7 +305,7 @@ static int builtin_fg_bg(struct job *cmd, struct jobSet *jobList) | |||
305 | 305 | ||
306 | job->stoppedProgs = 0; | 306 | job->stoppedProgs = 0; |
307 | 307 | ||
308 | return TRUE; | 308 | return EXIT_SUCCESS; |
309 | } | 309 | } |
310 | 310 | ||
311 | /* built-in 'help' handler */ | 311 | /* built-in 'help' handler */ |
@@ -326,7 +326,7 @@ static int builtin_help(struct job *dummy, struct jobSet *junk) | |||
326 | fprintf(stdout, "%s\t%s\n", x->cmd, x->descr); | 326 | fprintf(stdout, "%s\t%s\n", x->cmd, x->descr); |
327 | } | 327 | } |
328 | fprintf(stdout, "\n\n"); | 328 | fprintf(stdout, "\n\n"); |
329 | return TRUE; | 329 | return EXIT_SUCCESS; |
330 | } | 330 | } |
331 | 331 | ||
332 | /* built-in 'jobs' handler */ | 332 | /* built-in 'jobs' handler */ |
@@ -343,7 +343,7 @@ static int builtin_jobs(struct job *dummy, struct jobSet *jobList) | |||
343 | 343 | ||
344 | printf(JOB_STATUS_FORMAT, job->jobId, statusString, job->text); | 344 | printf(JOB_STATUS_FORMAT, job->jobId, statusString, job->text); |
345 | } | 345 | } |
346 | return TRUE; | 346 | return EXIT_SUCCESS; |
347 | } | 347 | } |
348 | 348 | ||
349 | 349 | ||
@@ -352,7 +352,7 @@ static int builtin_pwd(struct job *dummy, struct jobSet *junk) | |||
352 | { | 352 | { |
353 | getcwd(cwd, sizeof(char)*MAX_LINE); | 353 | getcwd(cwd, sizeof(char)*MAX_LINE); |
354 | fprintf(stdout, "%s\n", cwd); | 354 | fprintf(stdout, "%s\n", cwd); |
355 | return TRUE; | 355 | return EXIT_SUCCESS; |
356 | } | 356 | } |
357 | 357 | ||
358 | /* built-in 'export VAR=value' handler */ | 358 | /* built-in 'export VAR=value' handler */ |
@@ -437,11 +437,11 @@ static int builtin_then(struct job *cmd, struct jobSet *junk) | |||
437 | 437 | ||
438 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 438 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
439 | errorMsg("unexpected token `then'\n"); | 439 | errorMsg("unexpected token `then'\n"); |
440 | return FALSE; | 440 | return EXIT_FAILURE; |
441 | } | 441 | } |
442 | /* If the if result was FALSE, skip the 'then' stuff */ | 442 | /* If the if result was FALSE, skip the 'then' stuff */ |
443 | if (cmd->jobContext & IF_FALSE_CONTEXT) { | 443 | if (cmd->jobContext & IF_FALSE_CONTEXT) { |
444 | return TRUE; | 444 | return EXIT_SUCCESS; |
445 | } | 445 | } |
446 | 446 | ||
447 | cmd->jobContext |= THEN_EXP_CONTEXT; | 447 | cmd->jobContext |= THEN_EXP_CONTEXT; |
@@ -464,11 +464,11 @@ static int builtin_else(struct job *cmd, struct jobSet *junk) | |||
464 | 464 | ||
465 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 465 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
466 | errorMsg("unexpected token `else'\n"); | 466 | errorMsg("unexpected token `else'\n"); |
467 | return FALSE; | 467 | return EXIT_FAILURE; |
468 | } | 468 | } |
469 | /* If the if result was TRUE, skip the 'else' stuff */ | 469 | /* If the if result was TRUE, skip the 'else' stuff */ |
470 | if (cmd->jobContext & IF_TRUE_CONTEXT) { | 470 | if (cmd->jobContext & IF_TRUE_CONTEXT) { |
471 | return TRUE; | 471 | return EXIT_SUCCESS; |
472 | } | 472 | } |
473 | 473 | ||
474 | cmd->jobContext |= ELSE_EXP_CONTEXT; | 474 | cmd->jobContext |= ELSE_EXP_CONTEXT; |
@@ -488,12 +488,12 @@ static int builtin_fi(struct job *cmd, struct jobSet *junk) | |||
488 | { | 488 | { |
489 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { | 489 | if (! (cmd->jobContext & (IF_TRUE_CONTEXT|IF_FALSE_CONTEXT))) { |
490 | errorMsg("unexpected token `fi'\n"); | 490 | errorMsg("unexpected token `fi'\n"); |
491 | return FALSE; | 491 | return EXIT_FAILURE; |
492 | } | 492 | } |
493 | /* Clear out the if and then context bits */ | 493 | /* Clear out the if and then context bits */ |
494 | cmd->jobContext &= ~(IF_TRUE_CONTEXT|IF_FALSE_CONTEXT|THEN_EXP_CONTEXT|ELSE_EXP_CONTEXT); | 494 | cmd->jobContext &= ~(IF_TRUE_CONTEXT|IF_FALSE_CONTEXT|THEN_EXP_CONTEXT|ELSE_EXP_CONTEXT); |
495 | debug_printf(stderr, "Hit an fi -- jobContext=%d\n", cmd->jobContext); | 495 | debug_printf(stderr, "Hit an fi -- jobContext=%d\n", cmd->jobContext); |
496 | return TRUE; | 496 | return EXIT_SUCCESS; |
497 | } | 497 | } |
498 | #endif | 498 | #endif |
499 | 499 | ||
@@ -504,13 +504,13 @@ static int builtin_source(struct job *cmd, struct jobSet *junk) | |||
504 | int status; | 504 | int status; |
505 | 505 | ||
506 | if (!cmd->progs[0].argv[1] == 1) | 506 | if (!cmd->progs[0].argv[1] == 1) |
507 | return FALSE; | 507 | return EXIT_FAILURE; |
508 | 508 | ||
509 | input = fopen(cmd->progs[0].argv[1], "r"); | 509 | input = fopen(cmd->progs[0].argv[1], "r"); |
510 | if (!input) { | 510 | if (!input) { |
511 | fprintf(stdout, "Couldn't open file '%s'\n", | 511 | fprintf(stdout, "Couldn't open file '%s'\n", |
512 | cmd->progs[0].argv[1]); | 512 | cmd->progs[0].argv[1]); |
513 | return FALSE; | 513 | return EXIT_FAILURE; |
514 | } | 514 | } |
515 | 515 | ||
516 | /* Now run the file */ | 516 | /* Now run the file */ |
@@ -524,10 +524,10 @@ static int builtin_unset(struct job *cmd, struct jobSet *junk) | |||
524 | { | 524 | { |
525 | if (!cmd->progs[0].argv[1] == 1) { | 525 | if (!cmd->progs[0].argv[1] == 1) { |
526 | fprintf(stdout, "unset: parameter required.\n"); | 526 | fprintf(stdout, "unset: parameter required.\n"); |
527 | return FALSE; | 527 | return EXIT_FAILURE; |
528 | } | 528 | } |
529 | unsetenv(cmd->progs[0].argv[1]); | 529 | unsetenv(cmd->progs[0].argv[1]); |
530 | return TRUE; | 530 | return EXIT_SUCCESS; |
531 | } | 531 | } |
532 | 532 | ||
533 | /* free up all memory from a job */ | 533 | /* free up all memory from a job */ |