summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--runtime/stpd/ChangeLog5
-rw-r--r--runtime/stpd/librelay.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/runtime/stpd/ChangeLog b/runtime/stpd/ChangeLog
index b0e405de..33f4fea1 100644
--- a/runtime/stpd/ChangeLog
+++ b/runtime/stpd/ChangeLog
@@ -1,3 +1,8 @@
+2006-07-20 Martin Hunt <hunt@redhat.com>
+
+ * librelay.c (stp_main_loop): If module doesn't start, kill any
+ target command.
+
2006-06-23 Tom Zanussi <zanussi@us.ibm.com>
* librelay.c (cleanup_and_exit): Close relay files even if
diff --git a/runtime/stpd/librelay.c b/runtime/stpd/librelay.c
index c3ad77ea..6636d1eb 100644
--- a/runtime/stpd/librelay.c
+++ b/runtime/stpd/librelay.c
@@ -799,9 +799,11 @@ int stp_main_loop(void)
{
struct transport_start *t = (struct transport_start *)data;
dbug("probe_start() returned %d\n", t->pid);
- if (t->pid < 0)
+ if (t->pid < 0) {
+ if (target_cmd)
+ kill (target_pid, SIGKILL);
cleanup_and_exit(0);
- else if (target_cmd)
+ } else if (target_cmd)
kill (target_pid, SIGUSR1);
break;
}