Issues with / RC1

Discussion in 'Developers' Forum' started by aaronr, Jan 4, 2009.

  1. aaronr

    aaronr New Member

    I'm running Ubuntu 8.10, running RC1 from installer, updated to latest SVN revision with update script.

    Now for a bunch of issues! :)

    1) When adding a client, if I let them access the Sites module, they can adjust their own bandwidth/disk space quota, even though they're not an admin. Is there any way to avoid this without making a custom version of the Sites module without the Domains menu item?
    Update: I've since realised it doesn't actually save changes made. Perhaps disabling the form fields when not an admin would cause less confusion?

    2) The DNS wizard allows users to add DNS zones beyond their quota.

    3) The top navigation tabs do not stay in the same order after altering the admin user.

    4) What's the difference between FTP quota and Web disk quota?

    5) Non admin users can edit their FTP quotas.

    6) Also, to log in, Safari requires the login button be clicked -- hitting enter after typing in the password doesn't work, it just returns you to a blank login dialog.

    7) The job queue periodically jams up -- jobs stack up, but none of them ever get actioned. Restarting the machine didn't clear things. Took a look in /var/log/ispconfig/cron.log and saw a whole stack of these:
    maildirmake: /var/vmail/unadopted.lan/aaron: No such file or directory
    chown: cannot access `/var/vmail/unadopted.lan/aaron': No such file or directory
    8) Port 143 is closed in the firewall by default, killing IMAP out of the box.
    Last edited: Jan 4, 2009
  2. croemmich

    croemmich New Member


    I also had the same problem with the maildirmake.

    I rewrote the function insert_user in

    This code seems to be working correctly on insert, I did also see mention of problems with moving a mailbox, I am investigating that also.

    Please note, I do not have any official part of this project, however, if admin's would like to use my code, please feel free.
    	function user_insert($event_name,$data) {
    		global $app, $conf;
    		// get the config
    		$mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
    		$maildomain_path = $data['new']['maildir'];
    		$tmp_basepath = $data['new']['maildir'];
    		$tmp_basepath_parts = explode('/',$tmp_basepath);
    		$base_path = implode('/',$tmp_basepath_parts);
    		// Create the mail domain directory, if it does not exist
    		if(!empty($base_path) && !is_dir($base_path)) {
    			exec("su -c 'mkdir -p ".escapeshellcmd($base_path)."' ".$mail_config['mailuser_name']);
    			$app->log('Created Directory: '.$base_path,LOGLEVEL_DEBUG);
    		// Create the maildir, if it doesn not exist, set permissions, set quota.
    		if(!empty($maildomain_path) && !is_dir($maildomain_path)) {
    			exec("su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']);
    			exec('chown -R '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir']));
    			$app->log("Set ownership on ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG);
    			exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); // Avoid quota bug
    			$app->log('Created Maildir: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG);

Share This Page