diff --git a/admin/mnet/peers.php b/admin/mnet/peers.php
index 05940da456a..15c8ddbf78f 100644
--- a/admin/mnet/peers.php
+++ b/admin/mnet/peers.php
@@ -47,6 +47,10 @@ if (!isset($CFG->mnet_dispatcher_mode)) set_config('mnet_dispatcher_mode', 'off'
/// If data submitted, process and store
if (($form = data_submitted()) && confirm_sesskey()) {
+ if (!empty($form->wwwroot)) {
+ // ensure we remove trailing slashes
+ $form->wwwroot = preg_replace(':/$:', '', $form->wwwroot);
+ }
if (!empty($form->updateregisterall)) {
if (!empty($form->registerallhosts)) {
set_config('mnet_register_allhosts',1);
@@ -93,7 +97,11 @@ if (($form = data_submitted()) && confirm_sesskey()) {
$mnet_peer->public_key_expires = $mnet_peer->check_common_name($form->public_key);
if ($mnet_peer->public_key_expires == false) {
$mnet_peer->public_key == $oldkey;
- error(get_string("invalidpubkey", 'mnet'),'peers.php?step=update&hostid='.$mnet_peer->id);
+ $errmsg = '
';
+ foreach ($mnet_peer->error as $err) {
+ $errmsg .= $err['code'] . ': ' . $err['text'].'
';
+ }
+ error(get_string("invalidpubkey", 'mnet') . $errmsg ,'peers.php?step=update&hostid='.$mnet_peer->id);
exit;
}
}
diff --git a/mnet/lib.php b/mnet/lib.php
index 55f5d332917..61c9849f2a3 100644
--- a/mnet/lib.php
+++ b/mnet/lib.php
@@ -309,6 +309,9 @@ function mnet_generate_keypair($dn = null, $days=28) {
);
}
+ // ensure we remove trailing slashes
+ $dn["commonName"] = preg_replace(':/$:', '', $dn["commonName"]);
+
$new_key = openssl_pkey_new();
$csr_rsc = openssl_csr_new($dn, $new_key, array('private_key_bits',2048));
$selfSignedCert = openssl_csr_sign($csr_rsc, null, $new_key, $days);