summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--util/TLSProxy/Proxy.pm15
1 files changed, 15 insertions, 0 deletions
diff --git a/util/TLSProxy/Proxy.pm b/util/TLSProxy/Proxy.pm
index a826cb5257..5c363e76ed 100644
--- a/util/TLSProxy/Proxy.pm
+++ b/util/TLSProxy/Proxy.pm
@@ -49,6 +49,7 @@ sub new
clientflags => "",
serverconnects => 1,
serverpid => 0,
+ clientpid => 0,
reneg => 0,
sessionfile => undef,
@@ -113,6 +114,7 @@ sub clearClient
$self->{message_list} = [];
$self->{clientflags} = "";
$self->{sessionfile} = undef;
+ $self->{clientpid} = 0;
$is_tls13 = 0;
$ciphersuite = undef;
@@ -240,6 +242,7 @@ sub clientstart
}
exec($execcmd);
}
+ $self->clientpid($pid);
}
# Wait for incoming connection from client
@@ -338,6 +341,10 @@ sub clientstart
waitpid( $self->serverpid, 0);
die "exit code $? from server process\n" if $? != 0;
}
+ die "clientpid is zero\n" if $self->clientpid == 0;
+ print "Waiting for client process to close: ".$self->clientpid."\n";
+ waitpid($self->clientpid, 0);
+
return 1;
}
@@ -531,6 +538,14 @@ sub serverpid
}
return $self->{serverpid};
}
+sub clientpid
+{
+ my $self = shift;
+ if (@_) {
+ $self->{clientpid} = shift;
+ }
+ return $self->{clientpid};
+}
sub fill_known_data
{