Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-17169

Protect XML-RPC responses from loose PHP libraries and debug modes

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.9.3
    • 1.9.8, 2.0
    • MNet
    • None
    • Any
    • MOODLE_19_STABLE
    • MOODLE_19_STABLE, MOODLE_20_STABLE

    Description

      In some case (tried using backup/restore libraries server side) loose library generate spaces and endlines in XML-RPC before preparing XMLENC response. This harms a lot XML-RPC debugging because producing a very strange error :

      Reserved XML Name

      in parsing the payload.

      Solution : clean up the incoming raw response from any forward blanck chars :

      §196 in mnet/client.php

      if ($this->rawresponse === false)

      { $this->error[] = curl_errno($ch) .':'. curl_error($ch); return false; }

      // eliminates all primary spaces and endlines from unchecked
      // php scripts server side.
      $this->rawresponse = preg_replace("/^\\s\\n+/m", '', $this->rawresponse);

      $mnet_peer->touch();

      This helps understand why error helpers appear as empty when being displayed in error message.

      Attachments

        Issue Links

          Activity

            People

              mjollnir Penny Leach
              vf Valery Fremaux
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                25/Mar/10