diff --git a/auth/mnet/auth.php b/auth/mnet/auth.php index ec6b9386433..fcecfa05fe0 100644 --- a/auth/mnet/auth.php +++ b/auth/mnet/auth.php @@ -885,6 +885,7 @@ class auth_plugin_mnet extends auth_plugin_base { unset($logEntryObj->username); + $logEntryObj = $this->trim_logline($logEntryObj); $insertok = insert_record('mnet_log', addslashes_object($logEntryObj), false); if ($insertok) { @@ -1351,6 +1352,25 @@ class auth_plugin_mnet extends auth_plugin_base { } } + /** + * Trims a log line from mnet peer to limit each part to a length which can be stored in our DB + * + * @param object $logline The log information to be trimmed + * @return object The passed logline object trimmed to not exceed storable limits + */ + function trim_logline ($logline) { + $limits = array('ip' => 15, 'coursename' => 40, 'module' => 20, 'action' => 40, + 'url' => 255); + foreach ($limits as $property => $limit) { + if (isset($logline->$property)) { + $logline->$property = substr($logline->$property, 0, $limit); + } + } + + return $logline; + } + + } ?>