Module: ngircd.git Branch: master Commit: 9cd3494de92eccaa201f42fc8b02fc68c752aca8 URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=9cd34...
Author: Alexander Barton alex@barton.de Date: Tue Jul 13 22:29:06 2010 +0200
Don't Proc_Kill() childs after Proc_Read(): done there already.
---
src/ngircd/irc-login.c | 3 --- src/ngircd/proc.c | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c index 8ac5471..93ee07e 100644 --- a/src/ngircd/irc-login.c +++ b/src/ngircd/irc-login.c @@ -847,9 +847,6 @@ cb_Read_Auth_Result(int r_fd, UNUSED short events) if (len == 0) return;
- /* Make sure authenticator sub-process is dead now ... */ - Proc_Kill(proc); - if (len != sizeof(result)) { Log(LOG_CRIT, "Auth: Got malformed result!"); Reject_Client(client); diff --git a/src/ngircd/proc.c b/src/ngircd/proc.c index 11cb039..1e8cac3 100644 --- a/src/ngircd/proc.c +++ b/src/ngircd/proc.c @@ -119,6 +119,8 @@ Proc_GenericSignalHandler(int Signal)
/** * Read bytes from a pipe of a forked child process. + * In addition, this function makes sure that the child process is dead + * after all data has been read or a fatal error occurred. */ GLOBAL size_t Proc_Read(PROC_STAT *proc, void *buffer, size_t buflen)