gecko-dev/uriloader/exthandler
Toshihito Kikuchi c1e5d642df Bug 1609451 - Skip ShellExecuteByExplorer to open a uri in Thunderbird. r=froydnj
We use `ShellExecuteByExplorer` to open a uri because applications may not
support the mitigation policies inherited from our process.

Unlike Firefox, Thunderbird runs `ShellExecuteByExplorer` to launch a browser
to open an HTTP/HTTPS uri.  If a uri includes credentials like
http://user:password@domain.com/, `ShellExecuteByExplorer` succceds, but
explorer.exe refuses to open the uri by design.  In this case the fallback to
`ShellExecuteExW` does not happen because the API is async and no error is
returned

The proposed fix is to skip `ShellExecuteByExplorer` if it's Thunderbird.
Because Thunderbird does not apply additional mitigation policies which may
cause compat issues, we don't need to run `ShellExecuteByExplorer` in the
first place.

Differential Revision: https://phabricator.services.mozilla.com/D67339

--HG--
extra : moz-landing-system : lando
2020-03-19 16:09:18 +00:00
..
android Bug 1619344 - Open the floodgates and let the GV app handle all schemes in redirects in onLoadRequest. r=snorp 2020-03-02 20:32:19 +00:00
docs Bug 1595601: Add documentation for the external handler service. r=Gijs 2019-11-12 19:45:26 +00:00
mac Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
tests Bug 1531289 - target=_blank with a download should close the download tab, r=nika,Gijs 2020-03-19 13:03:14 +00:00
uikit Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
unix Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
win Bug 1609451 - Skip ShellExecuteByExplorer to open a uri in Thunderbird. r=froydnj 2020-03-19 16:09:18 +00:00
ContentHandlerService.cpp
ContentHandlerService.h
DBusHelpers.h
ExternalHelperAppChild.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
ExternalHelperAppChild.h Bug 1589270 - Part 3: Convert nsExternalHelperApp to use BrowsingContext instead of nsIInterfaceRequestor. r=bzbarsky 2019-11-08 04:35:05 +00:00
ExternalHelperAppParent.cpp Bug 1620687 - Removing unused aURI parameter r=valentin 2020-03-09 14:33:25 +00:00
ExternalHelperAppParent.h Bug 1598497 - P2. Have the canceled attribute only if explicitly canceled. r=mayhemer. 2019-12-19 05:20:07 +00:00
HandlerService.js Bug 1547693 - do not bother looking up protocol information with the OS just to store the default shipped options, r=florian 2020-02-10 23:51:43 +00:00
HandlerService.manifest
HandlerServiceChild.h
HandlerServiceParent.cpp Bug 1612403 - File extensions are duplicated for file inputs with custom 'accept'. r=Gijs 2020-02-21 08:30:30 +00:00
HandlerServiceParent.h
PExternalHelperApp.ipdl Bug 1589270 - Part 3: Convert nsExternalHelperApp to use BrowsingContext instead of nsIInterfaceRequestor. r=bzbarsky 2019-11-08 04:35:05 +00:00
PHandlerService.ipdl
WebHandlerApp.jsm
components.conf
moz.build Bug 1599277 - fix docs paths for uriloader/exthandler, r=ahal 2019-11-26 15:02:00 +00:00
nsCExternalHandlerService.idl
nsContentHandlerApp.h
nsDBusHandlerApp.cpp
nsDBusHandlerApp.h
nsExternalHelperAppService.cpp Bug 1623222 - Remove the charset parameter from nsITextToSubURI::UnEscapeURIForUI. r=hsivonen 2020-03-19 10:45:28 +00:00
nsExternalHelperAppService.h Bug 1598216 - Change file extensions with invalid characters to valid file extensions on save. r=Gijs 2020-03-09 16:11:13 +00:00
nsExternalProtocolHandler.cpp Bug 1599046 - P3. Remove unused IPC method in nsIParentChannel.idl. r=timhuang,Ehsan 2020-01-27 10:39:38 +00:00
nsExternalProtocolHandler.h Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
nsIContentDispatchChooser.idl
nsIExternalHelperAppService.idl Bug 1589270 - Part 3: Convert nsExternalHelperApp to use BrowsingContext instead of nsIInterfaceRequestor. r=bzbarsky 2019-11-08 04:35:05 +00:00
nsIExternalProtocolService.idl Bug 1496380 - stop recursion via the external protocol handler if Firefox is either the default OS handler or a configured external handler, r=mossop 2019-11-26 18:51:04 +00:00
nsIExternalURLHandlerService.idl
nsIHandlerService.idl
nsIHelperAppLauncherDialog.idl
nsISharingHandlerApp.idl
nsLocalHandlerApp.cpp
nsLocalHandlerApp.h
nsMIMEInfoChild.h
nsMIMEInfoImpl.cpp Bug 1612403 - File extensions are duplicated for file inputs with custom 'accept'. r=Gijs 2020-02-21 08:30:30 +00:00
nsMIMEInfoImpl.h Bug 1612403 - File extensions are duplicated for file inputs with custom 'accept'. r=Gijs 2020-02-21 08:30:30 +00:00
nsOSHelperAppServiceChild.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
nsOSHelperAppServiceChild.h Bug 1496380 - stop recursion via the external protocol handler if Firefox is either the default OS handler or a configured external handler, r=mossop 2019-11-26 18:51:04 +00:00