[Web] Add DKIM key when adding a domain or alias domain (#4254)

Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
This commit is contained in:
Kristian Feldsam
2021-09-01 16:51:10 +02:00
committed by GitHub
parent 54c4d7e49c
commit c1dcb529f3
3 changed files with 47 additions and 8 deletions

View File

@@ -5,14 +5,6 @@ function dkim($_action, $_data = null, $privkey = false) {
global $lang;
switch ($_action) {
case 'add':
if ($_SESSION['mailcow_cc_role'] != "admin") {
$_SESSION['return'][] = array(
'type' => 'danger',
'log' => array(__FUNCTION__, $_action, $_data, ),
'msg' => 'access_denied'
);
return false;
}
$key_length = intval($_data['key_size']);
$dkim_selector = (isset($_data['dkim_selector'])) ? $_data['dkim_selector'] : 'dkim';
$domains = array_map('trim', preg_split( "/( |,|;|\n)/", $_data['domains']));
@@ -42,6 +34,14 @@ function dkim($_action, $_data = null, $privkey = false) {
);
continue;
}
if (!hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $domain)) {
$_SESSION['return'][] = array(
'type' => 'danger',
'log' => array(__FUNCTION__, $_action, $_data),
'msg' => array('access_denied', $domain)
);
continue;
}
$config = array(
"digest_alg" => "sha256",
"private_key_bits" => $key_length,