From e47ac6818b9310d7900b4e515f340f5bb66a0972 Mon Sep 17 00:00:00 2001 From: cataluke Date: Thu, 12 Jun 2008 01:16:49 +0000 Subject: [PATCH] MDL-15008: mnet/environment.php: Update wwwroot/ip_address when key is deleted/recreated. --- mnet/environment.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/mnet/environment.php b/mnet/environment.php index 16e3f198d4..c8863ece00 100644 --- a/mnet/environment.php +++ b/mnet/environment.php @@ -150,7 +150,7 @@ class mnet_environment { } function replace_keys() { - global $DB; + global $DB, $CFG; $this->keypair = array(); $this->keypair = mnet_generate_keypair(); @@ -158,6 +158,20 @@ class mnet_environment { $details = openssl_x509_parse($this->public_key); $this->public_key_expires = $details['validTo_time_t']; + $this->wwwroot = $CFG->wwwroot; + if (empty($_SERVER['SERVER_ADDR'])) { + // SERVER_ADDR is only returned by Apache-like webservers + $my_hostname = mnet_get_hostname_from_uri($CFG->wwwroot); + $my_ip = gethostbyname($my_hostname); // Returns unmodified hostname on failure. DOH! + if ($my_ip == $my_hostname) { + $this->ip_address = 'UNKNOWN'; + } else { + $this->ip_address = $my_ip; + } + } else { + $this->ip_address = $_SERVER['SERVER_ADDR']; + } + set_config('openssl', implode('@@@@@@@@', $this->keypair), 'mnet'); $DB->update_record('mnet_host', $this); -- 2.39.5