Commit d08d6d95 authored by Peter Pentchev's avatar Peter Pentchev

New upstream version 2.8.5

parent d75f2d39
......@@ -13,6 +13,18 @@
# Maintained July 2009 - September 2017 by Daniel Robbins <drobbins@funtoo.org>
# Maintained September 2017 - present by Ryan Harris <x48rph@gmail.com>
* keychain 2.8.5 (24 Jan 2018)
Summary Various fixes and support systemd gnupg sockets
Some shells don't support local builtin (Roy Marples)
Support systemd managed gnupg sockets (Pedro Romano)
Fix some lintian warnings in the man page (Chris West)
Fix issues loading pem keys (Jack Twilley)
* keychain 2.8.4 (19 Oct 2017)
Summary: Support to GPG2 (Ryan Harris)
......
......@@ -3,12 +3,19 @@ IMPORTANT - GitHub Contributors
Please apply your patches to `keychain.sh`, *not* the generated `keychain`
script, which we are now including in the git repo to facilitate the
distribution of release archives direct from GitHub. The file `keychain` and
related generated file (man pages, spec file) may be out-of-date during active
development. We will regenerate them for official release archives only (those
tagged with the release version.) Thanks!
distribution of release archives direct from GitHub. All development work will
be done on the 'devel' branch and will only be merged with the master branch when
a new release is made. This should allow the generated files (keychain, man pages,
spec file)to remain in sync on the master branch but no guarantees are made except
for the tagged release. They will be regenerated for official release archives
only (those tagged with the release version.). Anyone using or contributing to the
'devel' branch should assume the generated files are out of date and regenerate
locally if needed.
Thanks!
Please submit Introduction to Keychain
Introduction to Keychain
========================
**Official documentation for Keychain can be found on [the official Keychain
......
......@@ -13,7 +13,7 @@
# Maintained July 2009 - Sept 2017 by Daniel Robbins <drobbins@funtoo.org>
# Maintained September 2017 - present by Ryan Harris <x48rph@gmail.com>
version=2.8.4
version=2.8.5
PATH="${PATH:-/usr/bin:/bin:/sbin:/usr/sbin:/usr/ucb}"
......@@ -246,7 +246,7 @@ OPTIONS
specified if they haven't yet been added to ssh-agent.
${GREEN}--nocolor${OFF}
Disable color hilighting for non ANSI-compatible terms.
Disable color highlighting for non ANSI-compatible terms.
${GREEN}--nogui${OFF}
Don't honor SSH_ASKPASS, if it is set. This will cause ssh-add to
......@@ -357,7 +357,7 @@ lockfile() {
# it returns 0. If it fails, it returns 1. This function retuns immediately
# and only tries to acquire the lock once.
local tmpfile="$lockf.$$"
tmpfile="$lockf.$$"
echo $$ >"$tmpfile" 2>/dev/null || exit
if ln "$tmpfile" "$lockf" 2>/dev/null; then
......@@ -386,7 +386,7 @@ takelock() {
# First attempt:
lockfile && return 0
local counter=0
counter=0
mesg "Waiting $lockwait seconds for lock..."
while [ "$counter" -lt "$(( $lockwait * 2 ))" ]
do
......@@ -557,9 +557,15 @@ inheritagents() {
inherit_gpg_agent_info="$GPG_AGENT_INFO"
inherit_gpg_agent_pid=$(echo "$GPG_AGENT_INFO" | cut -f2 -d:)
# GnuPG v.2.1+ removes $GPG_AGENT_INFO
elif [ -S "${GNUPGHOME:=$HOME/.gnupg}/S.gpg-agent" ]; then
inherit_gpg_agent_pid=$(findpids "${gpg_prog_name}")
inherit_gpg_agent_info="$GNUPGHOME/S.gpg-agent:${inherit_gpg_agent_pid}:1"
else
gpg_socket_dir="${GNUPGHOME:=$HOME/.gnupg}"
if [ ! -S "${GNUPGHOME:=$HOME/.gnupg}/S.gpg-agent" ]; then
gpg_socket_dir="${XDG_RUNTIME_DIR}/gnupg"
fi
if [ -S "${gpg_socket_dir}/S.gpg-agent" ]; then
inherit_gpg_agent_pid=$(findpids "${gpg_prog_name}")
inherit_gpg_agent_info="${gpg_socket_dir}/S.gpg-agent:${inherit_gpg_agent_pid}:1"
fi
fi
fi
fi
......@@ -942,7 +948,7 @@ ssh_l() {
# synopsis: ssh_f filename
# Return fingerprint for a keyfile
# Requires $openssh and $sunssh
# Requires $openssh or $sunssh
ssh_f() {
sf_filename="$1"
......@@ -960,9 +966,8 @@ ssh_f() {
fi
lsf_filename=$(echo "$sf_filename" | sed 's/\.[^\.]*$//').pub
if [ ! -f "$lsf_filename" ]; then
warn "Cannot find public key for $sf_filename."
basename "$sf_filename"
return 0
warn "Cannot find separate public key for $1."
lsf_filename="$sf_filename"
fi
fi
sf_fing=$(ssh-keygen -l -f "$lsf_filename") || return 1
......
.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32)
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
.\"
.\" Standard preamble:
.\" ========================================================================
......@@ -129,7 +129,7 @@
.\" ========================================================================
.\"
.IX Title "keychain 1"
.TH keychain 1 "2017-11-12" "2.8.4" "http://www.funtoo.org"
.TH keychain 1 "2018-01-24" "2.8.5" "http://www.funtoo.org"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
......@@ -138,8 +138,8 @@
keychain \- re\-use ssh\-agent and/or gpg\-agent between logins
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
keychain\ [\ \-hklQqV\ ]\ [\ \-\-clear\ \-\-confhost\ \-\-gpg2\ \-\-help\ \-\-ignore\-missing\ \-\-list\ \-\-noask
\&\-\-nocolor\ \-\-nogui\ \-\-nolock\ \-\-quick\ \-\-quiet\ \-\-version\ ]
keychain\ [\ \-hklQqV\ ]\ [\ \-\-clear\ \-\-confhost\ \-\-gpg2\ \-\-help\ \-\-ignore\-missing\ \-\-list
\&\-\-noask\ \-\-nocolor\ \-\-nogui\ \-\-nolock\ \-\-quick\ \-\-quiet\ \-\-version\ ]
[\ \-\-agents\ \fIlist\fR\ ]\ [\ \-\-attempts\ \fInum\fR\ ]\ [\ \-\-dir\ \fIdirname\fR\ ]
[\ \-\-host\ \fIname\fR\ ]\ [\ \-\-lockwait\ \fIseconds\fR\ ]
[\ \-\-stop\ \fIwhich\fR\ ]\ [\ \-\-timeout\ \fIminutes\fR\ ]\ [\ keys...\ ]
......@@ -303,7 +303,7 @@ except that it will not prompt you to add any of the keys you
specified if they haven't yet been added to ssh-agent.
.IP "\fB\-\-nocolor\fR" 4
.IX Item "--nocolor"
Disable color hilighting for non ANSI-compatible terms.
Disable color highlighting for non ANSI-compatible terms.
.IP "\fB\-\-nogui\fR" 4
.IX Item "--nogui"
Don't honor \s-1SSH_ASKPASS,\s0 if it is set. This will cause ssh-add to
......
......@@ -4,8 +4,8 @@ keychain - re-use ssh-agent and/or gpg-agent between logins
=head1 SYNOPSIS
S<keychain [ -hklQqV ] [ --clear --confhost --gpg2 --help --ignore-missing --list --noask>
S<--nocolor --nogui --nolock --quick --quiet --version ]>
S<keychain [ -hklQqV ] [ --clear --confhost --gpg2 --help --ignore-missing --list>
S<--noask --nocolor --nogui --nolock --quick --quiet --version ]>
S<[ --agents I<list> ] [ --attempts I<num> ] [ --dir I<dirname> ]>
S<[ --host I<name> ] [ --lockwait I<seconds> ]>
S<[ --stop I<which> ] [ --timeout I<minutes> ] [ keys... ]>
......@@ -196,7 +196,7 @@ specified if they haven't yet been added to ssh-agent.
=item B<--nocolor>
Disable color hilighting for non ANSI-compatible terms.
Disable color highlighting for non ANSI-compatible terms.
=item B<--nogui>
......
......@@ -176,7 +176,7 @@ lockfile() {
# it returns 0. If it fails, it returns 1. This function retuns immediately
# and only tries to acquire the lock once.
local tmpfile="$lockf.$$"
tmpfile="$lockf.$$"
echo $$ >"$tmpfile" 2>/dev/null || exit
if ln "$tmpfile" "$lockf" 2>/dev/null; then
......@@ -205,7 +205,7 @@ takelock() {
# First attempt:
lockfile && return 0
local counter=0
counter=0
mesg "Waiting $lockwait seconds for lock..."
while [ "$counter" -lt "$(( $lockwait * 2 ))" ]
do
......@@ -376,9 +376,15 @@ inheritagents() {
inherit_gpg_agent_info="$GPG_AGENT_INFO"
inherit_gpg_agent_pid=$(echo "$GPG_AGENT_INFO" | cut -f2 -d:)
# GnuPG v.2.1+ removes $GPG_AGENT_INFO
elif [ -S "${GNUPGHOME:=$HOME/.gnupg}/S.gpg-agent" ]; then
inherit_gpg_agent_pid=$(findpids "${gpg_prog_name}")
inherit_gpg_agent_info="$GNUPGHOME/S.gpg-agent:${inherit_gpg_agent_pid}:1"
else
gpg_socket_dir="${GNUPGHOME:=$HOME/.gnupg}"
if [ ! -S "${GNUPGHOME:=$HOME/.gnupg}/S.gpg-agent" ]; then
gpg_socket_dir="${XDG_RUNTIME_DIR}/gnupg"
fi
if [ -S "${gpg_socket_dir}/S.gpg-agent" ]; then
inherit_gpg_agent_pid=$(findpids "${gpg_prog_name}")
inherit_gpg_agent_info="${gpg_socket_dir}/S.gpg-agent:${inherit_gpg_agent_pid}:1"
fi
fi
fi
fi
......@@ -761,7 +767,7 @@ ssh_l() {
# synopsis: ssh_f filename
# Return fingerprint for a keyfile
# Requires $openssh and $sunssh
# Requires $openssh or $sunssh
ssh_f() {
sf_filename="$1"
......@@ -779,9 +785,8 @@ ssh_f() {
fi
lsf_filename=$(echo "$sf_filename" | sed 's/\.[^\.]*$//').pub
if [ ! -f "$lsf_filename" ]; then
warn "Cannot find public key for $sf_filename."
basename "$sf_filename"
return 0
warn "Cannot find separate public key for $1."
lsf_filename="$sf_filename"
fi
fi
sf_fing=$(ssh-keygen -l -f "$lsf_filename") || return 1
......
Name: keychain
Version: 2.8.4
Version: 2.8.5
Release: 1
Summary: agent manager for OpenSSH, ssh.com, Sun SSH, and GnuPG
Packager: Daniel Robbins <drobbins@funtoo.org>
......
......@@ -162,7 +162,7 @@ OPTIONS
specified if they haven't yet been added to ssh-agent.
--nocolor
Disable color hilighting for non ANSI-compatible terms.
Disable color highlighting for non ANSI-compatible terms.
--nogui
Don't honor SSH_ASKPASS, if it is set. This will cause ssh-add to
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment