diff options
| author | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2012-03-31 12:25:48 +0000 |
|---|---|---|
| committer | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2012-03-31 12:25:48 +0000 |
| commit | e6d8f97bf2e0bbb4d95df0c4e030eb7ec6ef75a5 (patch) | |
| tree | 4f6fdadb51cbe1a2bb3b2b06c9bcabb0429d1a84 /plugins/password/drivers/virtualmin.php | |
| parent | 868c169e2a64c1d19a9b6bbcd98f268808dfd173 (diff) | |
Move plugins repository into roundcubemail root folder; svn:externals are not defined anymore
git-svn-id: https://svn.roundcube.net/trunk@6034 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/password/drivers/virtualmin.php')
| -rw-r--r-- | plugins/password/drivers/virtualmin.php | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/plugins/password/drivers/virtualmin.php b/plugins/password/drivers/virtualmin.php deleted file mode 100644 index b2547e07f..000000000 --- a/plugins/password/drivers/virtualmin.php +++ /dev/null @@ -1,76 +0,0 @@ -<?php - -/** - * Virtualmin Password Driver - * - * Driver that adds functionality to change the users Virtualmin password. - * The code is derrived from the Squirrelmail "Change Cyrus/SASL Password" Plugin - * by Thomas Bruederli. - * - * It only works with virtualmin on the same host where Roundcube runs - * and requires shell access and gcc in order to compile the binary. - * - * @version 3.0 - * @author Martijn de Munnik - */ - -class rcube_virtualmin_password -{ - function save($currpass, $newpass) - { - $rcmail = rcmail::get_instance(); - - $format = $rcmail->config->get('password_virtualmin_format', 0); - $username = $_SESSION['username']; - - switch ($format) { - case 1: // username%domain - $domain = substr(strrchr($username, "%"), 1); - break; - case 2: // username.domain (could be bogus) - $pieces = explode(".", $username); - $domain = $pieces[count($pieces)-2]. "." . end($pieces); - break; - case 3: // domain.username (could be bogus) - $pieces = explode(".", $username); - $domain = $pieces[0]. "." . $pieces[1]; - break; - case 4: // username-domain - $domain = substr(strrchr($username, "-"), 1); - break; - case 5: // domain-username - $domain = str_replace(strrchr($username, "-"), "", $username); - break; - case 6: // username_domain - $domain = substr(strrchr($username, "_"), 1); - break; - case 7: // domain_username - $pieces = explode("_", $username); - $domain = $pieces[0]; - break; - default: // username@domain - $domain = substr(strrchr($username, "@"), 1); - } - - $username = escapeshellcmd($username); - $domain = escapeshellcmd($domain); - $newpass = escapeshellcmd($newpass); - $curdir = INSTALL_PATH . 'plugins/password/helpers'; - - exec("$curdir/chgvirtualminpasswd modify-user --domain $domain --user $username --pass $newpass", $output, $returnvalue); - - if ($returnvalue == 0) { - return PASSWORD_SUCCESS; - } - else { - raise_error(array( - 'code' => 600, - 'type' => 'php', - 'file' => __FILE__, 'line' => __LINE__, - 'message' => "Password plugin: Unable to execute $curdir/chgvirtualminpasswd" - ), true, false); - } - - return PASSWORD_ERROR; - } -} |
