ISPConfig 3 issueshttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues2021-11-24T20:50:59Zhttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6256placeholders not always handeld with cron-jobs2021-11-24T20:50:59ZFlorian Schaalplaceholders not always handeld with cron-jobsSee https://www.howtoforge.com/community/threads/cron-for-one-site-not-running.88003/#post-429555
fix cron_plugin.inc.php:
1. add `web_folder` to $parent_domain in line 95
<code>
$parent_domain = $app->db->queryOneRecord("SELECT `domain...See https://www.howtoforge.com/community/threads/cron-for-one-site-not-running.88003/#post-429555
fix cron_plugin.inc.php:
1. add `web_folder` to $parent_domain in line 95
<code>
$parent_domain = $app->db->queryOneRecord("SELECT `domain_id`, `system_user`, `system_group`, `document_root`, `hd_quota`, `web_folder` FROM `web_domain` WHERE `domain_id` = ?", $data["new"]["parent_domain_id"]);
</code>
2. replace (line 251+)
<code>
$web_root = '';
if($job['type'] == 'chrooted') {
if(substr($job['command'], 0, strlen($this->parent_domain['document_root'])) == $this->parent_domain['document_root']) {
//* delete the unneeded path part
$job['command'] = substr($job['command'], strlen($this->parent_domain['document_root']));
}
} else {
$web_root = $this->parent_domain['document_root'];
}
</code>
with
<code>
$web_folder = ($this->parent_domain['web_folder'] != '') ? $this->parent_domain['web_folder'] : 'web';
if($job['type'] == 'chrooted') {
if(substr($job['command'], 0, strlen($this->parent_domain['document_root'])) == $this->parent_domain['document_root']) {
//* delete the unneeded path part
$job['command'] = substr($job['command'], strlen($this->parent_domain['document_root']));
} else {
$web_root = '/'.$web_folder;
}
} else {
$web_root = $this->parent_domain['document_root'] . '/' . $web_folder;
}
</code>https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6259subroot not working with chrooted php-fpm2022-02-17T08:29:46ZBartłomiej Bujaksubroot not working with chrooted php-fpm<!-- Before creating a bug report, please:
- Read the contribution guidelines: https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/CONTRIBUTING.md
- Do not ask support questions here. If you are unsure if your problem is a bug,...<!-- Before creating a bug report, please:
- Read the contribution guidelines: https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/CONTRIBUTING.md
- Do not ask support questions here. If you are unsure if your problem is a bug, post a thread on the forum: https://www.howtoforge.com/community/#ispconfig-3.23
- Make sure to remove any content from the description that you did not add. For example, if there are no related log entries, remove the whole "Related log entries" part.
-->
## Summary
<!-- What is happening and what is wrong with that? -->
## Steps to reproduce
1. use subroot in snippet
2. enable chroot for php-fpm
## Correct behaviour
Chrooted php-fpm should work with subroot
## Environment
ISPConfig version: 3.2.7p1, not related with OS
## Proposed fix
nothing yet
## References
[https://git.ispconfig.org/ispconfig/ispconfig3/-/merge_requests/698](https://git.ispconfig.org/ispconfig/ispconfig3/-/merge_requests/698)https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6267Changing a website from the alias domain to the other leaves duplicate entries2022-02-28T16:02:56ZWHOChanging a website from the alias domain to the other leaves duplicate entries## Summary
alias domain can refer to the same website domain
## Steps to reproduce
Alias domain points from domain to own domain.
Given configuration (so far also correct): Website domain: domain.de Alias domain: test.de (test.de...## Summary
alias domain can refer to the same website domain
## Steps to reproduce
Alias domain points from domain to own domain.
Given configuration (so far also correct): Website domain: domain.de Alias domain: test.de (test.de is alias of domain.de)
The customer can do this by following the steps below: Edit websites and change the domain from domain.de to test.de.
The result of the change is then that an alias domain can refer to the same domain.
## Correct behaviour
change should not be possible because domain is no longer unique
## Environment
Server OS + version: Debian 10 ISPConfig version: 3.2.7p1 Software version of the related software:
```
Server version: Apache/2.4.38 (Debian)
Server built: 2021-12-21T16:50:43
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6271Allow Zone transfert and Also notify field not working with powerDNS2021-12-24T23:32:57ZCédricAllow Zone transfert and Also notify field not working with powerDNSHello there,
According to the powerDNS documentation (https://doc.powerdns.com/authoritative/domainmetadata.html) , we should be able to set AXFR / notify for each domain via the table powerdns.metadata
![2021-12-23_11_05_20-ISPConfig]...Hello there,
According to the powerDNS documentation (https://doc.powerdns.com/authoritative/domainmetadata.html) , we should be able to set AXFR / notify for each domain via the table powerdns.metadata
![2021-12-23_11_05_20-ISPConfig](/uploads/5d277c27ca2c0befa22c3b547fb0c5df/2021-12-23_11_05_20-ISPConfig.png)
As you can see field are present in ISPConfig but when I'm looking the content of the powerdns plugin there is nothing to store those two fields in the appropriate table.
https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/server/plugins-available/powerdns_plugin.inc.phphttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6272Rewriterule with docroot on Redirect2022-01-07T11:49:35ZWHORewriterule with docroot on Redirect## Summary
If used /dev as an redirect target on websites, subdomains, aliasdomain, etc., it produces an error 403, caused by using a directoryname existing in /. The docroot is not used first.
## Steps to reproduce
1. Add /dev on redi...## Summary
If used /dev as an redirect target on websites, subdomains, aliasdomain, etc., it produces an error 403, caused by using a directoryname existing in /. The docroot is not used first.
## Steps to reproduce
1. Add /dev on redirect with no_flag
2. Call the site
## Correct behaviour
Get the contents of docroot/dev upon calling the site.
## Proposed fix
Changing the RewriteRule in vhost.conf.master
from:
```
RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'><tmpl_if name="rewrite_add_path" op="==" value="y">$1</tmpl_if> <tmpl_var name='rewrite_type'>
```
to:
```
RewriteRule ^/(.*)$ %{DOCUMENT_ROOT}<tmpl_var name='rewrite_target'><tmpl_if name="rewrite_add_path" op="==" value="y">$1</tmpl_if> <tmpl_var name='rewrite_type'>
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6273_getinitcommand init script symlinks broken2022-12-05T17:01:51ZChristian_getinitcommand init script symlinks brokenon my gentoo system i'm using symlinks for php-fpm init scripts.
```
/etc/init.d/php-fpm-php7.4 -> /etc/init.d/php-fpm
/etc/init.d/php-fpm-php7.3 -> /etc/init.d/php-fpm
```
```
file system.inc.php
function _getinitcommand
$full_init_scr...on my gentoo system i'm using symlinks for php-fpm init scripts.
```
/etc/init.d/php-fpm-php7.4 -> /etc/init.d/php-fpm
/etc/init.d/php-fpm-php7.3 -> /etc/init.d/php-fpm
```
```
file system.inc.php
function _getinitcommand
$full_init_script_path = realpath($init_script_directory.'/'.$servicename);
```
realpath() changes /etc/init.d/php-fpm-php7.4 to /etc/init.d/php-fpm which breaks reload and restart commands.
why is realpath() there? can this be adjusted in any way?
my workaround so far:
```
if(is_link($init_script_directory.'/'.$servicename)) {
$full_init_script_path = $init_script_directory.'/'.$servicename;
}
else {
$full_init_script_path = realpath($init_script_directory.'/'.$servicename);
}
```https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6282Mariadb ENUM default not used2022-03-07T15:46:17ZHelmoMariadb ENUM default not usedI have a weird case of default values gone bad.
A client creates sites via the ispconfig API but when later enables php for the site via the ispconfig webinterface the php fpm server fails to restart.
```
systemd[1]: Starting The PHP 7...I have a weird case of default values gone bad.
A client creates sites via the ispconfig API but when later enables php for the site via the ispconfig webinterface the php fpm server fails to restart.
```
systemd[1]: Starting The PHP 7.4 FastCGI Process Manager...
php-fpm7.4[1047134]: ERROR: [/etc/php/7.4/fpm/pool.d/web35.conf:9] unable to parse value for entry 'pm': invalid process manager (static, dynamic or ondemand)
php-fpm7.4[1047134]: ERROR: Unable to include /etc/php/7.4/fpm/pool.d/web35.conf from /etc/php/7.4/fpm/php-fpm.conf at line 9
php-fpm7.4[1047134]: ERROR: failed to load configuration file '/etc/php/7.4/fpm/php-fpm.conf'
php-fpm7.4[1047134]: ERROR: FPM initialization failed
```
The `pm` options is empty so php-fpm is right to fail. But in the database the field is also empty which should be impossible ...
The column is defined as:
```
`pm` enum('static','dynamic','ondemand') NOT NULL DEFAULT 'ondemand',
```
This server is running Debian 11 with MariaDB 10.5.12-0+deb11u1 (Confirmed also on Debian 10 with MariaDB 10.3.31-0+deb10u1)
```sql
CREATE TABLE `enum_test` (
`domain_id` int(11) UNSIGNED NOT NULL,
`pm` enum('static','dynamic','ondemand') NOT NULL DEFAULT 'ondemand'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
INSERT INTO `enum_test` (`domain_id`, `pm`) VALUES ('1', '');
SELECT * FROM `enum_test`;
```
The select above will show an empty value for `pm`.
On MySQL 8.0.27-0ubuntu0.20.04.1 the insert query gives an error (as it should).
`ERROR 1265 (01000): Data truncated for column 'pm' at row 1`
I'm not the first to run into this ... https://stackoverflow.com/questions/63392899/how-to-make-mariadb-produce-an-error-if-value-not-specified-on-not-null-enum-col
And more details on https://mariadb.com/kb/en/enum/
The solution to getting an error is setting the Mysql config option sql-mode to include `STRICT_ALL_TABLES`.
But that does not solve my issue with the API client. Unfortunately I do not have access to the client's source as it's compiled/obfuscated :disappointed: by https://www.hostfact.nl/ But as it's an optional field I cannot blame them for leaving it out.
The patch below seems to solve it. It calls 'default(`pm`)' to let the mysql daemon figure out the default value.
```patch
diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php
index cfaf0958d..78848bdfc 100644
--- a/interface/lib/classes/tform_base.inc.php
+++ b/interface/lib/classes/tform_base.inc.php
@@ -1388,6 +1388,17 @@ class tform_base {
} else {
$sql_insert_val .= "'".$record[$key]."', ";
}
+ } elseif ($field['formtype'] == 'SELECT') {
+ $sql_insert_key .= "`$key`, ";
+ if (is_null($record[$key])) {
+ $sql_insert_val .= 'NULL';
+ } elseif ($record[$key] === '') {
+ $sql_insert_val .= "default(`$key`)";
+ }
+ else {
+ $sql_insert_val .= "'".$record[$key]."'";
+ }
+ $sql_insert_val .= ", ";
} else {
$sql_insert_key .= "`$key`, ";
$sql_insert_val .= (is_null($record[$key]) ? 'NULL' : "'".$record[$key]."'") . ", ";
```
Reproducing the API call can be done with [our demo code](https://git.ispconfig.org/ispconfig/ispconfig3/-/blob/develop/remoting_client/examples/sites_web_domain_add.php) by commenting the pm value on line 56 and changing line to `'php' => 'n'`HelmoHelmohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6291changing owner website from reseller to client gives site on 2 places2024-02-01T15:36:54ZSteffan Noordchanging owner website from reseller to client gives site on 2 placesWhen i cange a website owner from a reseller to a new client the website is visable to the new client, but also stays in the reseller controlpanel.
When looking in the database i see that sys_userid is not changed to the new client
When...When i cange a website owner from a reseller to a new client the website is visable to the new client, but also stays in the reseller controlpanel.
When looking in the database i see that sys_userid is not changed to the new client
When i change sys_userid one number higher then sys_groupid everything is fine again.3.2.12https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6303Website backup with password encryption failure2022-03-17T23:03:21ZTill BrehmWebsite backup with password encryption failureThere seems to be an issue with some special chars in website backup password protection which cause backups to fail.
https://www.howtoforge.com/community/threads/website-backup-not-working.88518/#post-433755There seems to be an issue with some special chars in website backup password protection which cause backups to fail.
https://www.howtoforge.com/community/threads/website-backup-not-working.88518/#post-433755https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6315move E-Mail to Junk in Panel does not work2022-12-19T16:30:38ZSebastianmove E-Mail to Junk in Panel does not work
## Summary
<!-- What is happening and what is wrong with that? -->
When selecting something in the dropdown on ISPConfig Panel "email / email account / email filter / move spam to junk folder"
following happens:
Panel-tab gets refresh...
## Summary
<!-- What is happening and what is wrong with that? -->
When selecting something in the dropdown on ISPConfig Panel "email / email account / email filter / move spam to junk folder"
following happens:
Panel-tab gets refreshed when selecting another "move spam to junk folder" option.
Using firefox inspector, it states "tab change interrupted, request still running".
## Steps to reproduce
1. Go on the Panel
2. click E-Mail
3. click E-Mail Account
4. Select Tab: E-Mail filter
5. Select the "move spam to junk folder" and chose any other option
## Correct behaviour
<!-- What should happen instead? -->
It should select another option instead of refreshing the tab.
## Environment
Server OS + version: Debian 11.2 \
ISPConfig version: 3.2.7p1
<!-- _you can use `grep 'ISPC_APP_VERSION' /usr/local/ispconfig/server/lib/config.inc.php` to get it from the command line_ -->
Software version of the related software:
<!-- You can use 'nginx -v' or 'apachectl -v' to find the webserver version. Use 'php -v' to find the PHP version.> Put this in code blocks, like so: -->
```
nginx version: nginx/1.18.0
PHP 7.4.28 (cli) (built: Feb 17 2022 16:17:19) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.28, Copyright (c), by Zend Technologies
```
## Proposed fix
at /usr/local/ispconfig/interface/web/mail/templates/mail_user_filter_list.htm
remove this onclick attribut
```
onclick="return ISPConfig.changeTab('filter_records','mail/mail_user_edit.php');"
```
## References
https://www.howtoforge.com/community/threads/changing-move-e-mail-to-junk-folder-in-gui-doesnt-work.88635/page-2https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6318Module name not translatable in ISPConfig user settings2022-03-25T17:20:44ZTill BrehmModule name not translatable in ISPConfig user settingsModule name not translatable in ISPConfig user settingsModule name not translatable in ISPConfig user settingshttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6327Failed datalog jobs are "successful" if another unrelated job succeeds2022-04-24T19:41:16ZWebsliceFailed datalog jobs are "successful" if another unrelated job succeedsAccording to the function datalogStatus(), the pending datalog jobs query is:
```
SELECT COUNT( * ) AS cnt, sys_datalog.action, sys_datalog.dbtable FROM sys_datalog, server WHERE server.server_id = sys_datalog.server_id AND sys_datalog....According to the function datalogStatus(), the pending datalog jobs query is:
```
SELECT COUNT( * ) AS cnt, sys_datalog.action, sys_datalog.dbtable FROM sys_datalog, server WHERE server.server_id = sys_datalog.server_id AND sys_datalog.user = ? AND sys_datalog.datalog_id > server.updated GROUP BY sys_datalog.dbtable, sys_datalog.action
```
If I intentionally let 5 jobs crash on a slave node, and then submit a completely unrelated different job successfully, the server.updated field is updated and the 5 crashed jobs are "successful".
Would it be feasible to have the datalog remember for each individual job, whether it was successful or not? So we can retry failed jobs?https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6339Issue on managing aliases in a multiserver environment2022-12-05T17:02:25ZLorenzo ValoriIssue on managing aliases in a multiserver environment## Summary
If you change the parent domain on an alias with another site hosted on a different server than the initial one, the configuration will be correctly done on the new server but the alias will not be removed from the old server
...## Summary
If you change the parent domain on an alias with another site hosted on a different server than the initial one, the configuration will be correctly done on the new server but the alias will not be removed from the old server
## Steps to reproduce
1. create a website alias (e.g. dev.example.com) and assign it to a site hosted on server A (e.g. example.com)
2. enter in the alias you just created (dev.example.com) and change the assignment to another site hosted on server B (e.g. example.it)
3. now dev.example.com will be correctly configured on server B but will not be removed from the vhost on server A example.com, it will still result in the apache configuration and the a DB record on server A will also remain
## Correct behaviour
The alias configuration should be completely removed from server A and carried over to server B
## Environment
Server OS + version: Ubuntu 18.04.6 LTS
ISPConfig version: 3.2.8p1https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6348Apps Vhost blocked from using PHP after saving changes in ISPConfig2022-05-28T09:07:50ZAlex JohnsonApps Vhost blocked from using PHP after saving changes in ISPConfig## Summary
File in question: /etc/apache2/sites-enabled/000-apps.vhost
Apps.vhost is modified after saving on a fresh ISPConfig system as below, removing the ability to use PHP apps (phpmyadmin, etc) after the save.
Saving changes und...## Summary
File in question: /etc/apache2/sites-enabled/000-apps.vhost
Apps.vhost is modified after saving on a fresh ISPConfig system as below, removing the ability to use PHP apps (phpmyadmin, etc) after the save.
Saving changes under System Server Config > Server Name > Web > Apps VHost causes ISPConfig to pull from the conf master file. This file is not the same as a fresh installed ISPConfig.
Occurs on both Debian and Ubuntu systems, installed using: https://www.howtoforge.com/ispconfig-autoinstall-debian-ubuntu/
## Steps to reproduce
Active File: /etc/apache2/sites-enabled/000-apps.vhost
On the fresh install, without touching ISPConfig yet, the apps vhost has the following under ServerAdmin line (around line 9):
<Directory /var/www/apps>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler None
</FilesMatch>
</Directory>
Inactive File: /usr/local/ispconfig/server/conf-custom/apache_apps.vhost.master
Conf directory apps vhost, same location as above:
<FilesMatch "\.ph(p3?|tml)$">
SetHandler None
</FilesMatch>
Without the directory line in there, all PHP is disabled.
## Correct behaviour
The conf directory file should contain the directory statements in /usr/local/ispconfig/server/conf-custom/apache_apps.vhost.master
## Environment
Many OS & versions, effects any server I install using this tutorial: https://www.howtoforge.com/ispconfig-autoinstall-debian-ubuntu/
## Proposed fix
Correct conf directory file as listed abovehttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6351Website redirect target with hashtag #2022-06-17T11:16:27ZJulianWebsite redirect target with hashtag #If the redirect target contains a hashtag, the rewrite option NE is required else the hashtag gets url encoded.
does not work:
![grafik](/uploads/681b5443a245e770527f21d5327145d1/grafik.png)
works:
![grafik](/uploads/058501190375edc0...If the redirect target contains a hashtag, the rewrite option NE is required else the hashtag gets url encoded.
does not work:
![grafik](/uploads/681b5443a245e770527f21d5327145d1/grafik.png)
works:
![grafik](/uploads/058501190375edc038f8a062bde2fb38/grafik.png)https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6352CentOS 8 / Almalinux 8 mailman - unkonwn user in virtual mailbox table + mail...2022-06-17T09:21:08ZPacoCentOS 8 / Almalinux 8 mailman - unkonwn user in virtual mailbox table + mailman.conf for httpdI post that issue here, firstly posted in forum:
https://www.howtoforge.com/community/threads/centos-8-almalinux-8-mailman-unkonwn-user-in-virtual-mailbox-table.89076/
I found a solution and post it on forum and I'll be happy if you im...I post that issue here, firstly posted in forum:
https://www.howtoforge.com/community/threads/centos-8-almalinux-8-mailman-unkonwn-user-in-virtual-mailbox-table.89076/
I found a solution and post it on forum and I'll be happy if you implement that in next version of ispconfig and update centos 8 and/or create a new perfect server tutorial for AlmaLinux 8.PacoPacohttps://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6354Rewrite to HTTPs doesn't work for aliasdomains (Apache)2022-12-05T17:01:26ZDominikRewrite to HTTPs doesn't work for aliasdomains (Apache)
## Summary
Rewrite HTTP to HTTPS doesn't work for aliasdomains with own redirect rules (e.g. subdirectory) in Apache
## Steps to reproduce
1. Setup a website and an aliasdomain for it
2. Set this aliasdomain redirecting to any subdirec...
## Summary
Rewrite HTTP to HTTPS doesn't work for aliasdomains with own redirect rules (e.g. subdirectory) in Apache
## Steps to reproduce
1. Setup a website and an aliasdomain for it
2. Set this aliasdomain redirecting to any subdirectory via Redirect Path...
3. Enable Rewrite HTTP to HTTPS for this website
If you open the website itself in the browser, the rediret to https works for the website itself. If you open the aliasdomain, the redirect doesn't work and stays with http.
## Correct behaviour
redirect should also work for the aliasdomain
## Suggestions
either we should add a corresponding checkbox to all alias and subdomains, to make it possible to enable https-rewrite for all domains, or we can move the https-rewrite-rule in vhost-config to the top, that it is called as the first one.
for sure both solutions mean impact - in the latter case also redirects to external URLs would be translated to https before redirected, which might be the wrong behaviour for several cases - but in my opinion this is the correct behaviour anyway... if I enable this redirect for my hole website, i would expect that it works with all domains and sudbomains. If I don't want it for all domains I can still use htaccess for the selected domains and keep it disabled for the website itself...
The option to add a checkbox to all aliasdomains seems to be inconvenient if there are many domains in a website...https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6356Email Spamfilter blacklist doesn't create .conf file2022-12-05T17:00:34ZTony GEmail Spamfilter blacklist doesn't create .conf fileIn a fully operational Postfix/Rspamd environment, go to ISPConfig Email>Spamfilter and create a whitelist record. A new .conf file is created in:
/etc/rspamd/local.d/users/spamfilter_wblist_nn.conf.
Now go to create a blacklist rec...In a fully operational Postfix/Rspamd environment, go to ISPConfig Email>Spamfilter and create a whitelist record. A new .conf file is created in:
/etc/rspamd/local.d/users/spamfilter_wblist_nn.conf.
Now go to create a blacklist record. The record is saved in the ISPConfig database but no file is created in the folder for Rspamd to use.
I've searched my system and the filters are not anywhere in the file system.
If this is expected behaviour, please note here how Rspamd uses the blacklist data without the .conf file, action info, etc.
When a whitelist record is disabled, it remains in the database but the .conf file is removed. ~~Might blacklist records simply be in the same state, disabled, even when the UI says they are enabled?~~ I checked the spamfilter_wblist table and 'B' Blacklist records are active.
More info will be provided if required.
Ubuntu 20.04
ISPConfig version: 3.2.2https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6360An IDN is not accepted for Destination Email in Email Forward add form.2022-07-10T08:38:26ZEdAn IDN is not accepted for Destination Email in Email Forward add form.
## Summary
An IDN is not accepted for Destination Email in Email Forward add form. Punycode must be used. the displayed error is: The destination contains at least one invalid email address
## Steps to reproduce
1. add an IDN (i.e. cu...
## Summary
An IDN is not accepted for Destination Email in Email Forward add form. Punycode must be used. the displayed error is: The destination contains at least one invalid email address
## Steps to reproduce
1. add an IDN (i.e. cuvée.com) as destination email in email forward form - produces error
## Correct behaviour
it should be allowed as it is everywhere else on IspConfig3 latest, patched.
## Environment
Server OS + version: Debian 10 and Debain 11
ISPConfig version: 3.2.8p1
Software version of the related software:
Apache 2.4.53
7.4.30https://git.ispconfig.org/ispconfig/ispconfig3/-/issues/6367Spamfilter whitelist email field should not be modified2023-03-22T14:19:42ZTony GSpamfilter whitelist email field should not be modifiedThe email field of a spamfilter whitelist entry gets processed and evaluated. The user entry should not be modified.
![image](/uploads/3397ff275fd7572f421d44cfc4a919ee/image.png)
Note that when the email is entered as a simple domain n...The email field of a spamfilter whitelist entry gets processed and evaluated. The user entry should not be modified.
![image](/uploads/3397ff275fd7572f421d44cfc4a919ee/image.png)
Note that when the email is entered as a simple domain name, that the data is prefixed with '@' on save in /etc/rspamd/local.d/users/spamfilter_wblist_NN.conf:
```
spamfilter_wblist-22 {
priority = 25;
from = "@creepers.org";
rcpt = "@zombie.vacations";
```
As noted in [this explanation](https://forum.howtoforge.com/threads/spamfilter-whitelist-blacklist-details.88977/#post-437138) in the forum, the 'from' field is a Regex. The user might not want the hard-coded @ sign before a domain name.
When a Regex is entered, the .conf record might not get created. Try "@(.*\.)*domain" on an existing whitelist entry and the .conf file will be deleted and not replaced. This might be resolved by just leaving that field as-is.
It would be helpful if #6082 incorporated a change for this. The easiest solution would be to comment out the processing. A more sophisticated solution might be to add a check in the UI to process the From entry as a domain (existing default) or as a Regex with no processing.