use TLSProxy::Record;
use TLSProxy::Message;
use TLSProxy::ClientHello;
+use TLSProxy::ServerHello;
+use TLSProxy::ServerKeyExchange;
sub new
{
execute => $execute,
cert => $cert,
debug => $debug,
+ cipherc => "AES128-SHA",
+ ciphers => "",
flight => 0,
record_list => [],
message_list => [],
{
my $self = shift;
+ $self->{cipherc} = "AES128-SHA";
+ $self->{ciphers} = "";
$self->{flight} = 0;
$self->{record_list} = [];
$self->{message_list} = [];
open(STDOUT, ">", File::Spec->devnull())
or die "Failed to redirect stdout";
open(STDERR, ">&STDOUT");
- exec($self->execute." s_server -testmode -accept ".($self->server_port)
- ." -cert ".$self->cert." -naccept 1");
+ my $execcmd = $self->execute." s_server -rev -engine ossltest -accept "
+ .($self->server_port)
+ ." -cert ".$self->cert." -naccept 1";
+ if ($self->ciphers ne "") {
+ $execcmd .= " -cipher ".$self->ciphers;
+ }
+ exec($execcmd);
}
my $oldstdout;
if(!$self->debug) {
- $oldstdout = select(File::Spec->devnull());
+ open DEVNULL, ">", File::Spec->devnull();
+ $oldstdout = select(DEVNULL);
}
# Create the Proxy socket
open(STDOUT, ">", File::Spec->devnull())
or die "Failed to redirect stdout";
open(STDERR, ">&STDOUT");
- exec($self->execute
- ." s_client -cipher AES128-SHA -testmode -connect "
- .($self->proxy_addr).":".($self->proxy_port));
+ my $execcmd = "echo test | ".$self->execute
+ ." s_client -engine ossltest -connect "
+ .($self->proxy_addr).":".($self->proxy_port);
+ if ($self->cipherc ne "") {
+ $execcmd .= " -cipher ".$self->cipherc;
+ }
+ exec($execcmd);
}
}
}
return $self->{filter};
}
-
+sub cipherc
+{
+ my $self = shift;
+ if (@_) {
+ $self->{cipherc} = shift;
+ }
+ return $self->{cipherc};
+}
+sub ciphers
+{
+ my $self = shift;
+ if (@_) {
+ $self->{ciphers} = shift;
+ }
+ return $self->{ciphers};
+}
1;