Confirmed users
431
edits
Line 17: | Line 17: | ||
So, the most obvious place for inter-process communication will be AsyncOpen (from content->chrome, to queue the network request) and the various "On..." events back from chrome to the content process. | So, the most obvious place for inter-process communication will be AsyncOpen (from content->chrome, to queue the network request) and the various "On..." events back from chrome to the content process. | ||
The unknown question is how much additional IPDL communication will be needed for the common case. OnDataAvailable(), etc., all provide pointers to the Channel servicing the request, which allow client code to potentially do things that require access to the chrome channel. | The unknown question is how much additional IPDL communication will be needed for the common case. OnDataAvailable(), etc., all provide pointers to the Channel servicing the request, which allow client code to potentially do things that require access to the chrome channel. | ||
==== HTTP Headers ==== | |||
HTTP headers will need to be parsed first in the chrome process--so things like auth, cache directives, cookies, etc., can be handled. We will also need to provide some or all headers to the content process, probably via serializing them over IPDL. | |||
* bz suggests we "whitelist" the headers and provide only needed headers to the content process. | |||
==== HTTP redirects ==== | |||
The current architecture shifts out the original channel and replaces it with a channel to the new destination. | |||
* This will probably require IPDL traffic to tell the content process to do something similar on its end. | |||
* There are also listeners that are notified of redirects, and have the ability to cancel if they don't approve (plugins such as flash use this). | |||
** Right now these notifications are synchronous: we should change this to async on mozilla-central, and then merge into e10s tree. | |||
; LoadGroups: LoadGroups presumably live in the content process. What kinds of notifications (cancel events, others?) does they need to get? | ; LoadGroups: LoadGroups presumably live in the content process. What kinds of notifications (cancel events, others?) does they need to get? |