diff --git a/bin/auto b/bin/auto index 07e566d..0cf4f84 100755 --- a/bin/auto +++ b/bin/auto @@ -309,6 +309,24 @@ foreach my $cskey (keys %cservers) { if (defined $cservers{$cskey}{'ipv6'}[0]) { $use6 = $cservers{$cskey}{'ipv6'}[0]; } if (defined $cservers{$cskey}{'ssl'}[0]) { $usessl = $cservers{$cskey}{'ssl'}[0]; } + # CertFP. + if ($usessl) { + if (defined $cservers{$cskey}{'certfp'}[0]) { + if ($cservers{$cskey}{'certfp'}[0] eq 1) { + $conndata{'SSL_use_cert'} = 1; + if (defined $cservers{$cskey}{'certfp_cert'}[0]) { + $conndata{'SSL_cert_file'} = $cservers{$cskey}{'certfp_cert'}[0]; + } + if (defined $cservers{$cskey}{'certfp_key'}[0]) { + $conndata{'SSL_key_file'} = $cservers{$cskey}{'certfp_key'}[0]; + } + if (defined $cservers{$cskey}{'certfp_pass'}[0]) { + $conndata{'SSL_passwd_cb'} = sub { return $cservers{$cskey}{'certfp_pass'}[0]; }; + } + } + } + } + # Create the socket. if ($use6) { $SOCKET{$cskey} = IO::Socket::INET6->new(%conndata) or diff --git a/doc/CHANGELOG b/doc/CHANGELOG index 226d32c..66b279a 100644 --- a/doc/CHANGELOG +++ b/doc/CHANGELOG @@ -3,6 +3,7 @@ Auto IRC Bot 3.0: Change Log 3.0 Indev ================================================================== + * Added CertFP support. * Rewrote socket read/write methods. * Added SSL support. * Added act() to API::IRC.