Home | History | Annotate | Download | only in libsasl
      1  0  stevel #
      2  0  stevel # Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
      3  0  stevel # Use is subject to license terms.
      4  0  stevel #
      5  0  stevel # ident	"%Z%%M%	%I%	%E% SMI"
      6  0  stevel #
      7  0  stevel # lib/libsasl/README
      8  0  stevel #
      9  0  stevel 
     10  0  stevel libsasl and its plugins is based on the Project Cyrus open source libsasl
     11  0  stevel 	http://asg.web.cmu.edu/sasl
     12  0  stevel 
     13  0  stevel Additionally, the SunONE consolidation maintains libsasl also based on
     14  0  stevel the Project Cyrus open source libsasl. Inevitibly, these code bases will
     15  0  stevel go their separate ways. In order to assist with resynchronization, some
     16  0  stevel conventions are used. The version of the Cyrus libsasl code base that
     17  0  stevel has most recently been synched with can be found in <sasl/sasl.h> -
     18  0  stevel <SASL_VERSION_MAJOR>.<SASL_VERSION_MINOR>.<SASL_VERSION_STEP>.
     19  0  stevel 
     20  0  stevel For changes that are particular to the Solaris code base, the
     21  0  stevel conditional _INTEGRATED_SOLARIS_ is used.  For other Sun generated
     22  0  stevel change from the Project Cyrus code base common to both SunONE and
     23  0  stevel Solaris, the conditional _SUN_SDK_ is used.  Both of these are defined
     24  0  stevel in include/config.h.  Additionally, the Cyrus code base is not cstyle or
     25  0  stevel lint-clean except where noted.
     26  0  stevel 
     27  0  stevel The public header files <sasl/sasl.h>, <sasl/saslplug.h>, <sasl/saslutil.h>
     28  0  stevel and <sasl/prop.h> are the exception. These are both hdrchk and cstyle clean
     29  0  stevel and do not use the above conditional lablels.
     30  0  stevel 
     31  0  stevel Any changes in this code base are additive. This will ease merging changes
     32  0  stevel to and from other code bases. One unfortunate side effect is that this
     33  0  stevel introduces many conditional compile blocks.
     34  0  stevel 
     35  0  stevel You will notice that there will be reference to other platforms that Solaris
     36  0  stevel in this code. This is due to the open source roots of the code. This is
     37  0  stevel also retained to ease merges.
     38  0  stevel 
     39  0  stevel For globalization, it should be noted that there are three classes of strings
     40  0  stevel that need to be i18n'ed. The first are the error strings returned by
     41  0  stevel sasl_errstring(), the second are the strings returned by sasl_errdetail(),
     42  0  stevel and third are the prompts returned to the client in sasl_interact_t or
     43  0  stevel in sasl_chalprompt_t. The error strings returned by sasl_errdetail() are
     44  0  stevel generated by calls to sasl_seterror() or the sasl_utils_t seterror().
     45  0  stevel It should be noted that libsasl requires better support from Solaris to
     46  0  stevel be able to support multiple different locales on different threads.
     47  0  stevel 
     48  0  stevel On the other hand, the logged messages should not be i18n'ed.
     49  0  stevel 
     50  0  stevel Note that some public functions in the Cyrus distribution are not included
     51  0  stevel in the Solaris libsasl API: sasl_mkchal(), sasl_randcreate(), sasl_randfree(),
     52  0  stevel sasl_randseed(), sasl_rand(), and sasl_churn(). These functions are used
     53  0  stevel in sasl_util_t as part of the SPI.
     54  0  stevel 
     55  0  stevel include/config.h was originally generated by autoconfiguration tools, but
     56  0  stevel has customized to contain both autoconfiguration information and additional
     57  0  stevel library specific defines such as _INTEGRATE_SOLARIS_ and _SUN_SDK_. 
     58