<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
  <name>Auth</name>
  <summary>Creating an authentication system.</summary>
  <description>The PEAR::Auth package provides methods for creating an authentication
system using PHP.

Currently it supports the following storage containers to read/write
the login data:

* All databases supported by the PEAR database layer
* All databases supported by the MDB database layer
* All databases supported by the MDB2 database layer
* Plaintext files
* LDAP servers
* POP3 servers
* IMAP servers
* vpopmail accounts
* RADIUS
* SAMBA password files
* SOAP</description>
  <maintainers>
    <maintainer>
      <user>MJ</user>
      <name>Martin Jansen</name>
      <email>mj@php.net</email>
      <role>lead</role>
    </maintainer>
    <maintainer>
      <user>jflemer</user>
      <name>James E. Flemer</name>
      <email>jflemer@acm.jhu.edu</email>
      <role>developer</role>
    </maintainer>
    <maintainer>
      <user>yavo</user>
      <name>Yavor Shahpasov</name>
      <email>yavo@siava.org</email>
      <role>lead</role>
    </maintainer>
  </maintainers>
  <release>
    <version>1.3.0r1</version>
    <date>2004-06-04</date>
    <license>PHP License</license>
    <state>beta</state>
    <notes>* Added an Auth_Controller class, to manage automatic redirection to login page and redirect back
  to the calling page [04/06/2004 - Yavo]
* Changes to LDAP container:
  - additional attribute fetching to authData via new option attributes
  - utf8 encoding username for ldapv3 (fixes german umlaut problem)
  - make scope definable for user and group searching seperately
  - remove useroc, groupoc and replace them with userfilter, groupfilter which is way more flexible
  - updated documentation on all new and changed parameters
  As some of the parameters changed this one is not backwards compatible to earlier versions.
  Look at the top of the class where all parameters are explained in detail.
  [08/April/2004 - jw]
* Added new MDB2 container  [30/March/2004 - quipo]
* Implements changePassword and CS fixed, patch from Cipriano Groenendal &lt;cipri@cipri.com&gt;
  [29/March/2004 - yavo]
* Added options for changing the post variables, patch supplied by Moritz Heidkamp &lt;moritz.heidkamp@invision-team.de&gt;
  [03/March/2004 - yavo]
* Added method setAdvancedSecurity and set advanced security to off by default, if turned on auth will perform additional
  security checks if ip or user agent has changed across requests
* Login is now performed only if showLogin is true, do not allow for logins to be performed from any page which calls auth-&gt;start
  spotted by Matt Eaton &lt;pear@divinehawk.com&gt; [16/Jan/2004 - yavo] 
* Fixed bug noted by Jeroen Houben &lt;jeroen@terena.nl&gt;, calling loginFailedCallback
  would not have the proper status set [16/Jan/2004 - yavo]
