]>
git.ipfire.org Git - thirdparty/openssl.git/blob - util/perl/TLSProxy/HelloVerifyRequest.pm
1 # Copyright 2016-2024 The OpenSSL Project Authors. All Rights Reserved.
3 # Licensed under the Apache License 2.0 (the "License"). You may not use
4 # this file except in compliance with the License. You can obtain a copy
5 # in the file LICENSE in the source distribution or at
6 # https://www.openssl.org/source/license.html
10 package TLSProxy
::HelloVerifyRequest
;
15 push @ISA, 'TLSProxy::Message';
29 $message_frag_lens) = @_;
31 my $self = $class->SUPER::new
(
34 TLSProxy
::Message
::MT_HELLO_VERIFY_REQUEST
,
43 $self->{server_version
} = 0;
44 $self->{cookie_len
} = 0;
54 my ($server_version) = unpack('n', $self->data);
56 my $cookie_len = unpack('C', substr($self->data, $ptr));
58 my $cookie = substr($self->data, $ptr, $cookie_len);
60 $self->server_version($server_version);
61 $self->cookie_len($cookie_len);
62 $self->cookie($cookie);
64 $self->process_data();
66 print " Server Version:".$TLSProxy::Record
::tls_version
{$server_version}."\n";
67 print " Cookie Len:".$cookie_len."\n";
70 #Perform any actions necessary based on the data we've seen
77 #Reconstruct the on-the-wire message data following changes
78 sub set_message_contents
83 $data = pack('n', $self->server_version);
84 $data .= pack('C', $self->cookie_len);
85 $data .= $self->cookie;
95 $self->{server_version
} = shift;
97 return $self->{server_version
};
103 $self->{cookie_len
} = shift;
105 return $self->{cookie_len
};
111 $self->{cookie
} = shift;
113 return $self->{cookie
};