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

External Tool rewrites case sensitive URL parameters to lower case

    XMLWordPrintable

    Details

    • Testing Instructions:
      Hide
      • Run unit tests.
      • Site must be running over ngrok - http only.
      • Create and activate a tool using Site admin >> External tool >> Manage tools. Use http://ltiapps.net/test/tp.php.
      • Now, in a course, add an external tool and select this preconfigured tool. Set the 'Custom parameters' field to contain:
      • lowercase=1
      • MixedCase=2
      • Save this tool as 'LTI 2 tool'
      • Now add another external tool, but this time name the tool 'LTI 1 tool' and paste http://ltiapps.net/test/tp.php into the tool url field. Set custom params as before.
      • Now, view each tool and Confirm that you see all three of MixedCase, mixedcase and lowercase params listed.
      Show
      Run unit tests. Site must be running over ngrok - http only. Create and activate a tool using Site admin >> External tool >> Manage tools. Use http://ltiapps.net/test/tp.php . Now, in a course, add an external tool and select this preconfigured tool. Set the 'Custom parameters' field to contain: lowercase=1 MixedCase=2 Save this tool as 'LTI 2 tool' Now add another external tool, but this time name the tool 'LTI 1 tool' and paste http://ltiapps.net/test/tp.php into the tool url field. Set custom params as before. Now, view each tool and Confirm that you see all three of MixedCase, mixedcase and lowercase params listed.
    • Affected Branches:
      MOODLE_32_STABLE, MOODLE_33_STABLE, MOODLE_34_STABLE
    • Fixed Branches:
      MOODLE_32_STABLE, MOODLE_33_STABLE
    • Pull Master Branch:
      MDL-59198-master
    • Sprint:
      3.4 Sprint 4

      Description

      Upon using the External Tool, there is a field called "Custom parameters", holding name=value pairs.

      If I enter eg. "epFrom=abcde", this appears to get rewritten upon usage of the tool to an URL that contains "&epfrom=abcde", ie. the names, which should be case sensitive, actually are not. This breaks the LTI provider functionality, which works on URLs being case sensitive.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Fix Release Date:
                11/Sep/17