* Added PEAR container, authenticate the user against the pear web site
  (probably php.net also) [16/Dec/2003 - yavo]</notes>
    <deps>
      <dep type="pkg" rel="ge" version="0.9.5" optional="yes">File_Passwd</dep>
      <dep type="pkg" rel="ge" version="1.3" optional="yes">Net_POP3</dep>
      <dep type="pkg" rel="has" optional="yes">DB</dep>
      <dep type="pkg" rel="has" optional="yes">MDB</dep>
      <dep type="pkg" rel="has" optional="yes">MDB2</dep>
      <dep type="pkg" rel="has" optional="yes">Auth_RADIUS</dep>
      <dep type="pkg" rel="has" optional="yes">File_SMBPasswd</dep>
    </deps>
    <provides type="class" name="Auth" />
    <provides type="function" name="Auth::assignData" />
    <provides type="function" name="Auth::start" />
    <provides type="function" name="Auth::login" />
    <provides type="function" name="Auth::setExpire" />
    <provides type="function" name="Auth::setIdle" />
    <provides type="function" name="Auth::setSessionname" />
    <provides type="function" name="Auth::setShowLogin" />
    <provides type="function" name="Auth::setLoginCallback" />
    <provides type="function" name="Auth::setFailedLoginCallback" />
    <provides type="function" name="Auth::setLogoutCallback" />
    <provides type="function" name="Auth::setAuthData" />
    <provides type="function" name="Auth::getAuthData" />
    <provides type="function" name="Auth::setAuth" />
    <provides type="function" name="Auth::setAdvancedSecurity" />
    <provides type="function" name="Auth::checkAuth" />
    <provides type="function" name="Auth::getAuth" />
    <provides type="function" name="Auth::drawLogin" />
    <provides type="function" name="Auth::logout" />
    <provides type="function" name="Auth::updateIdle" />
    <provides type="function" name="Auth::getUsername" />
    <provides type="function" name="Auth::getStatus" />
    <provides type="function" name="Auth::sessionValidThru" />
    <provides type="function" name="Auth::listUsers" />
    <provides type="function" name="Auth::addUser" />
    <provides type="function" name="Auth::removeUser" />
    <provides type="function" name="Auth::changePassword" />
    <provides type="class" name="Auth_Controller" />
    <provides type="function" name="Auth_Controller::setAutoRedirectBack" />
    <provides type="function" name="Auth_Controller::redirectBack" />
    <provides type="class" name="Auth_Container" />
    <provides type="function" name="Auth_Container::fetchData" />
    <provides type="function" name="Auth_Container::verifyPassword" />
    <provides type="function" name="Auth_Container::listUsers" />
    <provides type="function" name="Auth_Container::getUser" />
    <provides type="function" name="Auth_Container::addUser" />
    <provides type="function" name="Auth_Container::removeUser" />
    <provides type="function" name="Auth_Container::changePassword" />
    <provides type="class" name="Auth_Container_DB" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_DB::query" />
    <provides type="function" name="Auth_Container_DB::fetchData" />
    <provides type="function" name="Auth_Container_DB::listUsers" />
    <provides type="function" name="Auth_Container_DB::addUser" />
    <provides type="function" name="Auth_Container_DB::removeUser" />
    <provides type="function" name="Auth_Container_DB::changePassword" />
    <provides type="class" name="Auth_Container_File" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_File::fetchData" />
    <provides type="function" name="Auth_Container_File::listUsers" />
    <provides type="function" name="Auth_Container_File::addUser" />
    <provides type="function" name="Auth_Container_File::removeUser" />
    <provides type="function" name="Auth_Container_File::changePassword" />
    <provides type="class" name="Auth_Container_IMAP" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_IMAP::fetchData" />
    <provides type="class" name="Auth_Container_POP3" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_POP3::fetchData" />
    <provides type="class" name="Auth_Container_LDAP" extends="Auth_Container" />
    <provides type="class" name="Auth_Container_MDB" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_MDB::query" />
    <provides type="function" name="Auth_Container_MDB::fetchData" />
    <provides type="function" name="Auth_Container_MDB::listUsers" />
    <provides type="function" name="Auth_Container_MDB::addUser" />
    <provides type="function" name="Auth_Container_MDB::removeUser" />
    <provides type="function" name="Auth_Container_MDB::changePassword" />
    <provides type="class" name="Auth_Container_MDB2" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_MDB2::query" />
    <provides type="function" name="Auth_Container_MDB2::fetchData" />
    <provides type="function" name="Auth_Container_MDB2::listUsers" />
    <provides type="function" name="Auth_Container_MDB2::addUser" />
    <provides type="function" name="Auth_Container_MDB2::removeUser" />
    <provides type="function" name="Auth_Container_MDB2::changePassword" />
    <provides type="class" name="Auth_Container_RADIUS" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_RADIUS::fetchData" />
    <provides type="class" name="Auth_Container_SMBPasswd" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_SMBPasswd::fetchData" />
    <provides type="function" name="Auth_Container_SMBPasswd::listUsers" />
    <provides type="function" name="Auth_Container_SMBPasswd::addUser" />
    <provides type="function" name="Auth_Container_SMBPasswd::removeUser" />
    <provides type="function" name="Auth_Container_SMBPasswd::changePassword" />
    <provides type="class" name="Auth_Container_SOAP" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_SOAP::fetchData" />
    <provides type="class" name="Auth_Container_vpopmail" extends="Auth_Container" />
    <provides type="function" name="Auth_Container_vpopmail::fetchData" />
    <provides type="class" name="Auth_Container_Pear" />
    <provides type="function" name="Auth_Container_Pear::fetchData" />
    <filelist>
      <file role="php" baseinstalldir="" name="Auth.php">
        <replace from="@version@" to="version" type="package-info"/>
      </file>
      <file role="php" baseinstalldir="" name="Auth\Auth.php"/>
      <file role="php" baseinstalldir="" name="Auth\Controller.php"/>
      <file role="php" baseinstalldir="Auth" name="Container.php"/>
      <file role="doc" baseinstalldir="Auth" name="README.Auth"/>
      <file role="php" baseinstalldir="Auth" name="Container\DB.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\File.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\IMAP.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\POP3.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\LDAP.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\MDB.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\MDB2.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\RADIUS.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\SMBPasswd.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\SOAP.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\vpopmail.php"/>
      <file role="php" baseinstalldir="Auth" name="Container\PEAR.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_db_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\DBContainer.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_file_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\FileContainer.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_pop3_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_mdb_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\MDBContainer.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_mdb2_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\MDB2Container.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\POP3Container.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\auth_container_pop3a_options.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\POP3aContainer.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\TestAuthContainer.php"/>
      <file role="test" baseinstalldir="Auth" name="tests\users"/>
      <file role="test" baseinstalldir="Auth" name="tests\tests.php"/>
    </filelist>
  </release>
  <changelog>
    <release>
      <version>1.2.3</version>
      <date>2003-09-08</date>
      <license>PHP License</license>
      <state>stable</state>
      <notes>* new Method to auth_container getUser()
* New Auth_Container_File, using new File_Passwd class. Provided by Michael Wallner &lt;mike@php.net&gt;
* Login/Logout callbacks now get a reference to auth
* New Login Failed Callback added (method setFailedLoginCallback)
* SOAP container patch to keep a reference to the Soap responce by Bruno Pedro &lt;bpedro@co.sapo.pt&gt;
* Auth is now installed in /pear-dir/Auth.php instead of /pear-dir/Auth/Auth.php, an
  empty file /pear-dev/Auth/Auth.php wich includes Auth.php is added for BC
* The contaner now gets a reference to the auth object ($auth-&gt;storage-&gt;_auth_obj)
*Some patches from the pear-dev list bellow
    -maka3d@yahoo.com.br - Patch to use a method of the container in Auth_Container::verifyPassword
    -Lorenzo Alberton &lt;l.alberton@quipo.it&gt; - Patch to use variable session variable name, untill now the variable auth was used
    -Marcos Neves &lt;maka3d@yahoo.com.br&gt; - Avaoid error when calling getAuthData() before the login

</notes>
    </release>
    <release>
      <version>1.2.2</version>
      <date>2003-07-29</date>
      <license>PHP License</license>
      <state>stable</state>
      <notes>* Added support for passing contaner as an object
* Added fix when db_fileds is *
* Added Test Suite (experimental)
* Added generic support for arbitrary password crypting functions
  different than MD5, DES and plain text. (Patch by Tom Anderson)
* Added new MDB storage container written by Lorenzo Alberton
* Added new Container for SAMBA password files (SMBPasswd)

</notes>
    </release>
  </changelog>
</package>
