X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Fplugins%2Fpassprompt.c;fp=pppd%2Fplugins%2Fpassprompt.c;h=743c087b47805ea002b026dd7cf36a6b2ef5afb4;hp=dae326867fcdea9b2f6190d6e01fd24fff056352;hb=eff574c871822c7e2788aa8a928f2480fa7a6cb3;hpb=b21711c71f2bf9537f5985339cf6e224738315ef diff --git a/pppd/plugins/passprompt.c b/pppd/plugins/passprompt.c index dae3268..743c087 100644 --- a/pppd/plugins/passprompt.c +++ b/pppd/plugins/passprompt.c @@ -35,7 +35,7 @@ static int promptpass(char *user, char *passwd) { int p[2]; pid_t kid; - int readgood, wstat; + int readgood, wstat, ret; ssize_t red; if (promptprog_refused || promptprog[0] == 0 || access(promptprog, X_OK) < 0) @@ -60,8 +60,14 @@ static int promptpass(char *user, char *passwd) sys_close(); closelog(); close(p[0]); - seteuid(getuid()); - setegid(getgid()); + ret = seteuid(getuid()); + if (ret != 0) { + warn("Couldn't set effective user id"); + } + ret = setegid(getgid()); + if (ret != 0) { + warn("Couldn't set effective user id"); + } argv[0] = promptprog; argv[1] = user; argv[2] = remote_name;