KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
In my simple custom shell I'm reading commands from the standard input and execute them with execvp(). Before this, I create a fork of the current process and I call the execvp() in that child process, right after that, I call exit(0). Something like this: pid = fork(); if(pid == -1) { perror("fork"); exit(1); } if(pid == 0) { // CHILD PROCESS CODE GOES HERE... execvp(pArgs[0], pArgs); exit(0); } else { // PARENT PROCESS CODE GOES HERE... } Now, the commands run with execvp() can return errors right? I want to handle that properly and right now, I'm always calling exit(0), which will mean the child process will always have an "OK" state. How can I return the proper status from the execvp() call and put it in the exit() call? Should I just get the int value that execvp() returns and pass it as an exit() argument instead of 0. Is that enough and correct?
Tags (comma-separated)
Save Edits
Cancel