projects
/
mirror
/
userdir-ldap-cgi.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
machines.cgi: generate fingerprints for ecdsa-sha2-nistp256 ssh keys.
[mirror/userdir-ldap-cgi.git]
/
machines.cgi
diff --git
a/machines.cgi
b/machines.cgi
index
4108fff
..
b80d92e
100755
(executable)
--- a/
machines.cgi
+++ b/
machines.cgi
@@
-11,7
+11,7
@@
use strict vars;
#use Apache::Registry;
use CGI;
use Util;
#use Apache::Registry;
use CGI;
use Util;
-use Net::LDAP qw(
:all
);
+use Net::LDAP qw(
LDAP_SUCCESS LDAP_PROTOCOL_ERROR
);
use Fcntl;
use POSIX;
use MIME::Base64;
use Fcntl;
use POSIX;
use MIME::Base64;
@@
-74,7
+74,8
@@
sub sshfingerprint {
return '' if (!$key);
my @field = split(/ /, $key);
return '' if (!$key);
my @field = split(/ /, $key);
- return '' if $field[0] ne 'ssh-dss' and $field[0] ne 'ssh-rsa';
+ my %keytypes = map {$_=>1} (qw{ssh-dss ssh-rsa ecdsa-sha2-nistp256});
+ return '' unless $keytypes{$field[0]};
return '' if !$field[1];
my $fpr = md5_hex(decode_base64($field[1]));
my $hrfpr = $field[0] . " " . substr($fpr,0,2,"");
return '' if !$field[1];
my $fpr = md5_hex(decode_base64($field[1]));
my $hrfpr = $field[0] . " " . substr($fpr,0,2,"");