600, 'file' => __FILE__, 'line' => __LINE__, 'message' => "Password plugin: Unable to execute {$curdir}/chgvirtualminpasswd " . "or domain for mail-user '{$username}' not known to Virtualmin", ], true, false); return PASSWORD_ERROR; } $domain = escapeshellarg($domain); $newpass = escapeshellarg($newpass); exec("{$curdir}/chgvirtualminpasswd modify-user --domain {$domain} --user {$username} --pass {$newpass}", $output, $returnvalue); if ($returnvalue == 0) { return PASSWORD_SUCCESS; } rcube::raise_error([ 'code' => 600, 'file' => __FILE__, 'line' => __LINE__, 'message' => "Password plugin: Unable to execute {$curdir}/chgvirtualminpasswd", ], true, false); return PASSWORD_ERROR; } }