Hallo zusammen
zum Hauptthema geht es hier.
Wie im Titel beschrieben:
Ich habe einen Client & einen Server die über SSL miteinander kommunizieren.
Jetzt habe ich dem Client den SSL fingerprint gegeben, und wenn dieser Richtig ist läuft auch alles einwandfrei.
Doch wenn ich den Fingerprint verändere stürzt der Server ab, da er den undefinierten client_socket aufrufen möchte.
Wie kann ich den Fehler abfangen?
Fehler:
Programm:
Client Socket:
LG,
Nero
zum Hauptthema geht es hier.
Wie im Titel beschrieben:
Ich habe einen Client & einen Server die über SSL miteinander kommunizieren.
Jetzt habe ich dem Client den SSL fingerprint gegeben, und wenn dieser Richtig ist läuft auch alles einwandfrei.
Doch wenn ich den Fingerprint verändere stürzt der Server ab, da er den undefinierten client_socket aufrufen möchte.
Wie kann ich den Fehler abfangen?
Fehler:
Code:
Can't call method "peerhost" on an undefined value at TCPSSLServer.perl line 30.
Programm:
Code:
#! /usr/bin/perl -w
use strict;
use IO::Socket::SSL;
# auto-flush on socket
$| = 1;
# creating a listening socket
my $socket = new IO::Socket::SSL (
LocalHost => '192.168.112.120',
LocalPort => '7777',
#Proto => 'tcp',
Listen => 10,
SSL_cert_file => 'test-cert.pem',
SSL_key_file => 'test-key.pem',
SSL_error_trap => 1,
);
die "cannot create socket $!\n" unless $socket;
print "Server wartet auf Verbindung von Port 7777\n";
while(1)
{
# waiting for a new client connection
my $client_socket = $socket->accept();
# get information about a newly connected client
my $client_address = $client_socket->peerhost();
my $client_port = $client_socket->peerport();
print "Eingehende Verbindung von: $client_address:$client_port\n";
# read up to 1024 characters from the connected client
my $data = <$client_socket>;
print "Daten empfangen: $data\n";
# write response data to the connected client
$data = "Verstanden ich bin der Server!";
print $client_socket $data;
# notify client that response has been sent
shutdown($client_socket, 1);
}
$socket->close();
Client Socket:
Code:
my $socket = new IO::Socket::SSL (
PeerHost => '192.168.112.120',
PeerPort => '7777',
SSL_verify_mode => SSL_VERIFY_PEER,
SSL_fingerprint => 'sha512$- Falscher FPR-',
#Proto => 'tcp',
);
LG,
Nero