summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrediano Ziglio <freddy77@gmail.com>2016-09-25 22:04:34 +0100
committerFrediano Ziglio <fziglio@redhat.com>2016-09-26 14:48:50 +0100
commitb1341ffb757c309cba674073433f7c145c43ebc7 (patch)
tree645c86c659b60e26dfd725a5dadfc4342ecf9c50
parent398d672b183d7fe5c0cb66a586e921b1378be645 (diff)
Check setuid return value
Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
-rw-r--r--latency.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/latency.c b/latency.c
index 8a9162a..746f0da 100644
--- a/latency.c
+++ b/latency.c
@@ -109,13 +109,20 @@ main(int argc, char **argv)
setenv("HOME", "/root", 1);
setenv("PATH", "/sbin:/bin:/usr/sbin:/usr/bin", 1);
setenv("SHELL", "/bin/sh", 1);
- setuid(0);
+ if (setuid(0)) {
+ perror("setuid");
+ exit(EXIT_FAILURE);
+ }
}
tun_setup();
- if (ruid != euid)
- setuid(ruid);
+ if (ruid != euid) {
+ if (setuid(ruid)) {
+ perror("setuid");
+ exit(EXIT_FAILURE);
+ }
+ }
enum { MODE_local, MODE_server, MODE_client } mode = MODE_local;
enum { ARG_port = 256, ARG_client, ARG_server };