Package: gitolite
Version: 2.3-1
Severity: wishlist
Tags: patch

I was attempting to use gitolite with an ecdsa based key and got an error
when gl-setup ran sshkeys-lint. This is because it's using a regular
expression which only knows about dsa and rsa keys. I've attached a patch
which will also understand elliptic curve keys.

-- System Information:
Debian Release: 7.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gitolite depends on:
ii  adduser                3.113+nmu3
ii  debconf [debconf-2.0]  1.5.49
ii  git [git-core]         1:1.7.10.4-2
ii  git-core               1:1.7.10.4-2
ii  openssh-server         1:6.0p1-3
ii  perl                   5.14.2-16

gitolite recommends no packages.

Versions of packages gitolite suggests:
pn  git-daemon-run  <none>
pn  gitweb          <none>

-- debconf information:
* gitolite/gituser: gitolite
* gitolite/gitdir: /var/lib/gitolite
* gitolite/adminkey:
--- sshkeys-lint        2012-02-13 14:15:33.000000000 +1100
+++ sshkeys-lint.ecdsa  2013-01-23 15:39:49.009803996 +1100
@@ -125,10 +125,10 @@
 sub fprint {
     local $_ = shift;
     my ($fh, $tempfn, $in);
-    if (/ssh-(dss|rsa) /) {
+    if (/ssh-(dss|rsa) / || /ecdsa-/ ) {
         # an actual key was passed.  Since ssh-keygen requires an actual file,
         # make a temp file to take the data and pass on to ssh-keygen
-        s/^.* (ssh-dss|ssh-rsa)/$1/;
+        s/^.* (ssh-dss|ssh-rsa|ecdsa-[^ ]*)/$1/;
         use File::Temp qw(tempfile);
         ($fh, $tempfn) = tempfile();
         $in = $tempfn;

Reply via email to