aboutsummaryrefslogtreecommitdiff
path: root/gacopyz/gacopyz.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2007-04-24 15:44:01 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2007-04-24 15:44:01 +0000
commit23c190d057f68de84cb17bf8555397642fc6f6a9 (patch)
tree48272c668c3c1986fefd49ab657396b8a2976247 /gacopyz/gacopyz.c
parent2e708415a056624b4845467c9eebbbab7c1ef0f2 (diff)
downloadmailfromd-23c190d057f68de84cb17bf8555397642fc6f6a9.tar.gz
mailfromd-23c190d057f68de84cb17bf8555397642fc6f6a9.tar.bz2
* src/lex.l (parse_require): Bugfix
* src/bi_mail.m4: Bugfix * src/mtasim.c: Implement help, fix directory removal at exit, implement readline history file. Bugfixes in smtp() * tests/testsuite.at, tests/accept.at, tests/greylist.at, tests/arg.at, tests/reject.at, tests/numrcpt.at, tests/tempfail.at: Use mtasim -Xauto when necessary * configure.ac, NEWS: Raise patchlevel to 92 * doc/mailfromd.texi: Update * doc/mtasim.texi: mtasim documentation * doc/Makefile.am: Add mtasim.texi * gacopyz/gacopyz_priv.h (struct gacopyz_conn): Keep information about children pids * gacopyz/proc.c (gacopyz_register_child) (gacopyz_unregister_child): New functions (cleanup_children): Call gacopyz_unregister_child (gacopyz_cleanup_conn): Terminate children individualy instead of sending TERM to the whole process group, because we might be not the group leader. * gacopyz/gacopyz.c (gacopyz_handle_connection): Register child pid after startup. * bootstrap: Require save-cwd. Test if lib/daemon.c exists before attempting to create it. git-svn-id: file:///svnroot/mailfromd/trunk@1379 7a8a7f39-df28-0410-adc6-e0d955640f24
Diffstat (limited to 'gacopyz/gacopyz.c')
-rw-r--r--gacopyz/gacopyz.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gacopyz/gacopyz.c b/gacopyz/gacopyz.c
index f61673cc..a7a50177 100644
--- a/gacopyz/gacopyz.c
+++ b/gacopyz/gacopyz.c
@@ -68,7 +68,10 @@ gacopyz_init(gacopyz_conn_t *pconn, struct smfiDesc *desc)
void
gacopyz_free(gacopyz_conn_t conn)
{
- free(conn);
+ if (conn) {
+ free(conn->pidtab);
+ free(conn);
+ }
}
int
@@ -1361,6 +1364,7 @@ gacopyz_handle_connection(gacopyz_conn_t conn)
return MI_FAILURE;
}
if (pid > 0) {
+ gacopyz_register_child(conn, pid);
close(fd);
return MI_SUCCESS;
}

Return to:

Send suggestions and report system problems to the System administrator.