--- keychain.orig 2011-10-12 03:16:57.000000000 +0200 +++ keychain 2012-01-15 01:25:21.028225260 +0100 @@ -49,6 +49,7 @@ confirmopt=false unset ssh_confirm unset GREP_OPTIONS +realpath_bin="`which realpath`" BLUE="" CYAN="" @@ -888,6 +889,12 @@ # Requires $openssh and $sunssh ssh_f() { sf_filename="$1" + + # if private key is symlink and symlink to *.pub is missing + if [ ! -z "$realpath_bin" ] && [ -x "$realpath_bin" ]; then + sf_filename="`realpath $sf_filename`" + fi + if $openssh || $sunssh; then if [ ! -f "$sf_filename.pub" ]; then warn "$sf_filename.pub missing; can't tell if $sf_filename is loaded"