| 1 | = History = |
| 2 | |
| 3 | OpenPAM was developed by Dag-Erling Smørgrav (initially as an employee of !ThinkSec), with occasional and much-appreciated contributions from [http://svn.des.no/svn/openpam/trunk/CREDITS a number of other people]. Development started in early 2002 with funding from what was then Network Associates Laboratories, the Security Research Division of Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS research program. |
| 4 | |
| 5 | The attendant OpenSSH work was a direct continuation of an earlier effort by !ThinkSec's Eivind Eklund, which was funded by the now-defunct Norwegian ISP Enitel. |
| 6 | |
| 7 | Dag-Erling's mandate was initially to maintain FreeBSD's [http://kernel.org/pub/linux/libs/pam/ Linux-PAM] port and its existing set of PAM modules, develop additional PAM modules, and add PAM support to FreeBSD's [http://www.openssh.org/ OpenSSH] port. In that context, OpenPAM was intended as a testing and validation framework for PAM applications and modules. However, due to fundamental architectural flaws in Linux-PAM and its extremely poor code quality, the decision was made to develop OpenPAM into a full-fledged PAM implementation. |
| 8 | |
| 9 | A number of features, such as module option handling, credential borrowing and ready-made conversation functions, were added to minimize code duplication in modules and applications. With a few intentional exceptions, these extensions are clearly marked as such. |
| 10 | |
| 11 | OpenPAM replaced Linux-PAM in FreeBSD in March, 2002. The first official FreeBSD release to ship with OpenPAM was FreeBSD 5.1 in June, 2003 (5.0, which also included OpenPAM was a “technological preview”). |
| 12 | |
| 13 | The first official NetBSD release with OpenPAM was NetBSD 3.0 in December, 2005. |
| 14 | |
| 15 | Apple started the transition to OpenPAM in 2008; the first MacOS X release to ship with OpenPAM was MacOS X 10.6 “Snow Leopard” in August, 2009. |
| 16 | |
| 17 | The OpenSSH PAM integration code which was developed in conjunction with OpenPAM was adopted by the [http://www.openssh.org/portable.html OpenSSH-portable] maintainers in 2003 and has been included in OpenSSH-portable since 3.7p1. |