Add ARM files
[dh-make-perl] / dev / arm / libnet-ssleay-perl / libnet-ssleay-perl-1.35 / examples / passwd-cb.pl
diff --git a/dev/arm/libnet-ssleay-perl/libnet-ssleay-perl-1.35/examples/passwd-cb.pl b/dev/arm/libnet-ssleay-perl/libnet-ssleay-perl-1.35/examples/passwd-cb.pl
new file mode 100644 (file)
index 0000000..3156fe3
--- /dev/null
@@ -0,0 +1,34 @@
+#!/usr/local/bin/perl
+# passwd-cb.pl
+#
+# Check using password callbacks to decrypt private keys
+# $Id: passwd-cb.pl,v 1.2 2002/06/05 18:25:47 sampo Exp $
+
+use Socket;
+use Net::SSLeay qw(die_now die_if_ssl_error);
+Net::SSLeay::randomize();
+Net::SSLeay::load_error_strings();
+Net::SSLeay::SSLeay_add_ssl_algorithms();
+
+my ($key_pem, $password) = @ARGV;
+
+print "Keyfile: `$key_pem', pw: `$password'\n";
+$calls = 0;
+
+sub callback {
+    $calls++;
+    print "Callback `$password'\n";
+    return $password;
+}
+
+my $ctx = Net::SSLeay::CTX_new() or die_now("Failed to create SSL_CTX $!");
+if (1) {
+Net::SSLeay::CTX_set_default_passwd_cb($ctx, \&callback);
+}
+Net::SSLeay::CTX_use_PrivateKey_file($ctx, $key_pem,
+    &Net::SSLeay::FILETYPE_PEM())
+    or print "CTX_use_PrivateKey_file failed\n";
+
+print "calls=$calls\n";
+
+#EOF