Граф коммитов

108 Коммитов

Автор SHA1 Сообщение Дата
Haik Aftandilian 97420c053a Bug 1376496 - Part 2 - Don't request FD from parent when JAR file is cached. r=mayhemer
MozReview-Commit-ID: 6xooCVnBehj

--HG--
extra : rebase_source : e8045206d5b5196d26109967966d91476470b058
2017-07-21 15:19:09 -07:00
Haik Aftandilian c3cf53a7ef Bug 1334550 - Part 1 - Proxy moz-extension protocol requests to the parent process; r=jimm,mayhemer
Changes ExtensionProtocolHandler to use remote streams for
moz-extension loads of file and JAR URI's to allow for
filesystem read-access sandboxing.

Adds messaging to PNecko to allow child processes to
request an input stream or file descriptor for moz-extension
URI's.

Add ExtensionProtocolHandler singleton so that NeckoParent can
call methods directly and ExtensionProtocolHandler::NewFD
can use a new member variable |mFileOpenerThread| to open files.

Adds FileDescriptorFile, a limited implementation of nsIFile
that wraps a file descriptor, to be sideloaded into
nsJARChannels so that extension JAR files can be read
using a file descriptor without accessing the filesystem
directly.

MozReview-Commit-ID: 1pcnIpjz2yR

--HG--
extra : rebase_source : 9d7334778fc81837b11b98d4e32603f7e5eb3a27
2017-06-23 17:10:54 -07:00
Phil Ringnalda 21f33fe35a Backed out 3 changesets (bug 1334550) for Windows timeouts in test-oop-extensions/test_ext_unlimitedStorage.html
Backed out changeset 17c74c7634a2 (bug 1334550)
Backed out changeset d3b0db4e50c5 (bug 1334550)
Backed out changeset 4319f15e2496 (bug 1334550)

MozReview-Commit-ID: 2vmxPAMJZW
2017-06-22 22:32:58 -07:00
Haik Aftandilian 008a6c80f9 Bug 1334550 - Part 1 - Proxy moz-extension protocol requests to the parent process; r=jimm,mayhemer
Changes ExtensionProtocolHandler to use remote streams for
moz-extension loads of file and JAR URI's to allow for
filesystem read-access sandboxing.

Adds messaging to PNecko to allow child processes to
request an input stream or file descriptor for moz-extension
URI's.

Add ExtensionProtocolHandler singleton so that NeckoParent can
call methods directly and ExtensionProtocolHandler::NewFD
can use a new member variable |mFileOpenerThread| to open files.

Adds FileDescriptorFile, a limited implementation of nsIFile
that wraps a file descriptor, to be sideloaded into
nsJARChannels so that extension JAR files can be read
using a file descriptor without accessing the filesystem
directly.

MozReview-Commit-ID: 1pcnIpjz2yR

--HG--
extra : rebase_source : c3f2ede3dbfb29d98af6b194dbe58669d93d4197
2017-06-22 11:53:06 -07:00
Valentin Gosu 50857ff758 Bug 1307467 - Remove mAppURI from nsJARChannel r=bagder
MozReview-Commit-ID: CX9TMxY1qZM

--HG--
extra : rebase_source : 2fdb8ddcc0d1f47d28221c9ba7210a67e16bcdb1
2016-10-21 00:24:04 +02:00
Valentin Gosu 32a883b619 Bug 1307467 - Remove RemoteFileOpen, and all app:// related code from JAR channels. r=bagder
Removes things added in bug 815523

MozReview-Commit-ID: FuXQceHGLhf

--HG--
extra : rebase_source : 048132627fb1e7ef00a061c3173fdd049724936c
2016-10-21 00:08:57 +02:00
Jonathan Watt 61406bc819 Bug 1266582 - Remove nsJARChannel::OverrideSecurityInfo/OverrideURI. r=ehsan
MozReview-Commit-ID: 3PnSBcIYR3y
2016-04-21 23:24:22 +01:00
Ehsan Akhgari fbf2580b8c Bug 1197379 - Remove support for intercepting app:// URIs using service workers; r=jdm 2016-01-27 15:26:27 -05:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Ben Kelly bf39f45fae Bug 1210941 P3 Make jar channels use LOAD_BYPASS_SERVICE_WORKER internally. r=jduell 2015-10-06 06:37:06 -07:00
Jeff Gibat 89ea66504c Bug 1173171 - Disable external jar: via preference. r=jduell 2015-08-04 23:55:00 -04:00
Carsten "Tomcat" Book e89cc58a29 Backed out changeset bf18c1865e7d (bug 1173171) for test failures like test_bug1173171.html 2015-08-05 08:35:19 +02:00
Jeff Gibat 3765993ed6 Bug 1173171 - Disable external jar: via preference. r=jduell 2015-07-30 13:10:00 +02:00
Shian-Yow Wu e696b31466 Bug 1069081 - Part 1: Always cache fd in JAR cache except Windows. r=mwu 2015-07-30 16:05:57 +08:00
Fernando Jimenez 9d27d75942 Bug 1174078 - Calling "fetch" inside Service Worker's "onfetch" handler in b2g causes "onfetch" again that leads to an infinite loop. r=nsm 2015-06-17 11:50:07 +02:00
Ehsan Akhgari 8c2dce3444 Bug 1164397 - Part 3: Add an API for overriding the original URI on nsJARChannel; r=jdm 2015-06-05 15:57:40 -04:00
Fernando Jimenez ce7ac6d031 Bug 1169613 - Use content type of synthesized response for JAR channel requests if available. Part 1: Set Content-Type of synthesized reponses for JAR channel requests. r=jdm 2015-06-05 12:53:58 +02:00
Fernando Jimenez 6060f671d6 Bug 1169296 - Intercepting top-level document loads is not working with JAR channels. r=jdm 2015-06-03 10:41:44 +02:00
Ehsan Akhgari 4017e4028f Bug 1168208 - Refactor the existing logic for syncing the security info between Response and channel objects into a new helper class; r=nsm,jdm,bkelly
--HG--
rename : dom/fetch/InternalResponse.cpp => dom/fetch/ChannelInfo.cpp
rename : dom/fetch/Response.h => dom/fetch/ChannelInfo.h
2015-05-27 14:22:53 -04:00
Fernando Jimenez 95803111ef Bug 1161684 - Allow JAR channels to be intercepted by service workers. r=jdm 2015-05-22 09:32:25 +02:00
Sebastian Hengst 89d9f2f631 Backout 068cc6419d1e (Bug 1161684) for M4 perma-failures on opt. r=backout 2015-05-22 10:48:03 +02:00
Fernando Jimenez 6608088159 Bug 1161684 - Allow JAR channels to be intercepted by service workers. r=jdm 2015-05-22 09:32:25 +02:00
Eric Rahm 4879ae86f4 Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
Eric Rahm 682623740c Bug 1164620 - Part 1: Remove instances of #ifdef PR_LOGGING in various places. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-14 10:13:24 -07:00
Andrea Marchesini e6f385fb3d Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Jed Davis cd38d75885 Bug 1043143: Step 3: Convert nsJARChannel from temporary files to temporary memory. r=honzab
This also requires changing XMLHttpRequest so that it doesn't crash if
memory-mapping would be applicable but the channel has no associated
nsIFile; a regression test for that case is added.

