1
0
mirror of https://github.com/roytam1/UXP.git synced 2026-06-12 11:28:57 +00:00
Commit Graph

17 Commits

Author SHA1 Message Date
Moonchild 68fa0f0d54 [devtools] Further improve "Copy as cURL"
Don't escape unicode control characters. While these characters would
break commands if present (i.e. non functional cURL) and could potentially
be sanitized to spaces, that would likely just move the goalposts again.
Following Mozilla here.
2025-12-17 22:45:02 +08:00
Moonchild b3c406bb25 [devtools] Further improve "Copy as cURL"
Collapse whitespaces.
2025-12-17 22:43:21 +08:00
Moonchild 4abf0b3f21 [devtools] Remove newline kludge from "Copy as cURL" on Windows 2025-10-16 07:16:41 +08:00
Moonchild 2d9cb22a28 [devtools] Further improve special character escaping in "copy as curl".
Follow-up to 15335ce39d1ea2ef4585a36a4d562a3894459a15

Trying to cross-platform sanitize causes issues escaping too much and
as a result mangling the curl commands that get spit out.
This reverts previously added Windows-specific escaping on POSIX and
vice versa.
Since we do not offer cross-platform copying as a curl command in devtools
anyway, it makes little sense to sanitize for the O.S. we're not running on
as we would not be using the command processor in such environments that
could trip over characters for the other O.S. This was previously added
as a defense-in-depth in case we would start offering this, but I see no
real reason to do so, anyway.

Also decided to in-line comments for readability instead of a bulleted
list in the function head.

Mozilla has taken similar steps because of fall-out, but they do offer
cross-platform "copy as curl" for corner cases, so they will have to
find solutions for a problem we won't have.
2025-07-07 11:57:09 +08:00
Moonchild 7d099a8080 [devtools] Improve special character escaping for curl 2025-06-17 09:23:44 +08:00
Moonchild ba3a5074c7 [devtools] Escape some more characters for copying as cURL on Posix. 2025-04-30 23:06:24 +08:00
Moonchild 7764640b0b [devtools] Improve Copy as cURL
Windows commonly fails to work because of --compressed, and its string
escaping needed improvement because of the complexities of argument
parsing in command windows.
2023-01-19 09:42:21 +08:00
roytam1 5ad78a48db Bug 1737252 - [devtools] Escaping back tick signs. r=nchevobbe, a=RyanVM 2022-01-19 10:28:07 +08:00
Moonchild 8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Moonchild 105c7abd40 [devtools] Port various upstream fixes 2020-05-09 06:56:32 +08:00
wolfbeast aa637c405a [devtools] Properly escape method arguments for curl. 2020-03-20 08:58:37 +08:00
Brian Grinstead d00f80f18f Escape '!' to '\041' in posix strings ($'...') 2019-03-29 22:21:50 +08:00
Gaming4JC 30797d4da8 backport mozbug 1334776 - CVE-2017-7797 Header name interning leaks across origins
Potential attack: session supercookie.

[Moz Notes](https://bugzilla.mozilla.org/show_bug.cgi?id=1334776#c5):
"The problem is that for unknown header names we store the first one we see and then later we case-insensitively match against that name *globally*. That means you can track if a user agent has already seen a certain header name used (by using a different casing and observing whether it gets normalized). This would allow you to see if a user has used a sensitive service that uses custom header names, or allows you to track a user across sites, by teaching the browser about a certain header case once and then observing if different casings get normalized to that.

What we should do instead is only store the casing for a header name for each header list and not globally. That way it only leaks where it's expected (and necessary) to leak."

[Moz fix note](https://bugzilla.mozilla.org/show_bug.cgi?id=1334776#c8):
"nsHttpAtom now holds the old nsHttpAtom and a string that is case sensitive (only for not standard headers).
So nsHttpAtom holds a pointer to a header name. (header names are store on a static structure). This is how it used to be. I left that part the same but added a nsCString which holds a string that was used to resoled the header name. So when we parse headers we call ResolveHeader with a char*. If it is a new header name the char* will be stored in a HttpHeapAtom, nsHttpAtom::_val will point to HttpHeapAtom::value and the same strings will be stored in mLocalCaseSensitiveHeader. For the first resolve request they will be the same but for the following maybe not. At the end this nsHttpAtom will be stored in nsHttpHeaderArray. For all operation we will used the old char* except when we are returning it to a script using VisitHeaders."
2019-02-16 00:14:28 +08:00
janekptacijarabaci d0c4a6bdf1 Copy as cURL (PATCH)
Issue #44
2019-02-15 23:35:35 +08:00
janekptacijarabaci 59559355e6 DevTools - network - Copy as cURL (POST)
https://github.com/MoonchildProductions/moebius/pull/167
2019-02-15 23:34:44 +08:00
janekptacijarabaci 174dd27dd3 [regression] DevTools - network - Copy as cURL (http versions) 2019-02-15 23:31:51 +08:00
roytam1 dcd9973243 import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo 2018-01-19 03:59:58 +08:00