aboutsummaryrefslogtreecommitdiff
path: root/src/modem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/modem.c')
-rw-r--r--src/modem.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/modem.c b/src/modem.c
index be5c9d6..31e8ee2 100644
--- a/src/modem.c
+++ b/src/modem.c
@@ -122,6 +122,7 @@ int modem_run(int fd, int argc, char* argv[])
dup2 (in[0], STDIN_FILENO);
dup2 (out[1], STDOUT_FILENO);
+ dup2 (out[1], STDERR_FILENO);
char *arv = malloc(sizeof(char) * (argc + 1));
memset(arv, 0, sizeof(char) * (argc + 1));
@@ -172,9 +173,10 @@ int modem_run(int fd, int argc, char* argv[])
if(cnt) {
//search for modem error message
char *str = strstr(buff, "NO CARRIER");
- if(str) //Exit if message found
+ if(str){ //Exit if message found
+ kill(pid,SIGTERM);
break;
-
+ }
write(in[1], buff, cnt);
}
}