


  This is a patch to sasl 1.5.28 from 

    http://asg.web.cmu.edu/cyrus/

( now there are just too many people who have added thier bits but here
 are who I have ) 

Config and advancment and continuied input by  Scot W. Hetzel (scot@genroco.com)
Ldap filter patch by  by Kevin J. Menard (kmenard@wpi.edu)
Ldap alias patch Alexander Khokhlov <mailer@cbsd.donetsk.ua
Mysql patch by David Mattew Zenzian www.dmzs.com/~dmz (dmz@dmzs.com)
Ldap patch and maintainace by  Simon Loader www.surf.org.uk (simon@surf.org.uk)


Currently updateed and maintained sort of by
  Simon Loader simon@surf.org.uk

Also look at http://sourceforge.net/projects/cyrus-utils/

INSTALL
-------

untar cyrus-sasl source code
go into the source directory

patch -b -p1 < sasl_ldap_mysql.patch



autoheader
autoconf
automake -i  ( -i will make it compatible with bsd make etc. )

then configure with either (or both)
--with-ldap=/usr/local/lib
--with-mysql=/usr/local/lib
(or where ever your librarys are)

./configure --with-ldap --with-mysql
make
make install

Read sysadmin.html in docs for configuration
info.

Here is a synopsis :-

  mysql A MySQL database can be used for plaintext
  password checking by setting "pwcheck_method" to "mysql".

  The following SASL options are used for MySQL Authentication:

    mysql_user: <user>
    mysql_passwd: <cleartext pw>
    mysql_host: <hosts separated by ,>
    mysql_database: <database>
    mysql_table: <table>
    mysql_uidcol: <username col>
    mysql_pwdcol: <password col>

  MySQL pwcheck_method created by <a href="mailto:dmz@dmzs.com">David Matthew Zendzian</a>
  the original patch may be found at <a href="http://www.dmzs.com/~dmz/projects/cyrus/">http://www.dmzs.com/~dmz/projects/cyrus/</a>.

  ldap A LDAP server can be used for plaintext password
  checking by setting "pwcheck_method" to "ldap".

  The following SASL options are used for LDAP Authentication:

    ldap_server: <LDAP Servers separated by , [localhost]>
    ldap_basedn: <LDAP base dn>
    ldap_uidattr: <LDAP uid attribute [uid]>
    ldap_port: <LDAP port [389]>
    ldap_ssl: <yes/no/true/fasle> Use ssl (untested)
    ldap_filter_mode:  <yes/no/true/fasle> Use the filter below
    ldap_filter: <Additional search filter [(objectClass=posixAccount)]>
    ldap_bind_dn: <DN to bind with [NULL]>
    ldap_bind_pw: <Password for DN to bind with [NULL]>
    ldap_alias_deref: <n|s|f|a> n is default

  It is a requirement that "ldap_basedn" be set to the appropriate
  value for your site<br>
  (ex. ldap_basedn: o=surf, c=UK)

  ldap_alias_deref: n = LDAP_DEREF_NEVER<br>
                       s = LDAP_DEREF_SEARCHING<br>
                       f = LDAP_DEREF_FINDING<br>
                       a = LDAP_DEREF_ALWAYS<br>
   If you dont know what ldap alias is just leave this alone.<br>

  NULL values for ldap_dn and ldap_passwd mean do an anonymous bind
and search.

  LDAP pwcheck_method created by Simon@surf.org.uk
  the original patch may be found at http://www.surf.org.uk/

  Search and filter ability for LDAP was added by kmenard@wp.edu Kevin J. Menard, Jr.
       Ldap alias support by mailer@cbsd.donetsk.ua




TODO
----
NO LONGER SUPPORTED USE AUXPROPS FOR SASL v2
 well I just made a couple of mods so Im sort of lieing here



