summaryrefslogtreecommitdiff
path: root/security/keychain
diff options
context:
space:
mode:
authorwiz <wiz>2001-09-15 14:20:41 +0000
committerwiz <wiz>2001-09-15 14:20:41 +0000
commit97d2ccbc68d2bdb7cbf576b8c84dd2b55f888a8f (patch)
treee93a4c8ecf7b17bdcf306a921946ca75f54cd5b6 /security/keychain
parentf16a59172e6189c4123b4e8b635b6da57043da5d (diff)
downloadpkgsrc-97d2ccbc68d2bdb7cbf576b8c84dd2b55f888a8f.tar.gz
Initial import of keychain package provided by Martti Kuparinen in pkg/13931.
DESCR: Keychain is a shell script which acts as user-friendly front-end to ssh-agent(1), allowing you to have one long-running ssh-agent process per system rather than per login session. Please study the documentation on the keychain website carefully since incorrect usage of this script may have certain security implementations.
Diffstat (limited to 'security/keychain')
-rw-r--r--security/keychain/Makefile25
-rw-r--r--security/keychain/distinfo5
-rw-r--r--security/keychain/patches/patch-aa95
-rw-r--r--security/keychain/pkg/DESCR6
-rw-r--r--security/keychain/pkg/PLIST4
5 files changed, 135 insertions, 0 deletions
diff --git a/security/keychain/Makefile b/security/keychain/Makefile
new file mode 100644
index 00000000000..4bd93532200
--- /dev/null
+++ b/security/keychain/Makefile
@@ -0,0 +1,25 @@
+# $NetBSD: Makefile,v 1.1.1.1 2001/09/15 14:20:41 wiz Exp $
+
+DISTNAME= keychain-1.2
+CATEGORIES= security
+MASTER_SITES= http://www.ibiblio.org/gentoo/distfiles/
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER= packages@netbsd.org
+HOMEPAGE= http://www.gentoo.org/projects/keychain/
+COMMENT= Nice ssh-agent front-end
+
+DEPENDS= psmisc-*:../../sysutils/psmisc
+
+.if !exists(/usr/bin/ssh-agent)
+DEPENDS+= openssh-*:../../security/openssh
+.endif
+
+NO_BUILD= # defined
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/keychain ${PREFIX}/bin/
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/keychain
+ ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/keychain
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/security/keychain/distinfo b/security/keychain/distinfo
new file mode 100644
index 00000000000..63b29203aff
--- /dev/null
+++ b/security/keychain/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2001/09/15 14:20:41 wiz Exp $
+
+SHA1 (keychain-1.2.tar.bz2) = d9e59623332aa5f40f2448eaf614dc5b3513cac8
+Size (keychain-1.2.tar.bz2) = 3229 bytes
+SHA1 (patch-aa) = 9534109e4272980374e0868d2823325e536eec74
diff --git a/security/keychain/patches/patch-aa b/security/keychain/patches/patch-aa
new file mode 100644
index 00000000000..c9e367080aa
--- /dev/null
+++ b/security/keychain/patches/patch-aa
@@ -0,0 +1,95 @@
+$NetBSD: patch-aa,v 1.1.1.1 2001/09/15 14:20:41 wiz Exp $
+
+--- keychain.orig Mon Sep 10 04:42:47 2001
++++ keychain Tue Sep 11 08:30:24 2001
+@@ -19,10 +19,11 @@
+ fi
+ done
+
+-BLUE="\033[34;01m"
+-GREEN="\033[32;01m"
+-OFF="\033[0m"
+-CYAN="\033[36;01m"
++# Some terminals don't support colors
++BLUE=
++GREEN=
++OFF=
++CYAN=
+ echo
+ echo -e "${GREEN}KeyChain ${version}; ${BLUE}http://www.gentoo.org/projects/keychain${OFF}\n Copyright 2001 Gentoo Technologies, Inc.; Distributed under the GPL"
+
+@@ -46,20 +47,20 @@
+
+ Keychain is an OpenSSH key manager, typically run from ~/.bash_profile. When
+ run, it will make sure ssh-agent is running; if not, it will start ssh-agent.
+- It will redirect ssh-agent's output to ~/.ssh-agent, so that cron jobs that
+- need to use ssh-agent keys can simply source this file and make the necessary
+- passwordless ssh connections. In addition, when keychain runs, it will check
+- with ssh-agent and make sure that the ssh RSA/DSA keys that you specified on
+- the keychain command line have actually been added to ssh-agent. If not, you
+- are prompted for the appropriate passphrases so that they can be added by
+- keychain.
++ It will redirect ssh-agent's output to ~/.ssh-agent-\`hostname\`, so that cron
++ jobs that need to use ssh-agent keys can simply source this file and make the
++ necessary passwordless ssh connections. In addition, when keychain runs, it
++ will check with ssh-agent and make sure that the ssh RSA/DSA keys that you
++ specified on the keychain command line have actually been added to ssh-agent.
++ If not, you are prompted for the appropriate passphrases so that they can be
++ added by keychain.
+
+ Typically, one uses keychain by adding the following to the top of their
+ ~/.bash_profile (or ~/.zshrc, in case of zsh):
+
+ EOHELP
+ echo -e " ${CYAN}keychain ~/.ssh/id_rsa ~/.ssh/id_dsa"
+-echo -e " source ~/.ssh-agent > /dev/null${OFF}"
++echo -e " . ~/.ssh-agent-\`hostname\` > /dev/null${OFF}"
+ echo -e " # the > /dev/null eliminates the redundant agent PID output"
+ echo
+ cat <<EOHELP
+@@ -86,8 +87,9 @@
+ echo
+ cat <<EOHELP
+ This option tells keychain do everything it normally does (ensure ssh-agent is
+- running, set up the ~/.ssh-agent file) 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.
++ running, set up the ~/.ssh-agent-\`hostname\` file) 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.
+
+ EOHELP
+ echo -e " ${GREEN}--stop${OFF}"
+@@ -102,14 +104,14 @@
+ fi
+
+
+-if [ ! -f ~/.ssh-agent ]
++if [ ! -f ~/.ssh-agent-`hostname` ]
+ then
+- echo -e " ${GREEN}*${OFF} Initializing ~/.ssh-agent file..."
+- touch ~/.ssh-agent || ( echo "$0: Cannot create ~/.ssh-agent, exiting." 1>&2 && exit 1 )
+- chmod 0600 ~/.ssh-agent
++ echo -e " ${GREEN}*${OFF} Initializing ~/.ssh-agent-`hostname` file..."
++ touch ~/.ssh-agent-`hostname` || ( echo "$0: Cannot create ~/.ssh-agent-`hostname`, exiting." 1>&2 && exit 1 )
++ chmod 0600 ~/.ssh-agent-`hostname`
+ SSH_AGENT_PID="NULL"
+ else
+- source ~/.ssh-agent > /dev/null
++ . ~/.ssh-agent-`hostname` > /dev/null
+ fi
+
+ match="no"
+@@ -127,10 +129,10 @@
+
+ if [ "$match" = "no" ]
+ then
+- chmod 0600 ~/.ssh-agent
++ chmod 0600 ~/.ssh-agent-`hostname`
+ echo -e " ${GREEN}*${OFF} starting new ssh-agent"
+- nohup ssh-agent > ~/.ssh-agent
+- source ~/.ssh-agent > /dev/null
++ nohup ssh-agent > ~/.ssh-agent-`hostname`
++ . ~/.ssh-agent-`hostname` > /dev/null
+ fi
+
+ if [ -n "`echo $* | grep '\-\-clear'`" ]
diff --git a/security/keychain/pkg/DESCR b/security/keychain/pkg/DESCR
new file mode 100644
index 00000000000..ca0641081e8
--- /dev/null
+++ b/security/keychain/pkg/DESCR
@@ -0,0 +1,6 @@
+Keychain is a shell script which acts as user-friendly front-end to
+ssh-agent(1), allowing you to have one long-running ssh-agent process per
+system rather than per login session.
+
+Please study the documentation on the keychain website carefully since
+incorrect usage of this script may have certain security implementations.
diff --git a/security/keychain/pkg/PLIST b/security/keychain/pkg/PLIST
new file mode 100644
index 00000000000..aaa1d69fd99
--- /dev/null
+++ b/security/keychain/pkg/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2001/09/15 14:20:41 wiz Exp $
+bin/keychain
+share/doc/keychain/README
+@dirrm share/doc/keychain