# README: Notes about X11-based passphrase dialog for OpenSSH # created 1999-Nov-21 jmk # autodate: 2001-Feb-14 04:07 +-------------+ | Description | +-------------+ This is an X11-based passphrase dialog for use with OpenSSH. It is intended to replace the Perl/Tk-based ssh-askpass dialog and GNOME-based ssh-askpass dialog which formerly accompanied OpenSSH-1.2. These dialogs are intended to be called from the ssh-add program and not invoked directly. The features of x11-ssh-askpass are as follows: - Configurable via the standard X resource mechanism (/usr/lib/X11/app-defaults, ~/.Xdefaults, xrdb, etc.). - Require only stock X11 libraries (libXt, libX11, libSM, libICE). - Can be configured to grab the keyboard and/or pointer (grabs the keyboard by default, not the pointer). The user interface is somewhat different than most password/passphrase dialogs and more similar to the X11-based passphrase dialog that accompanies the regular SSH distribution. Instead of a text field that fills with asterisks or some other character as the user enters the passphrase, a series of LED-like areas light up one-by-one with each passphrase character entered, beginning from the lefthand edge of the dialog. When they reach the righthand edge, they go dark one-by-one again, and so on. This gives the user feedback that passphrase characters have been entered, but does not provide onlookers with a cue as to the length of the passphrase. Pressing the `OK' button accepts the passphrase (even if it is empty), which is printed on the standard output, and the dialog exits with a status of zero (success). Pressing the `Cancel' button discards the passphrase, and the dialog exits with non-zero status. The following keystrokes work as expected: [Backspace] or [Delete] Erase previous character [Control+U] or [Control+X] Erase entire passphrase [Enter], [Control+M], or [Control+J] Accept passphrase (OK) [Escape] Discard passphrase (Cancel) +------------+ | Installing | +------------+ x11-ssh-askpass currently uses imake and xmkmf to build. Here's the procedure: xmkmf make includes make make install make install.man x11-ssh-askpass installs by default in /usr/local/libexec/openssh/. To install it somewhere else (for example, /usr/libexec/openssh/) use: make install BINDIR=/usr/libexec/openssh Several different app-defaults files accompany x11-ssh-askpass: SshAskpass-1337.ad - small, dark, and gray SshAskpass-NeXTish.ad - a look mildly similar to that of NEXTstep SshAskpass-default.ad - the default look SshAskpass-green.ad - somewhat green SshAskpass-motif.ad - a bit like the look of the Motif toolkit If you wish a look other than the default, perform the following commands before building (for example): rm -f SshAskpass_ad.h make includes APP_DEFAULTS=SshAskpass-NeXTish.ad +-----------------+ | Where To Get It | +-----------------+ x11-ssh-askpass is available at: http://www.jmknoble.cx/software/x11-ssh-askpass/ +--------------------------+ | Copyright, License, Etc. | +--------------------------+ Some portions of x11-ssh-askpass are derived directly or indirectly from portions of xscreensaver by Jamie Zawinski <jwz@jwz.org>, while others are original works. The contents of the following files is taken directly, in whole or in part, from xscreensaver: drawing.c drawing.h resources.c resources.h The contents of the following files contains a limited amount of code (less than approximately 25%) which is derived from portions of xscreensaver: x11-ssh-askpass.c The remainder of the code is an original work, including the following files: dynlist.c dynlist.h x11-ssh-askpass.h *.ad The portions derived from xscreensaver require the following notice: xscreensaver, Copyright (c) 1991-1999 Jamie Zawinski <jwz@jwz.org> Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. The remaining portions fall under the following copyright and license: by Jim Knoble <jmknoble@jmknoble.cx> Copyright (C) 1999,2000,2001 Jim Knoble Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. +------------+ | Disclaimer | +------------+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the author(s) be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. -------- End of file --------