Commit cbaed76d by Serge Hallyn

coverity: an int is not 1 byte

parent fef48dc9
...@@ -349,6 +349,7 @@ int main(int argc, char *argv[]) ...@@ -349,6 +349,7 @@ int main(int argc, char *argv[])
int ret; int ret;
int pid; int pid;
char *default_args[] = {"/bin/sh", NULL}; char *default_args[] = {"/bin/sh", NULL};
char buf[1];
int pipe1[2], // child tells parent it has unshared int pipe1[2], // child tells parent it has unshared
pipe2[2]; // parent tells child it is mapped and may proceed pipe2[2]; // parent tells child it is mapped and may proceed
...@@ -398,16 +399,16 @@ int main(int argc, char *argv[]) ...@@ -398,16 +399,16 @@ int main(int argc, char *argv[])
perror("unshare"); perror("unshare");
return 1; return 1;
} }
ret = 1; buf[0] = '1';
if (write(pipe1[1], &ret, 1) < 1) { if (write(pipe1[1], buf, 1) < 1) {
perror("write pipe"); perror("write pipe");
exit(1); exit(1);
} }
if (read(pipe2[0], &ret, 1) < 1) { if (read(pipe2[0], buf, 1) < 1) {
perror("read pipe"); perror("read pipe");
exit(1); exit(1);
} }
if (ret != 1) { if (buf[0] != '1') {
fprintf(stderr, "parent had an error, child exiting\n"); fprintf(stderr, "parent had an error, child exiting\n");
exit(1); exit(1);
} }
...@@ -419,17 +420,17 @@ int main(int argc, char *argv[]) ...@@ -419,17 +420,17 @@ int main(int argc, char *argv[])
close(pipe1[1]); close(pipe1[1]);
close(pipe2[0]); close(pipe2[0]);
if (read(pipe1[0], &ret, 1) < 1) { if (read(pipe1[0], buf, 1) < 1) {
perror("read pipe"); perror("read pipe");
exit(1); exit(1);
} }
ret = 1; buf[0] = 1;
if (map_child_uids(pid, active_map)) { if (map_child_uids(pid, active_map)) {
fprintf(stderr, "error mapping child\n"); fprintf(stderr, "error mapping child\n");
ret = 0; ret = 0;
} }
if (write(pipe2[1], &ret, 1) < 0) { if (write(pipe2[1], buf, 1) < 0) {
perror("write to pipe"); perror("write to pipe");
exit(1); exit(1);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment