summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorcallum_linden <none@none>2015-11-16 16:09:40 -0800
committercallum_linden <none@none>2015-11-16 16:09:40 -0800
commit311b376ab50bacf2bf113616af2a5bbedfcd5ee5 (patch)
tree515726f4fc5842ed0762a8b1a160466a7173504f /indra
parente63aeb29ab8e0c173f17a2c343c66ab4ef84c0ad (diff)
Update SetCookie code for new LLCEFLib API and add support for shoing/hising developer console (Inspector)
Diffstat (limited to 'indra')
-rwxr-xr-xindra/llplugin/llpluginclassmedia.cpp4
-rwxr-xr-xindra/llplugin/llpluginclassmedia.h2
-rw-r--r--indra/media_plugins/cef/media_plugin_cef.cpp8
-rwxr-xr-xindra/newview/llviewermedia.cpp11
-rwxr-xr-xindra/newview/llviewermedia.h2
5 files changed, 20 insertions, 7 deletions
diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp
index 85653a0fcc..23c5cd8794 100755
--- a/indra/llplugin/llpluginclassmedia.cpp
+++ b/indra/llplugin/llpluginclassmedia.cpp
@@ -669,7 +669,7 @@ bool LLPluginClassMedia::textInput(const std::string &text, MASK modifiers, LLSD
return true;
}
-void LLPluginClassMedia::setCookie(std::string uri, std::string name, std::string value, std::string domain, std::string path)
+void LLPluginClassMedia::setCookie(std::string uri, std::string name, std::string value, std::string domain, std::string path, bool httponly, bool secure)
{
LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "set_cookie");
@@ -678,6 +678,8 @@ void LLPluginClassMedia::setCookie(std::string uri, std::string name, std::strin
message.setValue("value", value);
message.setValue("domain", domain);
message.setValue("path", path);
+ message.setValueBoolean("httponly", httponly);
+ message.setValueBoolean("secure", secure);
sendMessage(message);
}
diff --git a/indra/llplugin/llpluginclassmedia.h b/indra/llplugin/llpluginclassmedia.h
index fe02696084..62652da9bc 100755
--- a/indra/llplugin/llpluginclassmedia.h
+++ b/indra/llplugin/llpluginclassmedia.h
@@ -133,7 +133,7 @@ public:
// Text may be unicode (utf8 encoded)
bool textInput(const std::string &text, MASK modifiers, LLSD native_key_data);
- void setCookie(std::string uri, std::string name, std::string value, std::string domain, std::string path);
+ void setCookie(std::string uri, std::string name, std::string value, std::string domain, std::string path, bool httponly, bool secure);
void loadURI(const std::string &uri);
diff --git a/indra/media_plugins/cef/media_plugin_cef.cpp b/indra/media_plugins/cef/media_plugin_cef.cpp
index 60f6264db4..a53b453b3e 100644
--- a/indra/media_plugins/cef/media_plugin_cef.cpp
+++ b/indra/media_plugins/cef/media_plugin_cef.cpp
@@ -499,7 +499,9 @@ void MediaPluginCEF::receiveMessage(const char* message_string)
std::string value = message_in.getValue("value");
std::string domain = message_in.getValue("domain");
std::string path = message_in.getValue("path");
- mLLCEFLib->setCookie(uri, name, value, domain, path);
+ bool httponly = message_in.getValueBoolean("httponly");
+ bool secure = message_in.getValueBoolean("secure");
+ mLLCEFLib->setCookie(uri, name, value, domain, path, httponly, secure);
}
else if (message_name == "mouse_event")
{
@@ -666,6 +668,10 @@ void MediaPluginCEF::receiveMessage(const char* message_string)
{
mUserAgentSubtring = message_in.getValue("user_agent");
}
+ else if (message_name == "show_web_inspector")
+ {
+ mLLCEFLib->showDevTools(true);
+ }
else if (message_name == "plugins_enabled")
{
mPluginsEnabled = message_in.getValueBoolean("enable");
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index 626938f7b5..cc56a9db8d 100755
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -1390,7 +1390,7 @@ LLSD LLViewerMedia::getHeaders()
/////////////////////////////////////////////////////////////////////////////////////////
// static
-bool LLViewerMedia::parseRawCookie(const std::string raw_cookie, std::string& name, std::string& value, std::string& path)
+bool LLViewerMedia::parseRawCookie(const std::string raw_cookie, std::string& name, std::string& value, std::string& path, bool& httponly, bool& secure)
{
std::size_t name_pos = raw_cookie.find_first_of("=");
if (name_pos != std::string::npos)
@@ -1402,6 +1402,9 @@ bool LLViewerMedia::parseRawCookie(const std::string raw_cookie, std::string& na
value = raw_cookie.substr(name_pos + 1, value_pos - name_pos - 1);
path = "/"; // assume root path for now
+ httponly = true; // hard coded for now
+ secure = true;
+
return true;
}
}
@@ -1450,10 +1453,12 @@ void LLViewerMedia::setOpenIDCookie(const std::string& url)
std::string cookie_name = "";
std::string cookie_value = "";
std::string cookie_path = "";
- if (parseRawCookie(sOpenIDCookie, cookie_name, cookie_value, cookie_path) &&
+ bool httponly = true;
+ bool secure = true;
+ if (parseRawCookie(sOpenIDCookie, cookie_name, cookie_value, cookie_path, httponly, secure) &&
media_instance->getMediaPlugin())
{
- media_instance->getMediaPlugin()->setCookie(url, cookie_name, cookie_value, cookie_host, cookie_path);
+ media_instance->getMediaPlugin()->setCookie(url, cookie_name, cookie_value, cookie_host, cookie_path, httponly, secure);
}
}
}
diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h
index 4ee1b56a2a..01d4b0786f 100755
--- a/indra/newview/llviewermedia.h
+++ b/indra/newview/llviewermedia.h
@@ -163,7 +163,7 @@ public:
static LLSD getHeaders();
private:
- static bool parseRawCookie(const std::string raw_cookie, std::string& name, std::string& value, std::string& path);
+ static bool parseRawCookie(const std::string raw_cookie, std::string& name, std::string& value, std::string& path, bool& httponly, bool& secure);
static void setOpenIDCookie(const std::string& url);
static void onTeleportFinished();