openafs/src/shlibafsauthent
Jeffrey Altman 65bf7cdb6d windows-code-signing-20080702
LICENSE MIT

Add code signing with signtool.exe to the build process.
If all three of the required CODESIGN_xxxx environment
variables are defined, signtool will be used to sign each
exe, dll, and installer as they are built.

The three environment variables are:

  CODESIGN_DESC = <description of application>
  CODESIGN_TIMESTAMP = <url of certificate authority timestamp server>
  CODESIGN_URL = <end user help URL>

The default signing certificate is the one that will be used by
signtool.  If these environment variables are not defined, code
signing will be skipped.
2008-07-02 13:41:07 +00:00
..
.cvsignore shlib-overhaul-20060802 2006-08-02 22:54:51 +00:00
afsauthent.def windows-library-cleanup-20060702 2006-07-03 02:00:51 +00:00
afsauthent.rc windows-file-versioning-20030619 2003-06-19 20:00:31 +00:00
libafsauthent.exp shlib-overhaul-20060802 2006-08-02 22:54:51 +00:00
libafsauthent.map shlib-overhaul-20060802 2006-08-02 22:54:51 +00:00
Makefile.in shlibafsauthent-linking-20060804 2006-08-04 18:58:46 +00:00
NTMakefile windows-code-signing-20080702 2008-07-02 13:41:07 +00:00
README shared-libafsrpc-and-libafsauthent-20020828 2002-08-28 07:05:43 +00:00

Copyright 2000, International Business Machines Corporation and others.
All Rights Reserved.

This software has been released under the terms of the IBM Public
License.  For details, see the LICENSE file in the top-level source
directory or online at http://www.openafs.org/dl/license10.html

This library is to be used by multithreaded programs that need to access
the kauth and auth library interfaces.  The primary method used to obtain
thread safety in these libraries is to lock/unlock a recursive global
mutex at the entry point of every public function in the library.

However, not all public functions are made thread safe since not all 
functions are needed by the NT admin work.  In particular, there are
many public functions that make up decendants of the functions
we wish to use that weren't modified, since these functions will be 
protected by the locking at a higher level function.

To prevent people from using non-thread safe functions, platform 
specific methods are used to limit the functions exported by the 
library (using def files under NT and mapfiles under Solaris).  For 
most non-exported functions, it should be trivial to make the 
transformation to thread safe by simply locking/ unlocking the 
global mutex at the beginning/end of the function.