Add mailbox automatically
Scott Russell
lnxgeek at us.ibm.com
Wed Jan 1 17:32:50 EST 2003
On Wed, Jan 01, 2003 at 05:16:12PM -0500, Kervin L. Pierre wrote:
> Just a thought,
>
> I am working on some PHP scripts to manage mailboxes and I have to use
> passthough calls to execute cyradm to add mailboxes.
>
> I'd like to avoid opening a shell from the web for security and
> performance reasons.
>
Here's a PHP function that I use to create user mailboxes with. It
could use some clean up but it works for us. Beware line wraps.
function imap_acct_create ($mailbox, $quota="") {
// creates user.$mailbox in cyrus 2.1.5
global $imap_error;
$imap = @imap_open("{localhost:143/imap/notls}", "cyrus", "passwd", OP_HALFOPEN);
if (!$imap) {
$imap_error = imap_last_error();
return FALSE;
}
// create the new top level mailbox
$ret = @imap_createmailbox($imap, "{localhost}user.".$mailbox);
if (!$ret) { $imap_error = imap_last_error();
@imap_close($imap);
return FALSE;
}
// if needed, set the account quota
if ($quota != "") {
$ret = @imap_set_quota($imap, "user.".$mailbox, $quota);
if (!$ret) { $imap_error = imap_last_error();
@imap_close($imap); return FALSE; }
}
@imap_close($imap);
// if we get here everything worked
return TRUE;
}
--
Scott Russell (lnxgeek at us.ibm.com)
Linux Technology Center, System Admin, RHCE.
Dial 877-735-8200 then ask for 919-543-9289 (TTY)
More information about the Info-cyrus
mailing list