[sork] RE: Vpasswd+vpopmail+mysql many-domains enabled problem

phasma phasma at softhome.net
Mon Dec 8 12:56:13 PST 2003


Well,

I use passwd-2003-12-06.tar.gz snapshot. From passwd conf backend.php we
have:

$backends['vpopmail'] = array (
    'name' => 'vpopmail Authentication',
    'preferred' => '',
    'password policy' => array(
        'minLength' => 3,
        'maxLength' => 12,
        'maxSpace' => 0,
        'minUpper' => 0,
        'minLower' => 0,
        'minNumeric' => 0
    ),
    'driver' => 'vpopmail',
    'params' => array(
        'phptype'    => 'mysql',
        'hostspec'   => 'localhost',
        'username'   => '',
        'password'   => '',
        'encryption' => 'crypt',
        'database'   => 'vpopmail',
        'table'      => '',
        'name'    => 'pw_name',
        'domain'  => 'pw_domain',
        'passwd' =>  'pw_passwd',
        'clear_passwd' => 'pw_clear_passwd',
        'use_clear_passwd' => true,
    'show_encryption' => true
    )
);

The module connects to "vpopmail" db with "username" & "password",
reading/modifying "pw_name","pw_domain","pw_passwd" and "pw_clear_passwd"
fields in "vpopmail" table.

That's "vpopmail" table with vpopmail+mysql with many-domaind disable. All
user are stored in that table

Database: vpopmail
+-------------+
|   Tables    |
+-------------+
| dir_control |
| lastauth    |
| relay       |
| valias      |
| vlog        |
| vpopmail    |
+-------------+

Database: vpopmail  Table: vpopmail 
+-----------------+-----------+
| Field           | Type      |
+-----------------+-----------+
| pw_name         | char(32)  |
| pw_domain       | char(64)  |
| pw_passwd       | char(40)  |
| pw_uid          | int(11)   |
| pw_gid          | int(11)   |
| pw_gecos        | char(48)  |
| pw_dir          | char(160) |
| pw_shell        | char(20)  |
| pw_clear_passwd | char(16)  |
+-----------------+-----------+

With this configuration all work fine.

But enabling many-domains we have:

Database: vpopmail
+--------------------+
|       Tables       |
+--------------------+
| try1_org		   |
| dir_control        |
| lastauth           |
| try2_org   	   |
| try3_com		   |
| relay              |
| try4_net	         |
| valias             |
| vlog               |
| try5_org           |
+--------------------+

And

Database: vpopmail  Table: try1_org
+-----------------+-----------+
| Field           | Type      |
+-----------------+-----------+
| pw_name         | char(32)  |
| pw_passwd       | char(40)  |
| pw_uid          | int(11)   |
| pw_gid          | int(11)   |
| pw_gecos        | char(48)  |
| pw_dir          | char(160) |
| pw_shell        | char(20)  |
| pw_clear_passwd | char(16)  |
+-----------------+-----------+

As we can see, a table is created for each domain, and in that table we have
"pw_name" "pw_passwd" and "pw_clear_passwd".

I hope there's a way to define a var to retrive the right domain table and
check "pw_name" "pw_passwd" and "pw_clear_passwd" there.

Thanks in advance Eric.

P




More information about the sork mailing list