Version 1.26.3

Released: 2006-02-20

show "-- Select Package" in package dropdown for custom package new

If the user is set to "custom" (or a package that doesn't exist):

--Select Package

is added to the top of the packages list.

This should prevent confusion, as previously, the first package of the list would have been highlighted if the custom package was used causing admins to think that the first package in the list was being used when it wasnt.

dovecot convertor to handle wu-imap subdirectories new

Update the mbox to Mailbox convertor to handle mbox subdirectories.

Searches .mailboxlist for / charter.

If the entry, ends in /, it's ignored.

If it's somewhere in the middle, the mbox file is used with that path (the / will point to the dir/mbox .. even with multilevel levels of subdirectories).

Then the / is replaced with . for the new dir and the subscription list.

Also added header cheacking for "Status:" and "X-Status:" for the message status as "read/seen", "flagged", and "replied". This makes the conversion more seamless for users.

Timestatmps are also set now. Take from the "From" line, parsed and applied to the file.

Note, this convertor is still classfied as beta. The dovecot program itself has proven itself and is "stable", but the convertor will remain beta until the next relase (assuming no issues are found).

Ability to use images through DA for login.html new

Previously, all images for the login page had to be access through apache. This caused problems when SSL was used because the certificates didn't always match, preventing the images from loading.

Usage couldn't be more simple.

Placae your images in:


Create the login_images directory if it does not exist.

Make sure they're world readable (755)

You can access them from:*

filename checking is extremely strict.

length must be >= 3 and <= 20 chars.

Must contain exactly 1 period.

first and last characters must not be periods.

Only simple characters allowed: a-zA-Z0-9

Direct plugin access to connecting socket new

The usual method that plugins work, is for DA to run the plugin, take in all of the output until the plugin is done. With that output, insert it into a token and place it into a formatted skin page.

This new feature will allow a plugin to run without any of that overhead.

When the plugin outputs something via stdout, that data is immediately sent to the user's socket. No directadmin output it sent through the socket at all.

With this flexibility, comes the responsibility to send the correct headers as well.

The way to tell DA that you want to have full control over the socket, is to rename your script file with the extension ".raw", eg:


Sample script.raw:

echo "HTTP/1.1 200 OK";
echo "Content-Type: text/html";
echo "";
echo "hello world<br>";
sleep 1
echo "hello again<br>";
sleep 1
echo "and again<br>";
sleep 1
echo "and again<br>";
exit 0;

Quotas on a 2nd /home partition to be checked new

Add the option for DA to check a 2nd partition for system qutoas during the tally.

This will also setup the quota limits for users on these partitions as well.

The default is usually to check /home or /usr.

If an admin adds a 2nd drive, then currently, it will only check 1.

This feauture will allow multiple drives to work with quotas correctly, eg:




etc... all with quotas.

Default option is to have no option at all. The "directadmin c" will be "null".

The option will be:


to the directadmin.conf file, then restart DA. This can be a comma separated list for multiple partitions (no spaces). eg:


Do not use the value for quota_partition in ext_quota_partitions or else you'll have the main partition counted twice.

IMPORTANT if you are to add /var to this list, and /var is separate from your /home partition, you will need to tell DA not to manually count the /var email usage. You must do this by setting:


in your directadmin.conf file. option to disable/enable the counting of email disk usage

This feature is designed for extra home partitions more so than /var partitions, but should work anyway with /var.

email notification for ip\'s added to ip_blacklist file. new

DA will notify admins when an IP is added to the /usr/local/directadmin/data/admin/ip_blacklist file.

The directadmin program will add the following command to the task.queue file, and the dataskq will send the email:


Button to empty data from email inboxes. new

In the pop account list, there will be an "Empty" button with 3 radio boxes: inbox, imap folders, and spambox.

Selec the type you want to empty, click the "Empty" button and DA will delete the emails from that location.

"imap folders" will delete all data from your imap location, including all subfolders. (skips the spambox for maildir).

No skin changes required.

Email usage hover-over popup breakdown new

When you hover your mouse over one of the rows in the pop list, a "title" hover/popup will appear for a short period. This popup will provide information on what portions of the email account is using the most data.

Eg: in the talbe, there might be one cell that says:

17.139 / unlimited

When you hover your mouse over that cell, you'd get a poup that says:

Inbox: 0.65 KB Imap Folders: 17.1 MB Spambox: 0.00 KB

You can use this data along with this feature:

Button to empty data from email inboxes.

in order to strategically cleanup any portion of an account that is growing too large.

This popup will only appear if you do not have dovecot installed. This is for the old mbox format only. The reason for this is because of the way DA counts the email usage: With mbox, these 3 portions are counted separately, so it happens to have the data. With dovecot/Maildir, DA does not have the breakdown because all 3 aspects of accounts are under one directory which DA counts with 1 function call.

task.queue command to only reset previous months data new

In the case that the monthly reset did not run, an admin can run:

echo "action=cleanreset&value=all" >> /usr/local/directadmin/data/task.queue

in order to only remove the previous months data.

This will do a standard reset of bandwidth.tally files and user.usage files, but will not follow with a tally.

You'd need to run the "action=tally&value=all" command afterwards to recount the correct stats for Reseller Level and Admin Level counting.

ability to add your own email headers in welcome messages new

If you want to set a header in the welcome message, example:

Content-Type: text/plain; charset=windows-1251

You would add:

|?HEADER=Content-Type: text/plain; charset=windows-1251|

to your welcome message.

You only get 1 header.

Note: you can already add:


to the very top of your welcome message, to get DA to add:

MIME-Version: 1.0

Content-Type: text/html

to the email. If you use the |?HEADER=..| feature with <html>, the <html> feature will do a check in case you've already added the Content-Type or MIME-Version headers, so as to not overwrite them.

Also, no "creative" headers allowed. DA does strict character checking to make sure you headers are sane.

For international messages that need UTF-8 encoding, add this line:

|?HEADER=Content-Type: text/plain; charset=utf-8|

edit_files.txt in custom templates fixed

The templates/custom/edit_files.txt was not setup correctly.

Fixed so that you can use the custom instance of the file so as to prevent updates from overwriting the file you're using.

SpamAssassin 3: DA isn\'t reading required_score fixed

SA 3 uses required_score, older versions use required_hits.

DA used to write both fields, so the old one was read. Last release, the old field was removed if SA 3 was used, but the new field is not being read in correctly.

Email passwords using DES instead of MD5 fixed

Email passwords were using DES instead of MD5. This change will encode password with MD5 instead.

long passwords for API commands fixed

report that passwords longer than 21 characters don't work with API commands.

Problem was a security check that purposely didn't allow anything greater than 20 bytes.

Changed the hard limit to 40 bytes. (nobody would be able to remember a password that long anyway!)

This only applies to API commands that use the:

Authorization: Basic base64data

type logins. Standard DA login isn't affected.

Protecting a directory wipes previous .htaccess contents fixed

This isn't really a bug, but just how the .htaccess files were previously written for protecting a directory.

This "change" will allow other .htaccess data to remain intact an in order (above the protected dir lines).

Last Updated: