-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: make http_request percent-decode URLs #1601
Conversation
src/distributed/assetstorage/Main.mo
Outdated
@@ -530,4 +533,54 @@ shared ({caller = creator}) actor class () { | |||
} | |||
}; | |||
|
|||
private func percentDecode(encoded: Text): Result.Result<Text, Text> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we name it urlDecode
instead? And maybe make a proposal to have that as a separate Motoko library. Feels like this code would be useful in a lot of projects in the future.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do wish this functionality were in motoko-base
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, non blocking change request.
## Changelog for advisory-db: Branch: main Commits: [rustsec/advisory-db@b485cf4d...8124c2ef](rustsec/advisory-db@b485cf4...8124c2e) * [`516ebee1`](rustsec/advisory-db@516ebee) Add advisory for pnet_packet ([RustSec/advisory-db#1595](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1595)) * [`988dc5fe`](rustsec/advisory-db@988dc5f) Fix some typos ([RustSec/advisory-db#1593](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1593)) * [`b83953fd`](rustsec/advisory-db@b83953f) Assigned RUSTSEC-2020-0167 to pnet_packet ([RustSec/advisory-db#1596](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1596)) * [`8dcbf290`](rustsec/advisory-db@8dcbf29) Better docs ([RustSec/advisory-db#1598](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1598)) * [`c536da77`](rustsec/advisory-db@c536da7) Update RUSTSEC-2020-0097.md ([RustSec/advisory-db#1600](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1600)) * [`90f7279a`](rustsec/advisory-db@90f7279) Add soundness advisory for cortex-m-rt ([RustSec/advisory-db#1601](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1601)) * [`19425285`](rustsec/advisory-db@1942528) Assigned RUSTSEC-2023-0014 to cortex-m-rt ([RustSec/advisory-db#1606](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1606)) * [`1a941a3d`](rustsec/advisory-db@1a941a3) Add sqlite advisory ([RustSec/advisory-db#1599](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1599)) * [`0e63414b`](rustsec/advisory-db@0e63414) Assigned RUSTSEC-2022-0090 to libsqlite3-sys ([RustSec/advisory-db#1607](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1607)) * [`6e74bc0d`](rustsec/advisory-db@6e74bc0) Add ascii advisory ([RustSec/advisory-db#1618](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1618)) * [`eadc6fea`](rustsec/advisory-db@eadc6fe) Add advisory Tauri filesystem scope bypass ([RustSec/advisory-db#1571](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1571)) * [`bf247555`](rustsec/advisory-db@bf24755) Assigned RUSTSEC-2023-0015 to ascii ([RustSec/advisory-db#1619](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1619)) * [`81e6e5a8`](rustsec/advisory-db@81e6e5a) Assigned RUSTSEC-2022-0091 to tauri ([RustSec/advisory-db#1621](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1621)) * [`6761c690`](rustsec/advisory-db@6761c69) Add informational advisory for partial_sort out-of-bounds read ([RustSec/advisory-db#1617](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1617)) * [`9a5b1008`](rustsec/advisory-db@9a5b100) Assigned RUSTSEC-2023-0016 to partial_sort ([RustSec/advisory-db#1622](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1622)) * [`94f44e82`](rustsec/advisory-db@94f44e8) `maligned::align_first` causes incorrect deallocation ([RustSec/advisory-db#1625](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1625)) * [`8124c2ef`](rustsec/advisory-db@8124c2e) Assigned RUSTSEC-2023-0017 to maligned ([RustSec/advisory-db#1626](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1626))
## Changelog for advisory-db: Branch: main Commits: [rustsec/advisory-db@b485cf4d...8124c2ef](rustsec/advisory-db@b485cf4...8124c2e) * [`516ebee1`](rustsec/advisory-db@516ebee) Add advisory for pnet_packet ([RustSec/advisory-db#1595](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1595)) * [`988dc5fe`](rustsec/advisory-db@988dc5f) Fix some typos ([RustSec/advisory-db#1593](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1593)) * [`b83953fd`](rustsec/advisory-db@b83953f) Assigned RUSTSEC-2020-0167 to pnet_packet ([RustSec/advisory-db#1596](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1596)) * [`8dcbf290`](rustsec/advisory-db@8dcbf29) Better docs ([RustSec/advisory-db#1598](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1598)) * [`c536da77`](rustsec/advisory-db@c536da7) Update RUSTSEC-2020-0097.md ([RustSec/advisory-db#1600](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1600)) * [`90f7279a`](rustsec/advisory-db@90f7279) Add soundness advisory for cortex-m-rt ([RustSec/advisory-db#1601](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1601)) * [`19425285`](rustsec/advisory-db@1942528) Assigned RUSTSEC-2023-0014 to cortex-m-rt ([RustSec/advisory-db#1606](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1606)) * [`1a941a3d`](rustsec/advisory-db@1a941a3) Add sqlite advisory ([RustSec/advisory-db#1599](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1599)) * [`0e63414b`](rustsec/advisory-db@0e63414) Assigned RUSTSEC-2022-0090 to libsqlite3-sys ([RustSec/advisory-db#1607](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1607)) * [`6e74bc0d`](rustsec/advisory-db@6e74bc0) Add ascii advisory ([RustSec/advisory-db#1618](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1618)) * [`eadc6fea`](rustsec/advisory-db@eadc6fe) Add advisory Tauri filesystem scope bypass ([RustSec/advisory-db#1571](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1571)) * [`bf247555`](rustsec/advisory-db@bf24755) Assigned RUSTSEC-2023-0015 to ascii ([RustSec/advisory-db#1619](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1619)) * [`81e6e5a8`](rustsec/advisory-db@81e6e5a) Assigned RUSTSEC-2022-0091 to tauri ([RustSec/advisory-db#1621](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1621)) * [`6761c690`](rustsec/advisory-db@6761c69) Add informational advisory for partial_sort out-of-bounds read ([RustSec/advisory-db#1617](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1617)) * [`9a5b1008`](rustsec/advisory-db@9a5b100) Assigned RUSTSEC-2023-0016 to partial_sort ([RustSec/advisory-db#1622](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1622)) * [`94f44e82`](rustsec/advisory-db@94f44e8) `maligned::align_first` causes incorrect deallocation ([RustSec/advisory-db#1625](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1625)) * [`8124c2ef`](rustsec/advisory-db@8124c2e) Assigned RUSTSEC-2023-0017 to maligned ([RustSec/advisory-db#1626](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/1626))
The http_request method now percent decodes URLs:
Fixes #1589
Also updated the asset e2e bash script to clean up its temporary directories and isolate itself from the user's
$HOME
.