1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-15 10:17:20 +00:00
freebsd/crypto/openssh
Dag-Erling Smørgrav edb557f8bb Support OPIE as an alternative to S/Key.
Sponsored by:	DARPA, NAI Labs
2002-06-29 10:44:37 +00:00
..
openbsd-compat Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
regress Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
scard Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
acconfig.h Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
aclocal.m4 Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
atomicio.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
atomicio.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
auth1.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth2-chall.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth2-hostbased.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
auth2-kbdint.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth2-none.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth2-pam.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth2-pam.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth2-passwd.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth2-pubkey.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth2.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-bsdauth.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
auth-chall.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-krb4.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-krb5.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-options.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
auth-options.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
auth-pam.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-pam.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-passwd.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-rh-rsa.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-rhosts.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
auth-rsa.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth-sia.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth-sia.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
auth-skey.c Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
auth.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
auth.h Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
authfd.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
authfd.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
authfile.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
authfile.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
bufaux.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
bufaux.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
buffer.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
buffer.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
canohost.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
canohost.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ChangeLog Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
channels.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
channels.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
cipher.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
cipher.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
clientloop.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
clientloop.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
compat.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
compat.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
compress.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
compress.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
config.guess Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
config.sub Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
configure.ac Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
crc32.c Say "hi" to the latest in the OpenSSH series, version 2.9! 2001-05-04 03:57:05 +00:00
crc32.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
CREDITS Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
deattack.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
deattack.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
defines.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
dh.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
dh.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
dispatch.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
dispatch.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
entropy.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
entropy.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
fatal.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
fixpaths Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
fixprogs Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
FREEBSD-upgrade Document the upgrade process. 2002-06-29 10:39:14 +00:00
FREEBSD-Xlist Files we don't want to import. 2002-06-29 10:39:02 +00:00
getput.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
groupaccess.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
groupaccess.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
hostfile.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
hostfile.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
includes.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
INSTALL Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
install-sh Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
kex.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
kex.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
kexdh.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
kexgex.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
key.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
key.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
LICENCE Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
log.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
log.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
loginrec.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
loginrec.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
logintest.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
mac.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
mac.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
Makefile.in Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
Makefile.inc Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
match.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
match.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
md5crypt.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
md5crypt.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
mdoc2man.pl Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
misc.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
misc.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
mkinstalldirs Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
moduli Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor_fdpass.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor_fdpass.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor_mm.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor_mm.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor_wrap.c Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
monitor_wrap.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
monitor.c Support OPIE as an alternative to S/Key. 2002-06-29 10:44:37 +00:00
monitor.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
mpaux.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
mpaux.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
msg.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
msg.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
myproposal.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
nchan2.ms Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
nchan.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
nchan.ms Say "hi" to the latest in the OpenSSH series, version 2.9! 2001-05-04 03:57:05 +00:00
OVERVIEW Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
packet.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
packet.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
pathnames.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
radix.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
radix.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
readconf.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
readconf.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
README Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
README.privsep Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
README.smartcard Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
readpass.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
readpass.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
RFC.nroff
rijndael.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
rijndael.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
rsa.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
rsa.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
scard-opensc.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
scard.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
scard.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
scp.1 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
scp.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
servconf.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
servconf.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
serverloop.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
serverloop.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
session.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
session.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sftp-client.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp-client.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sftp-common.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sftp-common.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sftp-glob.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp-glob.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
sftp-int.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp-int.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sftp-server.8 Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp-server.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp.1 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
sftp.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sftp.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh1.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh2.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh_config Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh_config.5 Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh_prng_cmds.in Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ssh-add.1 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ssh-add.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh-agent.1 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ssh-agent.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh-dss.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh-dss.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh-keygen.1 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ssh-keygen.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ssh-keyscan.1 Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh-keyscan.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh-keysign.8 Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ssh-keysign.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ssh-rand-helper.8 Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ssh-rand-helper.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ssh-rsa.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ssh-rsa.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
ssh.1 Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
ssh.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshconnect1.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshconnect2.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshconnect.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshconnect.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshd_config Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshd_config.5 Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshd.8 Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshd.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshlogin.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshlogin.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
sshpty.c Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
sshpty.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sshtty.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
sshtty.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
tildexpand.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
tildexpand.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
TODO Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
ttymodes.c Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00
ttymodes.h Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
uidswap.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
uidswap.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
uuencode.c Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
uuencode.h Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
version.c Add a "VersionAddendum" configuration setting for sshd which allows 2001-05-03 00:29:28 +00:00
version.h Forcibly revert to mainline. 2002-06-27 22:42:11 +00:00
WARNING.RNG Vendor import of OpenSSH 3.3p1. 2002-06-27 22:31:32 +00:00
xmalloc.c Vendor import of OpenSSH 3.1 2002-03-18 09:55:03 +00:00
xmalloc.h Vendor import of OpenSSH 3.3. 2002-06-23 14:01:54 +00:00

