newBackup: mysqldump timeout
New internal default:
which allows up to 4 hours for a mysqldump call before DA will send a SIGTERM to kill it. It was reported that corrupted tables can hang mysqldump, thus hanging the entire backup process.
You can disable the timeout by setting
./directadmin set database_dump_timeout 0
and no internal alterations to signal handlers and alarm timeouts will be made.
newSuspend in background
Optional new directadmin.conf value for suspending/unsuspending in the background, internal default:
this only applies to the "dosuspend" and "dounsuspend" triggers. It does not apply to the toggle "suspend" case which isn't used by Enhcaned/Evolution, as the toggle can swap opposite states on a per-User basis #confusing.
newMailing List save settings hook: mailing_list_save_post.sh
Hook script which can be used to take actions after list settings are saved. For example:
as this is a post-script, the exit code will have no effect on the save operation.
The env values passed will be the same tokens that are set in the template:
|NAME| will be set as "list-digest" if the list name was "list". |name| will be set as "list"
improvedSecond-Level TLDs to tld.list (TEMPLATES)
Added expanded list of second-level TLDs to the new template file:
co.uk co.za ... etc.
Could not add to
forbidden_domains.list, as that included subdomains for the block. This change simply blocks the creation of a second-level tld domain.
T34003 T34079 T34189
newupdate_channel: stable, current, beta, alpha (SKINS)
To allow for better choice in terms of which updates you get, and when, we're introducing a new directadmin.conf variable, default: update_channel=current
where "current" refers to the standard version used eveywhere:
/cgi-bin/daupdate to handle the other channels.
fixedCreate DB page: get Users for all DBs in single query
When creating a new DB, DA offers Users to create it using an existing account. All Users for all DBs under this User are listed. If there are many DBs, this can take time to get the list of Users for each DB.
This change makes one single call using a
LIKE username_% condition, allowing a much faster result list.
fixedDNS: Delete record: not affecting pointers
For User Level DNS Management and MX Records, there is an "Affect Pointers" option for adding/removing records. The "add" and "edit" options were correctly duplicating the records, but the deletion of records as not correctly affecting pointers, when indicated to do so.
fixedCall ./directadmin p from scripts/update.sh
Previously, the calling dataskq internally set permissions after updating DA. This change will move this call to the
update.sh, by calling
./directadmin p from the script using the new binary.
fixedtask.queue: rewrite mail_sni with domain clears configs
Bug introduced with this change
where, if the task.queue call for a mail_sni rewrite is used for just one domain, all sni configs are cleared and not re-added, eg:
echo 'action=rewrite&value=mail_sni&domain=domain.com' > /usr/local/directadmin/data/task.queue.cb; ./dataskq d1245 --custombuild
Workaround, rebuild all sni configs globally:
echo 'action=rewrite&value=mail_sni' > /usr/local/directadmin/data/task.queue.cb; ./dataskq d1245 --custombuild
Fix will just delete the sni config for this domain. The global (all domain) version is not affected.
fixedCreate Domain Pointer: inherit master dns zone
When creating a domain pointer, DirectAdmin will now check the existing option:
and if set to 1, it will duplicate all records from the master domain's dns zone for the pointer. The "left-side" values will be checked for endings of
master.com. and swpped with
The right-side values will not be affected. Logic being MX/CNAME/NS values can remain the same.
If the form is passed:
this will override the
fixedBlock php-settings for non-default fpm domains
There can only be 1
php-fpmXX.conf file per User (for a given php selection). This means that for multiple domains using the same conf file, they must all share the same settings. DirectAdmin only bases this conf file on the main/default domain on the account.
Previously, a non-default fpm domain was able to set the php settings, which had no effect. This change blocks GET/POST requests to the
CMD_PHP_SETTINGS call for a non-default domain if it's using php-fpm.
fixedNginx: protected directory: quote paths and values (TEMPLATES)
Related to the change to the internal "location" structure management from 1.62.0 documented here
preventing the use of the location
PROTECTED_PATH part of the
nginx_protected_directory.conf (it still uses the template, but only bits between
This change puts quotes around the location's value, eg:
location ~ "^(/protected)(/.*)?$$"
and the template will be changed to put quotes around the
fixedCMD_ADMIN_SSL: cache shows invalid during per-User rewrite
data/admin/certificates_cache.json was updated for just 1 User, it was processing all domains, rather than just the domains on the list. This was an unhandled state causing other User certs to become "invalid" in the GUI. This did not affect the actual cert's functionality, only a cosmetic confusion.
fixedauto_detect_filesystem_type for the dataskq
quota_partition value was not being detected correctly in
dataskq when relying on:
Eg: when /home is ext4
quota_partition=/home use_xfs_quota=1 auto_detect_filesystem_type=1
This should end up using ext4 for setting quotas, but xfs was used. The result is a backup could fail is the User's usage was too high and they didn't have enough quota space to create the tar.gz file.
if the quota_partition isn't using xfs.
fixedProtected Directories: /var/home/user breaks .htpasswd path
chroot vs no chroot deteremines how many slashes DA will look for in:
when determining the path:
Cases where the home is:
/var/home/user, this breaks, causing: