--- projects/libstatgrab/src/saidar/saidar.c 2003/11/07 18:38:48 1.17 +++ projects/libstatgrab/src/saidar/saidar.c 2004/01/05 16:47:43 1.21 @@ -435,9 +435,7 @@ int main(int argc, char **argv){ extern int errno; int delay=2; -#ifdef ALLBSD - gid_t gid; -#endif + statgrab_init(); #ifdef ALLBSD if((setegid(getgid())) != 0){ @@ -445,6 +443,12 @@ int main(int argc, char **argv){ return 1; } #endif +#ifdef SOLARIS + if((seteuid(getuid())) != 0){ + fprintf(stderr, "Failed to lose setuid'ness\n"); + return 1; + } +#endif while ((c = getopt(argc, argv, "vhd:")) != -1){ switch (c){ @@ -454,7 +458,6 @@ int main(int argc, char **argv){ fprintf(stderr, "Time must be 1 second or greater\n"); exit(1); } - delay--; break; case 'v': version_num(argv[0]); @@ -464,7 +467,6 @@ int main(int argc, char **argv){ usage(argv[0]); return 1; break; - } } @@ -490,8 +492,7 @@ int main(int argc, char **argv){ int ch = getch(); if (ch == 'q'){ - endwin(); - return 0; + break; } /* To keep the numbers slightly accurate we do not want them