- A Japanese translation of this document and of the OpenSSH FAQ is 
- available at http://www.unixuser.org/~haruyama/security/openssh/index.html
- Thanks to HARUYAMA Seigo <haruyama@unixuser.org>

This is the port of OpenBSD's excellent OpenSSH[0] to Linux and other
Unices.

OpenSSH is based on the last free version of Tatu Ylonen's sample
implementation with all patent-encumbered algorithms removed (to
external libraries), all known security bugs fixed, new features
reintroduced and many other clean-ups.  OpenSSH has been created by
Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt,
and Dug Song. It has a homepage at http://www.openssh.com/

This port consists of the re-introduction of autoconf support, PAM
support (for Linux and Solaris), EGD[1]/PRNGD[2] support and replacements 
for OpenBSD library functions that are (regrettably) absent from other 
unices. This port has been best tested on Linux, Solaris, HP-UX, NetBSD 
and Irix. Support for AIX, SCO, NeXT and other Unices is underway. 
This version actively tracks changes in the OpenBSD CVS repository.

The PAM support is now more functional than the popular packages of
commercial ssh-1.2.x. It checks "account" and "session" modules for
all logins, not just when using password authentication.

OpenSSH depends on Zlib[3], OpenSSL[4] and optionally PAM[5].

There is now several mailing lists for this port of OpenSSH. Please
refer to http://www.openssh.com/list.html for details on how to join.

Please send bug reports and patches to the mailing list
openssh-unix-dev@mindrot.org. The list is open to posting by
unsubscribed users.

If you are a citizen of an USA-embargoed country to which export of 
cryptographic products is restricted, then please refrain from sending 
crypto-related code or patches to the list. We cannot accept them.
Other code contribution are accepted, but please follow the OpenBSD
style guidelines[6].

Please refer to the INSTALL document for information on how to install
OpenSSH on your system. There are a number of differences between this 
port of OpenSSH and F-Secure SSH 1.x, please refer to the OpenSSH FAQ[7]
for details and general tips.

Damien Miller <djm@mindrot.org>

Miscellania - 

This version of OpenSSH is based upon code retrieved from the OpenBSD
CVS repository which in turn was based on the last free sample
implementation released by Tatu Ylonen.

References -

[0] http://www.openssh.com/faq.html
[1] http://www.lothar.com/tech/crypto/
[2] http://www.aet.tu-cottbus.de/personen/jaenicke/postfix_tls/prngd.html
[3] http://www.gzip.org/zlib/
[4] http://www.openssl.org/
[5] http://www.kernel.org/pub/linux/libs/pam/ (PAM is standard on Solaris
    and HP-UX 11)
[6] http://www.openbsd.org/cgi-bin/man.cgi?query=style&sektion=9
[7] http://www.openssh.com/faq.html

$Id: README,v 1.50 2001/12/24 03:17:21 djm Exp $