Index: content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc |
diff --git a/content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc b/content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc |
index 75e3ac464e13eae8981e59ebbd69e8180a51b54e..109b254b37ea0088744a0e3f9ec5b60ba7a1eba6 100644 |
--- a/content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc |
+++ b/content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc |
@@ -10,6 +10,7 @@ |
#include "content/browser/renderer_host/pepper/pepper_gamepad_host.h" |
#include "content/browser/renderer_host/pepper/pepper_print_settings_manager.h" |
#include "content/browser/renderer_host/pepper/pepper_printing_host.h" |
+#include "content/browser/renderer_host/pepper/pepper_udp_socket_private_host.h" |
#include "ppapi/host/message_filter_host.h" |
#include "ppapi/host/ppapi_host.h" |
#include "ppapi/host/resource_host.h" |
@@ -70,6 +71,19 @@ scoped_ptr<ResourceHost> ContentBrowserPepperHostFactory::CreateResourceHost( |
} |
} |
+ // UDPSocketPrivate interface. |
+ // |
+ // Permissions for UDPSocketPrivate interface will be checked at the |
+ // time of the instance's methods calls (because permission check |
+ // for UDPSocketPrivate can be performed only on the UI |
+ // thread). Currently this interface is available only for |
+ // whitelisted apps which may not have access to the other private |
+ // interfaces. |
+ if (message.type() == PpapiHostMsg_UDPSocketPrivate_Create::ID) { |
+ return scoped_ptr<ResourceHost>(new PepperUDPSocketPrivateHost( |
+ host_, instance, params.pp_resource())); |
+ } |
+ |
// Flash interfaces. |
if (GetPermissions().HasPermission(ppapi::PERMISSION_FLASH)) { |
switch (message.type()) { |