diff options
Diffstat (limited to 'util/TLSProxy/Proxy.pm')
-rw-r--r-- | util/TLSProxy/Proxy.pm | 15 |
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 { |