diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 1996-09-11 19:15:37 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 1996-09-11 19:15:37 +0000 |
commit | f09f4c6aa02ea4012faa8491d629b9c8c3b77c71 (patch) | |
tree | e4f10a011c58422d098a486f61efcccea73c260a /usr.sbin/map-mbone | |
parent | 7021cb8f932f18e085425d77aee0302c44bb8da6 (diff) |
revoke privs at start; tested by fenner@parc.xerox.com
Diffstat (limited to 'usr.sbin/map-mbone')
-rw-r--r-- | usr.sbin/map-mbone/mapper.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/usr.sbin/map-mbone/mapper.c b/usr.sbin/map-mbone/mapper.c index 7a273d01aee..43134c69671 100644 --- a/usr.sbin/map-mbone/mapper.c +++ b/usr.sbin/map-mbone/mapper.c @@ -844,13 +844,16 @@ int main(argc, argv) { int flood = FALSE, graph = FALSE; - setlinebuf(stderr); - if (geteuid() != 0) { - fprintf(stderr, "must be root\n"); - exit(1); + fprintf(stderr, "map-mbone: must be root\n"); + exit(1); } + init_igmp(); + setuid(getuid()); + + setlinebuf(stderr); + argv++, argc--; while (argc > 0 && argv[0][0] == '-') { switch (argv[0][1]) { @@ -899,8 +902,6 @@ int main(argc, argv) if (debug) fprintf(stderr, "Debug level %u\n", debug); - init_igmp(); - { /* Find a good local address for us. */ int udp; struct sockaddr_in addr; |