MDL-56268 webservice: Format backtrace to avoid display private data
authorJuan Leyva <juanleyvadelgado@gmail.com>
Tue, 1 Nov 2016 21:35:30 +0000 (21:35 +0000)
committerMr. Jenkins (CiBoT) <cibot@moodle.org>
Thu, 10 Nov 2016 08:15:31 +0000 (16:15 +0800)
lib/externallib.php
lib/setuplib.php

index 68ccb7a..9590791 100644 (file)
@@ -239,6 +239,7 @@ class external_api {
         } catch (Exception $e) {
             $exception = get_exception_info($e);
             unset($exception->a);
+            $exception->backtrace = format_backtrace($exception->backtrace, true);
             if (!debugging('', DEBUG_DEVELOPER)) {
                 unset($exception->debuginfo);
                 unset($exception->backtrace);
index 095babc..852d68a 100644 (file)
@@ -730,6 +730,9 @@ function get_docs_url($path = null) {
 /**
  * Formats a backtrace ready for output.
  *
+ * This function does not include function arguments because they could contain sensitive information
+ * not suitable to be exposed in a response.
+ *
  * @param array $callers backtrace array, as returned by debug_backtrace().
  * @param boolean $plaintext if false, generates HTML, if true generates plain text.
  * @return string formatted backtrace, ready for output.