summaryrefslogtreecommitdiffstats
path: root/webkit/glue/plugins/webplugin_impl.h
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-23 00:34:27 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-23 00:34:27 +0000
commit65e82a56b3f1ca882db8c53f07781ecdc6cb7ece (patch)
treee224abcb3aa50320f55bf7a35bbf2e72ee0e0270 /webkit/glue/plugins/webplugin_impl.h
parent52426e4c3b775666fa9fd52e1c52f8dbbbaadd49 (diff)
downloadchromium_src-65e82a56b3f1ca882db8c53f07781ecdc6cb7ece.zip
chromium_src-65e82a56b3f1ca882db8c53f07781ecdc6cb7ece.tar.gz
chromium_src-65e82a56b3f1ca882db8c53f07781ecdc6cb7ece.tar.bz2
Implement NPAPI HTTP Redirect handling. This basically supports the NPAPI URL redirect
notifications which are sent out from the browser while processing URL requests issued by the plugin via the NPN_GetURLNotify and NPN_PostURLNotify APIs. For more info please see https://wiki.mozilla.org/NPAPI:HTTPRedirectHandling As part of this CL we also block cross origin 307 POST url redirects. Test=Covered by NPAPI UI test GetURLRedirectNotification Bug=63030,63698 Review URL: http://codereview.chromium.org/5228007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67029 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/plugins/webplugin_impl.h')
-rw-r--r--webkit/glue/plugins/webplugin_impl.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/webkit/glue/plugins/webplugin_impl.h b/webkit/glue/plugins/webplugin_impl.h
index 58289d6..4f3b6c7 100644
--- a/webkit/glue/plugins/webplugin_impl.h
+++ b/webkit/glue/plugins/webplugin_impl.h
@@ -127,6 +127,8 @@ class WebPluginImpl : public WebPlugin,
std::string* json_retval);
virtual void OnMissingPluginStatus(int status);
+ virtual void URLRedirectResponse(bool allow, int resource_id);
+
// Given a (maybe partial) url, completes using the base url.
GURL CompleteURL(const char* url);
@@ -179,7 +181,8 @@ class WebPluginImpl : public WebPlugin,
const char* buf,
int len,
const char* range_info,
- Referrer referrer_flag);
+ Referrer referrer_flag,
+ bool notify_redirects);
gfx::Rect GetWindowClipRect(const gfx::Rect& rect);
@@ -196,7 +199,7 @@ class WebPluginImpl : public WebPlugin,
// to relay the callbacks to the plugin.
virtual void willSendRequest(WebKit::WebURLLoader* loader,
WebKit::WebURLRequest& request,
- const WebKit::WebURLResponse&);
+ const WebKit::WebURLResponse& response);
virtual void didSendData(WebKit::WebURLLoader* loader,
unsigned long long bytes_sent,
unsigned long long total_bytes_to_be_sent);
@@ -223,7 +226,8 @@ class WebPluginImpl : public WebPlugin,
const char* buf,
unsigned int len,
int notify_id,
- bool popups_allowed);
+ bool popups_allowed,
+ bool notify_redirects);
void CancelDocumentLoad();
@@ -247,7 +251,8 @@ class WebPluginImpl : public WebPlugin,
unsigned int len,
int notify_id,
bool popups_allowed,
- Referrer referrer_flag);
+ Referrer referrer_flag,
+ bool notify_redirects);
// Tears down the existing plugin instance and creates a new plugin instance
// to handle the response identified by the loader parameter.