Bonus fix: nsJARChannel::AsyncOpen now checks whether the inner channel's
AsyncOpen failed.
2015-03-10 17:00:01 -07:00
Josh Matthews 8a1d19377e Bug 1059832 - Disallow initiating asynchronous remote JAR channel requests for synchronous operations. r=jduell 2014-09-15 13:00:08 -04:00
Trevor Saunders d75ed5bf7f bug 1059490 - mark more classes MOZ_FINAL r=froydnj 2014-08-27 14:26:48 -04:00
Shian-Yow Wu 594bb622ac Bug 1048615 - Fix crash when simultaneously opening remote JAR file with mEnsureChildFd enabled. r=jduell 2014-08-21 19:09:35 +08:00
Shian-Yow Wu ebdb09281e Bug 988816 - Support multiple OpenNSPRFileOpen() on RemoteOpenFile. r=aklotz, jduell 2014-07-18 10:46:22 +08:00
Andrew McCreight c3a80ae7ac Bug 1038207 - Fix various classes that reimplement nsISupports. r=ehsan 2014-07-14 12:21:34 -07:00
Boris Zbarsky 2d81966ba3 Bug 965413 part 3. Add a .loadInfo property to channels. r=mcmanus 2014-07-10 02:56:36 -04:00
Kyle Huey 3fa8bd3656 Bug 1024388: Allow JAR channels to retarget to a different thread. r=bz,jduell 2014-06-17 09:39:23 -07:00
Joshua Cranmer 47440ef749 Bug 884061 - Part 3p: Use NS_DECL_THREADSAFE_ISUPPORTS in modules/, r=taras,bsmedberg
--HG--
extra : rebase_source : e7b1a1d25ae9e602cae50f11d718dd1a94db782d
2013-07-18 21:23:44 -05:00
Ben Turner fccc4a7e71 Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-15 14:27:21 -08:00
Ryan VanderMeulen 46e64bb8b4 Backed out changeset 1646e649878a (bug 835698) for causing bug 839256. 2013-02-11 17:38:41 -05:00
Ben Turner ba03516e31 Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-09 17:59:47 +00:00
Ed Morley 55aeaf5840 Backout 1646e649878a (bug 835698) on suspicion of causing mochitest-1 shutdown hangs on Windows on a rather sad looking CLOSED TREE 2013-02-11 15:41:36 +00:00
Ben Turner 0a6bcfccca Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-09 17:59:47 +00:00
Jason Duell 310b9a58b0 Backed out changeset 1a2e34c9ebc7 (bug 835698) a=bustage_from_bug_839688 2013-02-08 17:18:28 -08:00
Ben Turner 95daf24ed3 Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-01 04:23:23 -08:00
Phil Ringnalda a59edaacfe Back out 4b47185f48f8 (bug 835698) for Win debug crashes in test_jarchannel_e10s.js 2013-02-06 22:23:33 -08:00
ben turner eee608fdc3 Bug 835698 - Pre-open() and send the fd for app process's application.zip r=jduell 2013-02-06 05:18:00 -08:00
Jason Duell 1403709ff4 Bug 815523 - Remote the app: and jar: protocols. r=fabrice,mwu,jdm 2012-12-22 05:56:21 -08:00
Nils Maier 3bbf911201 Bug 719180: Part 1 - Correct jar channel stream ownership; r=taras
Avoid potential file locking issues by not keeping references to the input
stream in the first place, analog to how nsBaseChannel/nsFileChannel are
implemented. The file locks will now be released as soon as either the stream
is explictly closed or the stream instance gets destroyed.
This means that a synchronous ::Open() will transfer the input stream
ownership to the caller, while asynchronous ::AsyncOpen() will transfer it to
the pump handling the asynchronous transfer to the caller's listener.
2012-11-28 13:12:56 -05:00
Nick Hurley 6e789d3d04 Bug 536324 part 2 - Change implementers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Andrea Marchesini 46273c945f Bug 783562 - blob: protocol wrong Content-Type header. r=sicking 2012-08-27 19:34:30 -04:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Fabrice Desré 3fe7c66a25 Bug 769350 - Implement trusted/certified app scheme support [r=vingtetun] 2012-07-11 08:38:36 -07:00