gecko-dev/security/svrcore
richm%stanfordalumni.org ce2d0257bf Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license
Update version to 4.0.4
Remove the build rpm script
2007-03-13 15:39:58 +00:00
..
m4 Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
src Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
AUTHORS Resolves: bug 363168 2006-12-14 17:07:32 +00:00
COPYING Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
ChangeLog Resolves: bug 363168 2006-12-14 17:07:32 +00:00
INSTALL Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
INSTALL.win Resolves: bug 363168 2006-12-14 17:07:32 +00:00
LICENSE Resolves: bug 363168 2006-12-14 17:07:32 +00:00
Makefile.am Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
Makefile.in Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
NEWS Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
README Resolves: bug 363168 2006-12-14 17:07:32 +00:00
TODO Resolves: bug 363168 2006-12-14 17:07:32 +00:00
aclocal.m4 Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
autogen.sh Resolves: bug 363168 2006-12-14 17:07:32 +00:00
compile Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
config.guess Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
config.h.in Resolves: bug 363168 2006-12-14 17:07:32 +00:00
config.sub Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
configure Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
configure.ac Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
depcomp Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
install-sh Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
ltmain.sh Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
missing Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00
svrcore.pc.in Resolves: bug 363168 2006-12-14 17:07:32 +00:00
svrcore.spec Make sure all copyrights/licenses are the mpl/gpl/lgpl tri-license 2007-03-13 15:39:58 +00:00

README

The Netscape svrcore library

Terry Hayes wrote the Netscape svrcore library in 1998.
Valerie Chu wrote the ntgetpin.c and related files.

svrcore used to contain two major parts.

The first part is what we released on mozilla.  It is a kind of
object-oriented package for handling PIN requests from NSS. The
idea was to provide a standard way for servers to allow PIN input
from a file or from the terminal.  There is also a PIN handler
that caches the PIN in memory after encrypting it with a key on
a device (such as a Fortezza card). This allowed a server to
restart without having to reenter the PIN. However since the PIN
is encrypted, a core dump would not expose it.  In addition,
removing the device would also make the PIN inaccessible.

The files are:

svrcore.h - API definition
alt.c - allows two possible PIN request methods to be used (say
        file and then terminal)
cache.c - caches the result from another PIN request method
errors.c - error text
file.c - reads the PIN from a specified file
ntgetpin.c - Windows version of a user prompt for PIN
ntgetpin.rc - Windows resource script for ntgetpin.c
ntresource.h - a generated include file used by ntgetpin.rc
key.ico - an icon used by ntgetpin.rc
logo.ico - an icon used by ntgetpin.rc
pin.c - functions to register a PIN request object with NSS
pk11.c - implementation of the encrypted in-memory caching
std.c - a "standard" PIN object that satisfies requests from a
        file or the terminal and allows caching if desired.
user.c - prompts the user for the PIN

Note: the pk11.c file (secure PIN store) is a pretty good example
of how to encrypt/decrypt with NSS.

There was a second component of svrcore that handled export policy
configuration.  It allowed patching of a single executable (single
program build) to create the export and domestic versions of a
server.  This code was discontinued after the export policy changes.

The LDAP C SDK tools use svrcore.  They also implemented their
own PIN object to allow command line PIN entry.  The directory
server also implemented its own PIN object to allow a watchdog
process to cache the PIN and restart the server.

See INSTALL for build instructions
See INSTALL.win for Windows build instructions