1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Multiply-included message header, no traditional include guard.
9 #include "base/basictypes.h"
10 #include "base/file_path.h"
11 #include "base/process.h"
12 #include "base/shared_memory.h"
13 #include "base/string16.h"
14 #include "base/sync_socket.h"
15 #include "gpu/command_buffer/common/command_buffer.h"
16 #include "gpu/ipc/gpu_command_buffer_traits.h"
17 #include "ipc/ipc_channel_handle.h"
18 #include "ipc/ipc_message_macros.h"
19 #include "ipc/ipc_message_utils.h"
20 #include "ipc/ipc_platform_file.h"
21 #include "ppapi/c/dev/pp_video_capture_dev.h"
22 #include "ppapi/c/dev/pp_video_dev.h"
23 #include "ppapi/c/dev/ppb_text_input_dev.h"
24 #include "ppapi/c/dev/ppp_printing_dev.h"
25 #include "ppapi/c/pp_bool.h"
26 #include "ppapi/c/pp_file_info.h"
27 #include "ppapi/c/pp_instance.h"
28 #include "ppapi/c/pp_module.h"
29 #include "ppapi/c/pp_point.h"
30 #include "ppapi/c/pp_rect.h"
31 #include "ppapi/c/pp_resource.h"
32 #include "ppapi/c/pp_size.h"
33 #include "ppapi/c/pp_time.h"
34 #include "ppapi/c/private/ppb_host_resolver_private.h"
35 #include "ppapi/c/private/ppb_net_address_private.h"
36 #include "ppapi/c/private/ppb_tcp_socket_private.h"
37 #include "ppapi/c/private/ppp_flash_browser_operations.h"
38 #include "ppapi/proxy/ppapi_param_traits.h"
39 #include "ppapi/proxy/ppapi_proxy_export.h"
40 #include "ppapi/proxy/resource_message_params.h"
41 #include "ppapi/proxy/serialized_flash_menu.h"
42 #include "ppapi/proxy/serialized_structs.h"
43 #include "ppapi/shared_impl/ppapi_preferences.h"
44 #include "ppapi/shared_impl/ppb_device_ref_shared.h"
45 #include "ppapi/shared_impl/ppb_input_event_shared.h"
46 #include "ppapi/shared_impl/ppb_network_list_private_shared.h"
47 #include "ppapi/shared_impl/ppb_url_request_info_shared.h"
48 #include "ppapi/shared_impl/ppb_view_shared.h"
49 #include "ppapi/shared_impl/ppp_flash_browser_operations_shared.h"
50 #include "ppapi/shared_impl/private/ppb_host_resolver_shared.h"
51 #include "ppapi/shared_impl/private/ppb_x509_certificate_private_shared.h"
53 #undef IPC_MESSAGE_EXPORT
54 #define IPC_MESSAGE_EXPORT PPAPI_PROXY_EXPORT
56 #define IPC_MESSAGE_START PpapiMsgStart
58 IPC_ENUM_TRAITS(PP_DeviceType_Dev
)
59 IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_Permission
)
60 IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_SettingType
)
61 IPC_ENUM_TRAITS(PP_InputEvent_MouseButton
)
62 IPC_ENUM_TRAITS(PP_InputEvent_Type
)
63 IPC_ENUM_TRAITS(PP_NetAddressFamily_Private
)
64 IPC_ENUM_TRAITS(PP_NetworkListType_Private
)
65 IPC_ENUM_TRAITS(PP_NetworkListState_Private
)
66 IPC_ENUM_TRAITS(PP_PrintOrientation_Dev
)
67 IPC_ENUM_TRAITS(PP_PrintOutputFormat_Dev
)
68 IPC_ENUM_TRAITS(PP_PrintScalingOption_Dev
)
69 IPC_ENUM_TRAITS(PP_TextInput_Type
)
70 IPC_ENUM_TRAITS(PP_VideoDecodeError_Dev
)
71 IPC_ENUM_TRAITS(PP_VideoDecoder_Profile
)
73 IPC_STRUCT_TRAITS_BEGIN(PP_Point
)
74 IPC_STRUCT_TRAITS_MEMBER(x
)
75 IPC_STRUCT_TRAITS_MEMBER(y
)
76 IPC_STRUCT_TRAITS_END()
78 IPC_STRUCT_TRAITS_BEGIN(PP_FloatPoint
)
79 IPC_STRUCT_TRAITS_MEMBER(x
)
80 IPC_STRUCT_TRAITS_MEMBER(y
)
81 IPC_STRUCT_TRAITS_END()
83 IPC_STRUCT_TRAITS_BEGIN(PP_Size
)
84 IPC_STRUCT_TRAITS_MEMBER(height
)
85 IPC_STRUCT_TRAITS_MEMBER(width
)
86 IPC_STRUCT_TRAITS_END()
88 IPC_STRUCT_TRAITS_BEGIN(PP_Rect
)
89 IPC_STRUCT_TRAITS_MEMBER(point
)
90 IPC_STRUCT_TRAITS_MEMBER(size
)
91 IPC_STRUCT_TRAITS_END()
93 IPC_STRUCT_TRAITS_BEGIN(PP_PictureBuffer_Dev
)
94 IPC_STRUCT_TRAITS_MEMBER(id
)
95 IPC_STRUCT_TRAITS_MEMBER(size
)
96 IPC_STRUCT_TRAITS_MEMBER(texture_id
)
97 IPC_STRUCT_TRAITS_END()
99 IPC_STRUCT_TRAITS_BEGIN(PP_Picture_Dev
)
100 IPC_STRUCT_TRAITS_MEMBER(picture_buffer_id
)
101 IPC_STRUCT_TRAITS_MEMBER(bitstream_buffer_id
)
102 IPC_STRUCT_TRAITS_END()
104 IPC_STRUCT_TRAITS_BEGIN(PP_PrintPageNumberRange_Dev
)
105 IPC_STRUCT_TRAITS_MEMBER(first_page_number
)
106 IPC_STRUCT_TRAITS_MEMBER(last_page_number
)
107 IPC_STRUCT_TRAITS_END()
109 IPC_STRUCT_TRAITS_BEGIN(PP_VideoCaptureDeviceInfo_Dev
)
110 IPC_STRUCT_TRAITS_MEMBER(width
)
111 IPC_STRUCT_TRAITS_MEMBER(height
)
112 IPC_STRUCT_TRAITS_MEMBER(frames_per_second
)
113 IPC_STRUCT_TRAITS_END()
115 IPC_STRUCT_TRAITS_BEGIN(PP_HostResolver_Private_Hint
)
116 IPC_STRUCT_TRAITS_MEMBER(family
)
117 IPC_STRUCT_TRAITS_MEMBER(flags
)
118 IPC_STRUCT_TRAITS_END()
120 IPC_STRUCT_TRAITS_BEGIN(PP_PrintSettings_Dev
)
121 IPC_STRUCT_TRAITS_MEMBER(printable_area
)
122 IPC_STRUCT_TRAITS_MEMBER(content_area
)
123 IPC_STRUCT_TRAITS_MEMBER(paper_size
)
124 IPC_STRUCT_TRAITS_MEMBER(dpi
)
125 IPC_STRUCT_TRAITS_MEMBER(orientation
)
126 IPC_STRUCT_TRAITS_MEMBER(print_scaling_option
)
127 IPC_STRUCT_TRAITS_MEMBER(grayscale
)
128 IPC_STRUCT_TRAITS_MEMBER(format
)
129 IPC_STRUCT_TRAITS_END()
131 IPC_STRUCT_TRAITS_BEGIN(ppapi::DeviceRefData
)
132 IPC_STRUCT_TRAITS_MEMBER(type
)
133 IPC_STRUCT_TRAITS_MEMBER(name
)
134 IPC_STRUCT_TRAITS_MEMBER(id
)
135 IPC_STRUCT_TRAITS_END()
137 IPC_STRUCT_TRAITS_BEGIN(ppapi::FlashSiteSetting
)
138 IPC_STRUCT_TRAITS_MEMBER(site
)
139 IPC_STRUCT_TRAITS_MEMBER(permission
)
140 IPC_STRUCT_TRAITS_END()
142 IPC_STRUCT_TRAITS_BEGIN(ppapi::ViewData
)
143 IPC_STRUCT_TRAITS_MEMBER(rect
)
144 IPC_STRUCT_TRAITS_MEMBER(is_fullscreen
)
145 IPC_STRUCT_TRAITS_MEMBER(is_page_visible
)
146 IPC_STRUCT_TRAITS_MEMBER(clip_rect
)
147 IPC_STRUCT_TRAITS_END()
149 IPC_STRUCT_TRAITS_BEGIN(PP_TouchPoint
)
150 IPC_STRUCT_TRAITS_MEMBER(id
)
151 IPC_STRUCT_TRAITS_MEMBER(position
)
152 IPC_STRUCT_TRAITS_MEMBER(radius
)
153 IPC_STRUCT_TRAITS_MEMBER(rotation_angle
)
154 IPC_STRUCT_TRAITS_MEMBER(pressure
)
155 IPC_STRUCT_TRAITS_END()
157 IPC_STRUCT_TRAITS_BEGIN(ppapi::Preferences
)
158 IPC_STRUCT_TRAITS_MEMBER(standard_font_family_map
)
159 IPC_STRUCT_TRAITS_MEMBER(fixed_font_family_map
)
160 IPC_STRUCT_TRAITS_MEMBER(serif_font_family_map
)
161 IPC_STRUCT_TRAITS_MEMBER(sans_serif_font_family_map
)
162 IPC_STRUCT_TRAITS_MEMBER(default_font_size
)
163 IPC_STRUCT_TRAITS_MEMBER(default_fixed_font_size
)
164 IPC_STRUCT_TRAITS_MEMBER(number_of_cpu_cores
)
165 IPC_STRUCT_TRAITS_MEMBER(is_3d_supported
)
166 IPC_STRUCT_TRAITS_MEMBER(is_stage3d_supported
)
167 IPC_STRUCT_TRAITS_END()
169 IPC_STRUCT_TRAITS_BEGIN(ppapi::InputEventData
)
170 IPC_STRUCT_TRAITS_MEMBER(is_filtered
)
171 IPC_STRUCT_TRAITS_MEMBER(event_type
)
172 IPC_STRUCT_TRAITS_MEMBER(event_time_stamp
)
173 IPC_STRUCT_TRAITS_MEMBER(event_modifiers
)
174 IPC_STRUCT_TRAITS_MEMBER(mouse_button
)
175 IPC_STRUCT_TRAITS_MEMBER(mouse_position
)
176 IPC_STRUCT_TRAITS_MEMBER(mouse_click_count
)
177 IPC_STRUCT_TRAITS_MEMBER(mouse_movement
)
178 IPC_STRUCT_TRAITS_MEMBER(wheel_delta
)
179 IPC_STRUCT_TRAITS_MEMBER(wheel_ticks
)
180 IPC_STRUCT_TRAITS_MEMBER(wheel_scroll_by_page
)
181 IPC_STRUCT_TRAITS_MEMBER(key_code
)
182 IPC_STRUCT_TRAITS_MEMBER(usb_key_code
)
183 IPC_STRUCT_TRAITS_MEMBER(character_text
)
184 IPC_STRUCT_TRAITS_MEMBER(composition_segment_offsets
)
185 IPC_STRUCT_TRAITS_MEMBER(composition_target_segment
)
186 IPC_STRUCT_TRAITS_MEMBER(composition_selection_start
)
187 IPC_STRUCT_TRAITS_MEMBER(composition_selection_end
)
188 IPC_STRUCT_TRAITS_MEMBER(touches
)
189 IPC_STRUCT_TRAITS_MEMBER(changed_touches
)
190 IPC_STRUCT_TRAITS_MEMBER(target_touches
)
191 IPC_STRUCT_TRAITS_END()
193 IPC_STRUCT_TRAITS_BEGIN(ppapi::HostPortPair
)
194 IPC_STRUCT_TRAITS_MEMBER(host
)
195 IPC_STRUCT_TRAITS_MEMBER(port
)
196 IPC_STRUCT_TRAITS_END()
198 IPC_STRUCT_TRAITS_BEGIN(ppapi::PPB_URLRequestInfo_Data
)
199 IPC_STRUCT_TRAITS_MEMBER(url
)
200 IPC_STRUCT_TRAITS_MEMBER(method
)
201 IPC_STRUCT_TRAITS_MEMBER(headers
)
202 IPC_STRUCT_TRAITS_MEMBER(stream_to_file
)
203 IPC_STRUCT_TRAITS_MEMBER(follow_redirects
)
204 IPC_STRUCT_TRAITS_MEMBER(record_download_progress
)
205 IPC_STRUCT_TRAITS_MEMBER(record_upload_progress
)
206 IPC_STRUCT_TRAITS_MEMBER(has_custom_referrer_url
)
207 IPC_STRUCT_TRAITS_MEMBER(custom_referrer_url
)
208 IPC_STRUCT_TRAITS_MEMBER(allow_cross_origin_requests
)
209 IPC_STRUCT_TRAITS_MEMBER(allow_credentials
)
210 IPC_STRUCT_TRAITS_MEMBER(has_custom_content_transfer_encoding
)
211 IPC_STRUCT_TRAITS_MEMBER(custom_content_transfer_encoding
)
212 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_upper_threshold
)
213 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_lower_threshold
)
214 IPC_STRUCT_TRAITS_MEMBER(body
)
215 IPC_STRUCT_TRAITS_END()
217 IPC_STRUCT_TRAITS_BEGIN(ppapi::PPB_URLRequestInfo_Data::BodyItem
)
218 IPC_STRUCT_TRAITS_MEMBER(is_file
)
219 IPC_STRUCT_TRAITS_MEMBER(data
)
220 // Note: we don't serialize file_ref.
221 IPC_STRUCT_TRAITS_MEMBER(file_ref_host_resource
)
222 IPC_STRUCT_TRAITS_MEMBER(start_offset
)
223 IPC_STRUCT_TRAITS_MEMBER(number_of_bytes
)
224 IPC_STRUCT_TRAITS_MEMBER(expected_last_modified_time
)
225 IPC_STRUCT_TRAITS_END()
227 #if !defined(OS_NACL)
228 IPC_STRUCT_TRAITS_BEGIN(ppapi::proxy::PPPVideoCapture_Buffer
)
229 IPC_STRUCT_TRAITS_MEMBER(resource
)
230 IPC_STRUCT_TRAITS_MEMBER(handle
)
231 IPC_STRUCT_TRAITS_MEMBER(size
)
232 IPC_STRUCT_TRAITS_END()
234 IPC_STRUCT_TRAITS_BEGIN(ppapi::NetworkInfo
)
235 IPC_STRUCT_TRAITS_MEMBER(name
)
236 IPC_STRUCT_TRAITS_MEMBER(type
)
237 IPC_STRUCT_TRAITS_MEMBER(state
)
238 IPC_STRUCT_TRAITS_MEMBER(addresses
)
239 IPC_STRUCT_TRAITS_MEMBER(display_name
)
240 IPC_STRUCT_TRAITS_MEMBER(mtu
)
241 IPC_STRUCT_TRAITS_END()
242 #endif // !defined(OS_NACL)
244 // These are from the browser to the plugin.
245 // Loads the given plugin.
246 IPC_MESSAGE_CONTROL1(PpapiMsg_LoadPlugin
, FilePath
/* path */)
248 // Creates a channel to talk to a renderer. The plugin will respond with
249 // PpapiHostMsg_ChannelCreated.
250 IPC_MESSAGE_CONTROL2(PpapiMsg_CreateChannel
,
251 int /* renderer_id */,
252 bool /* incognito */)
254 // Each plugin may be referenced by multiple renderers. We need the instance
255 // IDs to be unique within a plugin, despite coming from different renderers,
256 // and unique within a renderer, despite going to different plugins. This means
257 // that neither the renderer nor the plugin can generate instance IDs without
258 // consulting the other.
260 // We resolve this by having the renderer generate a unique instance ID inside
261 // its process. It then asks the plugin to reserve that ID by sending this sync
262 // message. If the plugin has not yet seen this ID, it will remember it as used
263 // (to prevent a race condition if another renderer tries to then use the same
264 // instance), and set usable as true.
266 // If the plugin has already seen the instance ID, it will set usable as false
267 // and the renderer must retry a new instance ID.
268 IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_ReserveInstanceId
,
269 PP_Instance
/* instance */,
272 // Passes the WebKit preferences to the plugin.
273 IPC_MESSAGE_CONTROL1(PpapiMsg_SetPreferences
,
276 // Sent in both directions to see if the other side supports the given
278 IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_SupportsInterface
,
279 std::string
/* interface_name */,
282 #if !defined(OS_NACL)
283 // Network state notification from the browser for implementing
284 // PPP_NetworkState_Dev.
285 IPC_MESSAGE_CONTROL1(PpapiMsg_SetNetworkState
,
288 // Instructs the plugin to clear data for the given site & time. The plugin
289 // process will respond with PpapiHostMsg_ClearSiteDataResult. This is used
291 IPC_MESSAGE_CONTROL4(PpapiMsg_ClearSiteData
,
292 FilePath
/* plugin_data_path */,
293 std::string
/* site */,
295 uint64
/* max_age */)
296 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ClearSiteDataResult
,
299 IPC_MESSAGE_CONTROL2(PpapiMsg_DeauthorizeContentLicenses
,
300 uint32
/* request_id */,
301 FilePath
/* plugin_data_path */)
302 IPC_MESSAGE_CONTROL2(PpapiHostMsg_DeauthorizeContentLicensesResult
,
303 uint32
/* request_id */,
306 IPC_MESSAGE_CONTROL3(PpapiMsg_GetPermissionSettings
,
307 uint32
/* request_id */,
308 FilePath
/* plugin_data_path */,
309 PP_Flash_BrowserOperations_SettingType
/* setting_type */)
310 IPC_MESSAGE_CONTROL4(
311 PpapiHostMsg_GetPermissionSettingsResult
,
312 uint32
/* request_id */,
314 PP_Flash_BrowserOperations_Permission
/* default_permission */,
315 ppapi::FlashSiteSettings
/* sites */)
317 IPC_MESSAGE_CONTROL5(PpapiMsg_SetDefaultPermission
,
318 uint32
/* request_id */,
319 FilePath
/* plugin_data_path */,
320 PP_Flash_BrowserOperations_SettingType
/* setting_type */,
321 PP_Flash_BrowserOperations_Permission
/* permission */,
322 bool /* clear_site_specific */)
323 IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetDefaultPermissionResult
,
324 uint32
/* request_id */,
327 IPC_MESSAGE_CONTROL4(PpapiMsg_SetSitePermission
,
328 uint32
/* request_id */,
329 FilePath
/* plugin_data_path */,
330 PP_Flash_BrowserOperations_SettingType
/* setting_type */,
331 ppapi::FlashSiteSettings
/* sites */)
332 IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetSitePermissionResult
,
333 uint32
/* request_id */,
337 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiMsg_ConnectToPlugin
,
338 PP_Instance
/* instance */,
339 IPC::PlatformFileForTransit
/* handle */,
340 int32_t /* result */)
341 #endif // !defined(OS_NACL)
345 // Notifies the result of the audio stream create call. This is called in
346 // both error cases and in the normal success case. These cases are
347 // differentiated by the result code, which is one of the standard PPAPI
350 // The handler of this message should always close all of the handles passed
351 // in, since some could be valid even in the error case.
352 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBAudio_NotifyAudioStreamCreated
,
353 ppapi::HostResource
/* audio_id */,
354 int32_t /* result_code (will be != PP_OK on failure) */,
355 IPC::PlatformFileForTransit
/* socket_handle */,
356 base::SharedMemoryHandle
/* handle */,
357 int32_t /* length */)
359 // PPB_AudioInput_Dev.
360 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBAudioInput_EnumerateDevicesACK
,
361 ppapi::HostResource
/* audio_input */,
362 int32_t /* result */,
363 std::vector
<ppapi::DeviceRefData
> /* devices */)
364 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBAudioInput_OpenACK
,
365 ppapi::HostResource
/* audio_input */,
366 int32_t /* result_code (will be != PP_OK on failure) */,
367 IPC::PlatformFileForTransit
/* socket_handle */,
368 base::SharedMemoryHandle
/* handle */,
369 int32_t /* length */)
372 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBFileIO_GeneralComplete
,
373 ppapi::HostResource
/* file_io */,
374 int32_t /* result */)
375 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBFileIO_OpenFileComplete
,
376 ppapi::HostResource
/* file_io */,
377 int32_t /* result */)
378 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFileIO_QueryComplete
,
379 ppapi::HostResource
/* file_io */,
380 int32_t /* result */,
381 PP_FileInfo
/* info */)
382 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFileIO_ReadComplete
,
383 ppapi::HostResource
/* file_io */,
384 int32_t /* result */,
385 std::string
/* data */)
389 PpapiMsg_PPBFileRef_CallbackComplete
,
390 ppapi::HostResource
/* resource */,
391 int /* callback_id */,
392 int32_t /* result */)
396 PpapiMsg_PPBFileSystem_OpenComplete
,
397 ppapi::HostResource
/* filesystem */,
398 int32_t /* result */)
401 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics2D_FlushACK
,
402 ppapi::HostResource
/* graphics_2d */,
403 int32_t /* pp_error */)
406 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics3D_SwapBuffersACK
,
407 ppapi::HostResource
/* graphics_3d */,
408 int32_t /* pp_error */)
411 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBInstance_MouseLockComplete
,
412 PP_Instance
/* instance */,
413 int32_t /* result */)
416 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasProperty
,
417 int64
/* ppp_class */,
419 ppapi::proxy::SerializedVar
/* property */,
420 ppapi::proxy::SerializedVar
/* out_exception */,
422 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasMethod
,
423 int64
/* ppp_class */,
425 ppapi::proxy::SerializedVar
/* method */,
426 ppapi::proxy::SerializedVar
/* out_exception */,
428 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_GetProperty
,
429 int64
/* ppp_class */,
431 ppapi::proxy::SerializedVar
/* property */,
432 ppapi::proxy::SerializedVar
/* out_exception */,
433 ppapi::proxy::SerializedVar
/* result */)
434 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiMsg_PPPClass_EnumerateProperties
,
435 int64
/* ppp_class */,
437 std::vector
<ppapi::proxy::SerializedVar
> /* props */,
438 ppapi::proxy::SerializedVar
/* out_exception */)
439 IPC_SYNC_MESSAGE_ROUTED4_1(PpapiMsg_PPPClass_SetProperty
,
440 int64
/* ppp_class */,
442 ppapi::proxy::SerializedVar
/* name */,
443 ppapi::proxy::SerializedVar
/* value */,
444 ppapi::proxy::SerializedVar
/* out_exception */)
445 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPClass_RemoveProperty
,
446 int64
/* ppp_class */,
448 ppapi::proxy::SerializedVar
/* property */,
449 ppapi::proxy::SerializedVar
/* out_exception */)
450 IPC_SYNC_MESSAGE_ROUTED4_2(PpapiMsg_PPPClass_Call
,
451 int64
/* ppp_class */,
453 ppapi::proxy::SerializedVar
/* method_name */,
454 std::vector
<ppapi::proxy::SerializedVar
> /* args */,
455 ppapi::proxy::SerializedVar
/* out_exception */,
456 ppapi::proxy::SerializedVar
/* result */)
457 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_Construct
,
458 int64
/* ppp_class */,
460 std::vector
<ppapi::proxy::SerializedVar
> /* args */,
461 ppapi::proxy::SerializedVar
/* out_exception */,
462 ppapi::proxy::SerializedVar
/* result */)
463 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPClass_Deallocate
,
464 int64
/* ppp_class */,
467 // PPB_Flash_DeviceID.
468 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBFlashDeviceID_GetReply
,
469 int32
/* routing_id */,
470 PP_Resource
/* resource */,
472 std::string
/* value */)
474 // PPP_Graphics3D_Dev.
475 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPGraphics3D_ContextLost
,
476 PP_Instance
/* instance */)
479 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent
,
480 PP_Instance
/* instance */,
481 ppapi::InputEventData
/* data */)
482 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInputEvent_HandleFilteredInputEvent
,
483 PP_Instance
/* instance */,
484 ppapi::InputEventData
/* data */,
485 PP_Bool
/* result */)
486 // (Message from the plugin to the browser that it handled an input event.)
487 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent_ACK
,
488 PP_Instance
/* instance */,
489 PP_TimeTicks
/* timestamp */)
492 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPInstance_DidCreate
,
493 PP_Instance
/* instance */,
494 std::vector
<std::string
> /* argn */,
495 std::vector
<std::string
> /* argv */,
496 PP_Bool
/* result */)
497 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiMsg_PPPInstance_DidDestroy
,
498 PP_Instance
/* instance */)
499 IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_DidChangeView
,
500 PP_Instance
/* instance */,
501 ppapi::ViewData
/* new_data */,
502 PP_Bool
/* flash_fullscreen */)
503 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInstance_DidChangeFocus
,
504 PP_Instance
/* instance */,
505 PP_Bool
/* has_focus */)
506 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInstance_HandleDocumentLoad
,
507 PP_Instance
/* instance */,
508 ppapi::HostResource
/* url_loader */,
509 PP_Bool
/* result */)
512 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPMessaging_HandleMessage
,
513 PP_Instance
/* instance */,
514 ppapi::proxy::SerializedVar
/* message */)
517 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPMouseLock_MouseLockLost
,
518 PP_Instance
/* instance */)
521 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_QuerySupportedFormats
,
522 PP_Instance
/* instance */,
523 uint32_t /* result */)
524 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_Begin
,
525 PP_Instance
/* instance */,
526 std::string
/* settings_string */,
527 int32_t /* result */)
528 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_PrintPages
,
529 PP_Instance
/* instance */,
530 std::vector
<PP_PrintPageNumberRange_Dev
> /* pages */,
531 ppapi::HostResource
/* result */)
532 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPPrinting_End
,
533 PP_Instance
/* instance */)
534 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_IsScalingDisabled
,
535 PP_Instance
/* instance */,
539 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPTextInput_RequestSurroundingText
,
540 PP_Instance
/* instance */,
541 uint32_t /* desired_number_of_characters */)
544 // (Messages from browser to plugin to notify it of changes in state.)
545 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBURLLoader_ReadResponseBody_Ack
,
546 ppapi::HostResource
/* loader */,
548 std::string
/* data */)
549 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBURLLoader_CallbackComplete
,
550 ppapi::HostResource
/* loader */,
551 int32_t /* result */)
552 #if !defined(OS_NACL)
555 PpapiMsg_PPBBroker_ConnectComplete
,
556 ppapi::HostResource
/* broker */,
557 IPC::PlatformFileForTransit
/* handle */,
558 int32_t /* result */)
562 PpapiMsg_PPBFileChooser_ChooseComplete
,
563 ppapi::HostResource
/* chooser */,
564 int32_t /* result_code (will be != PP_OK on failure */,
565 std::vector
<ppapi::PPB_FileRef_CreateInfo
> /* chosen_files */)
567 // PPB_NetworkMonitor_Private.
568 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBNetworkMonitor_NetworkList
,
569 uint32
/* plugin_dispatcher_id */,
570 ppapi::NetworkList
/* network_list */)
574 PpapiMsg_PPBTalk_GetPermissionACK
,
575 uint32
/* plugin_dispatcher_id */,
576 PP_Resource
/* resource */,
577 int32_t /* result */)
579 // PPB_TCPSocket_Private.
580 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPSocket_ConnectACK
,
581 uint32
/* plugin_dispatcher_id */,
582 uint32
/* socket_id */,
583 bool /* succeeded */,
584 PP_NetAddress_Private
/* local_addr */,
585 PP_NetAddress_Private
/* remote_addr */)
586 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_SSLHandshakeACK
,
587 uint32
/* plugin_dispatcher_id */,
588 uint32
/* socket_id */,
589 bool /* succeeded */,
590 ppapi::PPB_X509Certificate_Fields
/* certificate_fields */)
591 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_ReadACK
,
592 uint32
/* plugin_dispatcher_id */,
593 uint32
/* socket_id */,
594 bool /* succeeded */,
595 std::string
/* data */)
596 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_WriteACK
,
597 uint32
/* plugin_dispatcher_id */,
598 uint32
/* socket_id */,
599 bool /* succeeded */,
600 int32_t /* bytes_written */)
602 // PPB_UDPSocket_Private.
603 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBUDPSocket_BindACK
,
604 uint32
/* plugin_dispatcher_id */,
605 uint32
/* socket_id */,
606 bool /* succeeded */,
607 PP_NetAddress_Private
/* bound_addr */)
608 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBUDPSocket_RecvFromACK
,
609 uint32
/* plugin_dispatcher_id */,
610 uint32
/* socket_id */,
611 bool /* succeeded */,
612 std::string
/* data */,
613 PP_NetAddress_Private
/* remote_addr */)
614 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBUDPSocket_SendToACK
,
615 uint32
/* plugin_dispatcher_id */,
616 uint32
/* socket_id */,
617 bool /* succeeded */,
618 int32_t /* bytes_written */)
620 // PPB_URLLoader_Trusted
622 PpapiMsg_PPBURLLoader_UpdateProgress
,
623 ppapi::proxy::PPBURLLoader_UpdateProgress_Params
/* params */)
625 // PPB_TCPServerSocket_Private.
627 // |socket_resource| should not be used as Resource in browser. The
628 // only purpose of this argument is to be echoed back.
629 // |status| == PP_ERROR_NOSPACE means that the socket table is full
630 // and new socket can't be initialized.
631 // |status| == PP_ERROR_FAILED means that socket is correctly
632 // initialized (if needed) but Listen call is failed.
633 // |status| == PP_OK means that socket is correctly initialized (if
634 // needed) and Listen call succeeds.
635 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPServerSocket_ListenACK
,
636 uint32
/* plugin_dispatcher_id */,
637 PP_Resource
/* socket_resource */,
638 uint32
/* socket_id */,
639 int32_t /* status */)
640 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPServerSocket_AcceptACK
,
641 uint32
/* plugin_dispatcher_id */,
642 uint32
/* server_socket_id */,
643 uint32
/* accepted_socket_id */,
644 PP_NetAddress_Private
/* local_addr */,
645 PP_NetAddress_Private
/* remote_addr */)
647 // PPB_HostResolver_Private.
648 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBHostResolver_ResolveACK
,
649 uint32
/* plugin_dispatcher_id */,
650 uint32
/* host_resolver_id */,
651 bool /* succeeded */,
652 std::string
/* canonical_name */,
653 ppapi::NetAddressList
/* net_address_list */)
655 // PPP_Instance_Private.
656 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPInstancePrivate_GetInstanceObject
,
657 PP_Instance
/* instance */,
658 ppapi::proxy::SerializedVar
/* result */)
660 // PPB_VideoCapture_Dev
661 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoCapture_EnumerateDevicesACK
,
662 ppapi::HostResource
/* video_capture */,
663 int32_t /* result */,
664 std::vector
<ppapi::DeviceRefData
> /* devices */)
665 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoCapture_OpenACK
,
666 ppapi::HostResource
/* video_capture */,
667 int32_t /* result */)
669 // PPP_VideoCapture_Dev
671 PpapiMsg_PPPVideoCapture_OnDeviceInfo
,
672 ppapi::HostResource
/* video_capture */,
673 PP_VideoCaptureDeviceInfo_Dev
/* info */,
674 std::vector
<ppapi::proxy::PPPVideoCapture_Buffer
> /* buffers */)
675 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnStatus
,
676 ppapi::HostResource
/* video_capture */,
677 uint32_t /* status */)
678 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnError
,
679 ppapi::HostResource
/* video_capture */,
680 uint32_t /* error_code */)
681 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnBufferReady
,
682 ppapi::HostResource
/* video_capture */,
683 uint32_t /* buffer */)
685 // PPB_VideoDecoder_Dev.
686 // (Messages from renderer to plugin to notify it to run callbacks.)
687 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoDecoder_EndOfBitstreamACK
,
688 ppapi::HostResource
/* video_decoder */,
689 int32_t /* bitstream buffer id */,
690 int32_t /* PP_CompletionCallback result */)
691 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_FlushACK
,
692 ppapi::HostResource
/* video_decoder */,
693 int32_t /* PP_CompletionCallback result */)
694 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_ResetACK
,
695 ppapi::HostResource
/* video_decoder */,
696 int32_t /* PP_CompletionCallback result */)
698 // PPP_VideoDecoder_Dev.
699 IPC_MESSAGE_ROUTED4(PpapiMsg_PPPVideoDecoder_ProvidePictureBuffers
,
700 ppapi::HostResource
/* video_decoder */,
701 uint32_t /* requested number of buffers */,
702 PP_Size
/* dimensions of buffers */,
703 uint32_t /* texture_target */)
704 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_DismissPictureBuffer
,
705 ppapi::HostResource
/* video_decoder */,
706 int32_t /* picture buffer id */)
707 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_PictureReady
,
708 ppapi::HostResource
/* video_decoder */,
709 PP_Picture_Dev
/* output picture */)
710 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_NotifyError
,
711 ppapi::HostResource
/* video_decoder */,
712 PP_VideoDecodeError_Dev
/* error */)
713 #endif // !defined(OS_NACL)
715 // -----------------------------------------------------------------------------
716 // These are from the plugin to the renderer.
718 // Reply to PpapiMsg_CreateChannel. The handle will be NULL if the channel
719 // could not be established. This could be because the IPC could not be created
720 // for some weird reason, but more likely that the plugin failed to load or
721 // initialize properly.
722 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ChannelCreated
,
723 IPC::ChannelHandle
/* handle */)
725 // Logs the given message to the console of all instances.
726 IPC_MESSAGE_CONTROL4(PpapiHostMsg_LogWithSource
,
727 PP_Instance
/* instance */,
729 std::string
/* source */,
730 std::string
/* value */)
733 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBAudio_Create
,
734 PP_Instance
/* instance_id */,
735 int32_t /* sample_rate */,
736 uint32_t /* sample_frame_count */,
737 ppapi::HostResource
/* result */)
738 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudio_StartOrStop
,
739 ppapi::HostResource
/* audio_id */,
743 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBAudioInput_Create
,
744 PP_Instance
/* instance */,
745 ppapi::HostResource
/* result */)
746 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBAudioInput_EnumerateDevices
,
747 ppapi::HostResource
/* audio_input */)
748 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBAudioInput_Open
,
749 ppapi::HostResource
/* audio_input */,
750 std::string
/* device_id */,
751 int32_t /* sample_rate */,
752 uint32_t /* sample_frame_count */)
753 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudioInput_StartOrStop
,
754 ppapi::HostResource
/* audio_input */,
756 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBAudioInput_Close
,
757 ppapi::HostResource
/* audio_input */)
760 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_AddRefResource
,
762 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_ReleaseResource
,
766 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileIO_Create
,
767 PP_Instance
/* instance */,
768 ppapi::HostResource
/* result */)
769 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Open
,
770 ppapi::HostResource
/* host_resource */,
771 ppapi::HostResource
/* file_ref_resource */,
772 int32_t /* open_flags */)
773 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Close
,
774 ppapi::HostResource
/* host_resource */)
775 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Query
,
776 ppapi::HostResource
/* host_resource */)
777 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Touch
,
778 ppapi::HostResource
/* host_resource */,
779 PP_Time
/* last_access_time */,
780 PP_Time
/* last_modified_time */)
781 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Read
,
782 ppapi::HostResource
/* host_resource */,
783 int64_t /* offset */,
784 int32_t /* bytes_to_read */)
785 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Write
,
786 ppapi::HostResource
/* host_resource */,
787 int64_t /* offset */,
788 std::string
/* data */)
789 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileIO_SetLength
,
790 ppapi::HostResource
/* host_resource */,
791 int64_t /* length */)
792 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Flush
,
793 ppapi::HostResource
/* host_resource */)
794 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_WillWrite
,
795 ppapi::HostResource
/* host_resource */,
796 int64_t /* offset */,
797 int32_t /* bytes_to_write */)
798 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileIO_WillSetLength
,
799 ppapi::HostResource
/* host_resource */,
800 int64_t /* length */)
803 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFileRef_Create
,
804 ppapi::HostResource
/* file_system */,
805 std::string
/* path */,
806 ppapi::PPB_FileRef_CreateInfo
/* result */)
807 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetParent
,
808 ppapi::HostResource
/* file_ref */,
809 ppapi::PPB_FileRef_CreateInfo
/* result */)
810 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_MakeDirectory
,
811 ppapi::HostResource
/* file_ref */,
812 PP_Bool
/* make_ancestors */,
813 int /* callback_id */)
814 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFileRef_Touch
,
815 ppapi::HostResource
/* file_ref */,
816 PP_Time
/* last_access */,
817 PP_Time
/* last_modified */,
818 int /* callback_id */)
819 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileRef_Delete
,
820 ppapi::HostResource
/* file_ref */,
821 int /* callback_id */)
822 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_Rename
,
823 ppapi::HostResource
/* file_ref */,
824 ppapi::HostResource
/* new_file_ref */,
825 int /* callback_id */)
826 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetAbsolutePath
,
827 ppapi::HostResource
/* file_ref */,
828 ppapi::proxy::SerializedVar
/* result */)
831 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFileSystem_Create
,
832 PP_Instance
/* instance */,
834 ppapi::HostResource
/* result */)
835 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileSystem_Open
,
836 ppapi::HostResource
/* result */,
837 int64_t /* expected_size */)
840 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics2D_Create
,
841 PP_Instance
/* instance */,
843 PP_Bool
/* is_always_opaque */,
844 ppapi::HostResource
/* result */)
845 IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBGraphics2D_PaintImageData
,
846 ppapi::HostResource
/* graphics_2d */,
847 ppapi::HostResource
/* image_data */,
848 PP_Point
/* top_left */,
849 bool /* src_rect_specified */,
850 PP_Rect
/* src_rect */)
851 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBGraphics2D_Scroll
,
852 ppapi::HostResource
/* graphics_2d */,
853 bool /* clip_specified */,
855 PP_Point
/* amount */)
856 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics2D_ReplaceContents
,
857 ppapi::HostResource
/* graphics_2d */,
858 ppapi::HostResource
/* image_data */)
859 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics2D_Flush
,
860 ppapi::HostResource
/* graphics_2d */)
862 #if !defined(OS_NACL)
864 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics3D_Create
,
865 PP_Instance
/* instance */,
866 ppapi::HostResource
/* share_context */,
867 std::vector
<int32_t> /* attrib_list */,
868 ppapi::HostResource
/* result */)
869 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBGraphics3D_InitCommandBuffer
,
870 ppapi::HostResource
/* context */)
871 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_SetGetBuffer
,
872 ppapi::HostResource
/* context */,
873 int32
/* transfer_buffer_id */)
874 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBGraphics3D_GetState
,
875 ppapi::HostResource
/* context */,
876 gpu::CommandBuffer::State
/* state */,
878 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBGraphics3D_Flush
,
879 ppapi::HostResource
/* context */,
880 int32
/* put_offset */,
881 int32
/* last_known_get */,
882 gpu::CommandBuffer::State
/* state */,
884 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics3D_AsyncFlush
,
885 ppapi::HostResource
/* context */,
886 int32
/* put_offset */)
887 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBGraphics3D_CreateTransferBuffer
,
888 ppapi::HostResource
/* context */,
891 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_DestroyTransferBuffer
,
892 ppapi::HostResource
/* context */,
894 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBGraphics3D_GetTransferBuffer
,
895 ppapi::HostResource
/* context */,
897 base::SharedMemoryHandle
/* transfer_buffer */,
899 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics3D_SwapBuffers
,
900 ppapi::HostResource
/* graphics_3d */)
901 #endif // !defined(OS_NACL)
904 IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_Create
,
905 PP_Instance
/* instance */,
908 PP_Bool
/* init_to_zero */,
909 ppapi::HostResource
/* result_resource */,
910 std::string
/* image_data_desc */,
911 ppapi::proxy::ImageHandle
/* result */)
914 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetWindowObject
,
915 PP_Instance
/* instance */,
916 ppapi::proxy::SerializedVar
/* result */)
917 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetOwnerElementObject
,
918 PP_Instance
/* instance */,
919 ppapi::proxy::SerializedVar
/* result */)
920 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_BindGraphics
,
921 PP_Instance
/* instance */,
922 ppapi::HostResource
/* device */,
923 PP_Bool
/* result */)
924 IPC_SYNC_MESSAGE_ROUTED1_1(
925 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputSampleRate
,
926 PP_Instance
/* instance */,
927 uint32_t /* result */)
928 IPC_SYNC_MESSAGE_ROUTED1_1(
929 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputBufferSize
,
930 PP_Instance
/* instance */,
931 uint32_t /* result */)
932 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_IsFullFrame
,
933 PP_Instance
/* instance */,
934 PP_Bool
/* result */)
935 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBInstance_ExecuteScript
,
936 PP_Instance
/* instance */,
937 ppapi::proxy::SerializedVar
/* script */,
938 ppapi::proxy::SerializedVar
/* out_exception */,
939 ppapi::proxy::SerializedVar
/* result */)
940 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDefaultCharSet
,
941 PP_Instance
/* instance */,
942 ppapi::proxy::SerializedVar
/* result */)
943 IPC_SYNC_MESSAGE_CONTROL0_1(PpapiHostMsg_PPBInstance_GetFontFamilies
,
944 std::string
/* result */)
945 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_SetFullscreen
,
946 PP_Instance
/* instance */,
947 PP_Bool
/* fullscreen */,
948 PP_Bool
/* result */)
949 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetScreenSize
,
950 PP_Instance
/* instance */,
951 PP_Bool
/* result */,
953 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_RequestInputEvents
,
954 PP_Instance
/* instance */,
955 bool /* is_filtering */,
956 uint32_t /* event_classes */)
957 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_ClearInputEvents
,
958 PP_Instance
/* instance */,
959 uint32_t /* event_classes */)
960 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_PostMessage
,
961 PP_Instance
/* instance */,
962 ppapi::proxy::SerializedVar
/* message */)
963 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_LockMouse
,
964 PP_Instance
/* instance */)
965 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_UnlockMouse
,
966 PP_Instance
/* instance */)
967 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBPInstance_GetDefaultPrintSettings
,
968 PP_Instance
/* instance */,
969 PP_PrintSettings_Dev
/* settings */,
971 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_ResolveRelativeToDocument
,
972 PP_Instance
/* instance */,
973 ppapi::proxy::SerializedVar
/* relative */,
974 ppapi::proxy::SerializedVar
/* result */)
975 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanRequest
,
976 PP_Instance
/* instance */,
977 ppapi::proxy::SerializedVar
/* relative */,
978 PP_Bool
/* result */)
979 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanAccessDocument
,
980 PP_Instance
/* active */,
981 PP_Instance
/* target */,
982 PP_Bool
/* result */)
983 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDocumentURL
,
984 PP_Instance
/* active */,
985 ppapi::proxy::SerializedVar
/* result */)
986 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetPluginInstanceURL
,
987 PP_Instance
/* active */,
988 ppapi::proxy::SerializedVar
/* result */)
989 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_SetCursor
,
990 PP_Instance
/* instance */,
992 ppapi::HostResource
/* custom_image */,
993 PP_Point
/* hot_spot */)
994 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SetTextInputType
,
995 PP_Instance
/* instance */,
996 PP_TextInput_Type
/* type */)
997 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_UpdateCaretPosition
,
998 PP_Instance
/* instance */,
1000 PP_Rect
/* bounding_box */)
1001 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_CancelCompositionText
,
1002 PP_Instance
/* instance */)
1003 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_UpdateSurroundingText
,
1004 PP_Instance
/* instance */,
1005 std::string
/* text */,
1006 uint32_t /* caret */,
1007 uint32_t /* anchor */)
1010 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBURLLoader_Create
,
1011 PP_Instance
/* instance */,
1012 ppapi::HostResource
/* result */)
1013 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBURLLoader_Open
,
1014 ppapi::HostResource
/* loader */,
1015 ppapi::PPB_URLRequestInfo_Data
/* request_data */)
1016 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_FollowRedirect
,
1017 ppapi::HostResource
/* loader */)
1018 IPC_SYNC_MESSAGE_ROUTED1_1(
1019 PpapiHostMsg_PPBURLLoader_GetResponseInfo
,
1020 ppapi::HostResource
/* loader */,
1021 ppapi::HostResource
/* response_info_out */)
1022 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBURLLoader_ReadResponseBody
,
1023 ppapi::HostResource
/* loader */,
1024 int32_t /* bytes_to_read */)
1025 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_FinishStreamingToFile
,
1026 ppapi::HostResource
/* loader */)
1027 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_Close
,
1028 ppapi::HostResource
/* loader */)
1029 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_GrantUniversalAccess
,
1030 ppapi::HostResource
/* loader */)
1032 // PPB_URLResponseInfo.
1033 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBURLResponseInfo_GetProperty
,
1034 ppapi::HostResource
/* response */,
1035 int32_t /* property */,
1036 ppapi::proxy::SerializedVar
/* result */)
1037 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBURLResponseInfo_GetBodyAsFileRef
,
1038 ppapi::HostResource
/* response */,
1039 ppapi::PPB_FileRef_CreateInfo
/* result */)
1042 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVar_AddRefObject
,
1043 int64
/* object_id */,
1044 int /* unused - need a return value for sync msgs */)
1045 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVar_ReleaseObject
,
1046 int64
/* object_id */)
1047 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_ConvertType
,
1048 PP_Instance
/* instance */,
1049 ppapi::proxy::SerializedVar
/* var */,
1051 ppapi::proxy::SerializedVar
/* exception */,
1052 ppapi::proxy::SerializedVar
/* result */)
1053 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasProperty
,
1054 ppapi::proxy::SerializedVar
/* object */,
1055 ppapi::proxy::SerializedVar
/* property */,
1056 ppapi::proxy::SerializedVar
/* out_exception */,
1057 PP_Bool
/* result */)
1058 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasMethodDeprecated
,
1059 ppapi::proxy::SerializedVar
/* object */,
1060 ppapi::proxy::SerializedVar
/* method */,
1061 ppapi::proxy::SerializedVar
/* out_exception */,
1062 PP_Bool
/* result */)
1063 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_GetProperty
,
1064 ppapi::proxy::SerializedVar
/* object */,
1065 ppapi::proxy::SerializedVar
/* property */,
1066 ppapi::proxy::SerializedVar
/* out_exception */,
1067 ppapi::proxy::SerializedVar
/* result */)
1068 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_DeleteProperty
,
1069 ppapi::proxy::SerializedVar
/* object */,
1070 ppapi::proxy::SerializedVar
/* property */,
1071 ppapi::proxy::SerializedVar
/* out_exception */,
1072 PP_Bool
/* result */)
1073 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBVar_EnumerateProperties
,
1074 ppapi::proxy::SerializedVar
/* object */,
1075 std::vector
<ppapi::proxy::SerializedVar
> /* props */,
1076 ppapi::proxy::SerializedVar
/* out_exception */)
1077 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_SetPropertyDeprecated
,
1078 ppapi::proxy::SerializedVar
/* object */,
1079 ppapi::proxy::SerializedVar
/* name */,
1080 ppapi::proxy::SerializedVar
/* value */,
1081 ppapi::proxy::SerializedVar
/* out_exception */)
1082 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_CallDeprecated
,
1083 ppapi::proxy::SerializedVar
/* object */,
1084 ppapi::proxy::SerializedVar
/* method_name */,
1085 std::vector
<ppapi::proxy::SerializedVar
> /* args */,
1086 ppapi::proxy::SerializedVar
/* out_exception */,
1087 ppapi::proxy::SerializedVar
/* result */)
1088 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_Construct
,
1089 ppapi::proxy::SerializedVar
/* object */,
1090 std::vector
<ppapi::proxy::SerializedVar
> /* args */,
1091 ppapi::proxy::SerializedVar
/* out_exception */,
1092 ppapi::proxy::SerializedVar
/* result */)
1093 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_IsInstanceOfDeprecated
,
1094 ppapi::proxy::SerializedVar
/* var */,
1095 int64
/* object_class */,
1096 int64
/* object-data */,
1097 PP_Bool
/* result */)
1098 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_CreateObjectDeprecated
,
1099 PP_Instance
/* instance */,
1100 int64
/* object_class */,
1101 int64
/* object_data */,
1102 ppapi::proxy::SerializedVar
/* result */)
1104 #if !defined(OS_NACL)
1106 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBBroker_Create
,
1107 PP_Instance
/* instance */,
1108 ppapi::HostResource
/* result_resource */)
1109 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBBroker_Connect
,
1110 ppapi::HostResource
/* broker */)
1113 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBBuffer_Create
,
1114 PP_Instance
/* instance */,
1115 uint32_t /* size */,
1116 ppapi::HostResource
/* result_resource */,
1117 base::SharedMemoryHandle
/* result_shm_handle */)
1120 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFileChooser_Create
,
1121 PP_Instance
/* instance */,
1123 std::string
/* accept_types */,
1124 ppapi::HostResource
/* result */)
1125 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFileChooser_Show
,
1126 ppapi::HostResource
/* file_chooser */,
1127 PP_Bool
/* save_as */,
1128 ppapi::proxy::SerializedVar
/* suggested_file_name */,
1129 bool /* require_user_gesture */)
1131 // PPB_NetworkMonitor_Private.
1132 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Start
,
1133 uint32
/* plugin_dispatcher_id */)
1134 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Stop
,
1135 uint32
/* plugin_dispatcher_id */)
1137 // PPB_HostResolver_Private.
1138 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBHostResolver_Resolve
,
1139 int32
/* routing_id */,
1140 uint32
/* plugin_dispatcher_id */,
1141 uint32
/* host_resolver_id */,
1142 ppapi::HostPortPair
/* host_port */,
1143 PP_HostResolver_Private_Hint
/* hint */)
1146 IPC_SYNC_MESSAGE_ROUTED3_1(
1147 PpapiHostMsg_PPBPDF_GetFontFileWithFallback
,
1148 PP_Instance
/* instance */,
1149 ppapi::proxy::SerializedFontDescription
/* description */,
1150 int32_t /* charset */,
1151 ppapi::HostResource
/* result */)
1152 IPC_SYNC_MESSAGE_ROUTED2_1(
1153 PpapiHostMsg_PPBPDF_GetFontTableForPrivateFontFile
,
1154 ppapi::HostResource
/* font_file */,
1155 uint32_t /* table */,
1156 std::string
/* result */)
1160 IPC_MESSAGE_ROUTED2(
1161 PpapiHostMsg_PPBTalk_GetPermission
,
1162 uint32
/* plugin_dispatcher_id */,
1163 PP_Resource
/* resource */)
1166 IPC_SYNC_MESSAGE_ROUTED3_1(
1167 PpapiHostMsg_PPBTesting_ReadImageData
,
1168 ppapi::HostResource
/* device_context_2d */,
1169 ppapi::HostResource
/* image */,
1170 PP_Point
/* top_left */,
1171 PP_Bool
/* result */)
1172 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBTesting_GetLiveObjectsForInstance
,
1173 PP_Instance
/* instance */,
1174 uint32
/* result */)
1175 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBTesting_SimulateInputEvent
,
1176 PP_Instance
/* instance */,
1177 ppapi::InputEventData
/* input_event */)
1179 // PPB_VideoCapture_Dev.
1180 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVideoCapture_Create
,
1181 PP_Instance
/* instance */,
1182 ppapi::HostResource
/* result */)
1183 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_EnumerateDevices
,
1184 ppapi::HostResource
/* video_capture */)
1185 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoCapture_Open
,
1186 ppapi::HostResource
/* video_capture */,
1187 std::string
/* device_id */,
1188 PP_VideoCaptureDeviceInfo_Dev
/* requested_info */,
1189 uint32_t /* buffer_count */)
1190 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_StartCapture
,
1191 ppapi::HostResource
/* video_capture */)
1192 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoCapture_ReuseBuffer
,
1193 ppapi::HostResource
/* video_capture */,
1194 uint32_t /* buffer */)
1195 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_StopCapture
,
1196 ppapi::HostResource
/* video_capture */)
1197 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_Close
,
1198 ppapi::HostResource
/* video_capture */)
1199 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBVideoCapture_StartCapture0_1
,
1200 ppapi::HostResource
/* video_capture */,
1201 PP_VideoCaptureDeviceInfo_Dev
/* requested_info */,
1202 uint32_t /* buffer_count */)
1204 // PPB_VideoDecoder.
1205 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVideoDecoder_Create
,
1206 PP_Instance
/* instance */,
1207 ppapi::HostResource
/* context */,
1208 PP_VideoDecoder_Profile
/* profile */,
1209 ppapi::HostResource
/* result */)
1210 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoDecoder_Decode
,
1211 ppapi::HostResource
/* video_decoder */,
1212 ppapi::HostResource
/* bitstream buffer */,
1213 int32
/* bitstream buffer id */,
1214 int32
/* size of buffer */)
1215 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_AssignPictureBuffers
,
1216 ppapi::HostResource
/* video_decoder */,
1217 std::vector
<PP_PictureBuffer_Dev
> /* picture buffers */)
1218 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_ReusePictureBuffer
,
1219 ppapi::HostResource
/* video_decoder */,
1220 int32_t /* picture buffer id */)
1221 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Flush
,
1222 ppapi::HostResource
/* video_decoder */)
1223 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Reset
,
1224 ppapi::HostResource
/* video_decoder */)
1225 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBVideoDecoder_Destroy
,
1226 ppapi::HostResource
/* video_decoder */)
1229 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFlash_SetInstanceAlwaysOnTop
,
1230 PP_Instance
/* instance */,
1231 PP_Bool
/* on_top */)
1232 // This has to be synchronous becuase the caller may want to composite on
1233 // top of the resulting text after the call is complete.
1234 IPC_SYNC_MESSAGE_ROUTED2_1(
1235 PpapiHostMsg_PPBFlash_DrawGlyphs
,
1236 PP_Instance
/* instance */,
1237 ppapi::proxy::PPBFlash_DrawGlyphs_Params
/* params */,
1238 PP_Bool
/* result */)
1239 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_GetProxyForURL
,
1240 PP_Instance
/* instance */,
1241 std::string
/* url */,
1242 ppapi::proxy::SerializedVar
/* result */)
1243 IPC_SYNC_MESSAGE_ROUTED4_1(PpapiHostMsg_PPBFlash_Navigate
,
1244 PP_Instance
/* instance */,
1245 ppapi::PPB_URLRequestInfo_Data
/* request_data */,
1246 std::string
/* target */,
1247 PP_Bool
/* from_user_action */,
1248 int32_t /* result */)
1249 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlash_RunMessageLoop
,
1250 PP_Instance
/* instance */)
1251 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlash_QuitMessageLoop
,
1252 PP_Instance
/* instance */)
1253 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_GetLocalTimeZoneOffset
,
1254 PP_Instance
/* instance */,
1256 double /* offset */)
1257 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_IsRectTopmost
,
1258 PP_Instance
/* instance */,
1260 PP_Bool
/* result */)
1261 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_FlashSetFullscreen
,
1262 PP_Instance
/* instance */,
1263 PP_Bool
/* fullscreen */,
1264 PP_Bool
/* result */)
1265 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBFlash_FlashGetScreenSize
,
1266 PP_Instance
/* instance */,
1267 PP_Bool
/* result */,
1269 IPC_MESSAGE_ROUTED0(PpapiHostMsg_PPBFlash_UpdateActivity
)
1270 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlash_GetDeviceID
,
1271 PP_Instance
/* instance */,
1272 ppapi::proxy::SerializedVar
/* id */)
1273 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFlash_IsClipboardFormatAvailable
,
1274 PP_Instance
/* instance */,
1275 int /* clipboard_type */,
1278 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFlash_ReadClipboardData
,
1279 PP_Instance
/* instance */,
1280 int /* clipboard_type */,
1282 ppapi::proxy::SerializedVar
/* result */)
1283 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFlash_WriteClipboardData
,
1284 PP_Instance
/* instance */,
1285 int /* clipboard_type */,
1286 std::vector
<int> /* formats */,
1287 std::vector
<ppapi::proxy::SerializedVar
> /* data */)
1288 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBFlash_OpenFileRef
,
1289 PP_Instance
/* instance */,
1290 ppapi::HostResource
/* file_ref */,
1292 IPC::PlatformFileForTransit
/* file_handle */,
1293 int32_t /* result */)
1294 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBFlash_QueryFileRef
,
1295 PP_Instance
/* instance */,
1296 ppapi::HostResource
/* file_ref */,
1297 PP_FileInfo
/* info */,
1298 int32_t /* result */)
1299 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFlash_InvokePrinting
,
1300 PP_Instance
/* instance */)
1302 // PPB_Flash_DeviceID.
1303 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFlashDeviceID_Get
,
1304 int32
/* routing_id */,
1305 PP_Resource
/* resource */)
1308 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlashMenu_Create
,
1309 PP_Instance
/* instance */,
1310 ppapi::proxy::SerializedFlashMenu
/* menu_data */,
1311 ppapi::HostResource
/* result */)
1312 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBFlashMenu_Show
,
1313 ppapi::HostResource
/* menu */,
1314 PP_Point
/* location */)
1315 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFlashMenu_ShowACK
,
1316 ppapi::HostResource
/* menu */,
1317 int32_t /* selected_id */,
1318 int32_t /* result */)
1320 // PPB_Flash_MessageLoop.
1321 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Create
,
1322 PP_Instance
/* instance */,
1323 ppapi::HostResource
/* result */)
1324 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Run
,
1325 ppapi::HostResource
/* flash_message_loop */,
1326 int32_t /* result */)
1327 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlashMessageLoop_Quit
,
1328 ppapi::HostResource
/* flash_message_loop */)
1330 // PPB_TCPSocket_Private.
1331 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiHostMsg_PPBTCPSocket_Create
,
1332 int32
/* routing_id */,
1333 uint32
/* plugin_dispatcher_id */,
1334 uint32
/* socket_id */)
1335 IPC_MESSAGE_CONTROL4(PpapiHostMsg_PPBTCPSocket_Connect
,
1336 int32
/* routing_id */,
1337 uint32
/* socket_id */,
1338 std::string
/* host */,
1339 uint16_t /* port */)
1340 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBTCPSocket_ConnectWithNetAddress
,
1341 int32
/* routing_id */,
1342 uint32
/* socket_id */,
1343 PP_NetAddress_Private
/* net_addr */)
1344 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPSocket_SSLHandshake
,
1345 uint32
/* socket_id */,
1346 std::string
/* server_name */,
1347 uint16_t /* server_port */,
1348 std::vector
<std::vector
<char> > /* trusted_certs */,
1349 std::vector
<std::vector
<char> > /* untrusted_certs */)
1350 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Read
,
1351 uint32
/* socket_id */,
1352 int32_t /* bytes_to_read */)
1353 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Write
,
1354 uint32
/* socket_id */,
1355 std::string
/* data */)
1356 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPSocket_Disconnect
,
1357 uint32
/* socket_id */)
1359 // PPB_UDPSocket_Private.
1360 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiHostMsg_PPBUDPSocket_Create
,
1361 int32
/* routing_id */,
1362 uint32
/* plugin_dispatcher_id */,
1363 uint32
/* socket_id */)
1364 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBUDPSocket_Bind
,
1365 int32
/* routing_id */,
1366 uint32
/* socket_id */,
1367 PP_NetAddress_Private
/* net_addr */)
1368 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBUDPSocket_RecvFrom
,
1369 uint32
/* socket_id */,
1370 int32_t /* num_bytes */)
1371 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBUDPSocket_SendTo
,
1372 uint32
/* socket_id */,
1373 std::string
/* data */,
1374 PP_NetAddress_Private
/* net_addr */)
1375 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBUDPSocket_Close
,
1376 uint32
/* socket_id */)
1378 // PPB_TCPServerSocket_Private.
1379 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPServerSocket_Listen
,
1380 int32
/* routing_id */,
1381 uint32
/* plugin_dispatcher_id */,
1382 PP_Resource
/* socket_resource */,
1383 PP_NetAddress_Private
/* addr */,
1384 int32_t /* backlog */)
1385 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPServerSocket_Accept
,
1386 int32
/* tcp_client_socket_routing_id */,
1387 uint32
/* server_socket_id */)
1388 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPServerSocket_Destroy
,
1389 uint32
/* socket_id */)
1391 // PPB_X509Certificate_Private
1392 IPC_SYNC_MESSAGE_CONTROL1_2(PpapiHostMsg_PPBX509Certificate_ParseDER
,
1393 std::vector
<char> /* der */,
1394 bool /* succeeded */,
1395 ppapi::PPB_X509Certificate_Fields
/* result */)
1398 IPC_SYNC_MESSAGE_CONTROL0_1(PpapiHostMsg_PPBFont_GetFontFamilies
,
1399 std::string
/* result */)
1401 #endif // !defined(OS_NACL)
1403 //-----------------------------------------------------------------------------
1404 // Resource call/reply messages.
1406 // These are the new-style resource implementations where the resource is only
1407 // implemented in the proxy and "resource messages" are sent between this and a
1408 // host object. Resource messages are a wrapper around some general routing
1409 // information and a separate message of a type defined by the specific resource
1410 // sending/receiving it. The extra paremeters allow the nested message to be
1411 // routed automatically to the correct resource.
1413 // Notification that a resource has been created in the plugin. The nested
1414 // message will be resource-type-specific.
1415 IPC_MESSAGE_CONTROL3(PpapiHostMsg_ResourceCreated
,
1416 ppapi::proxy::ResourceMessageCallParams
/* call_params */,
1417 PP_Instance
/* instance */,
1418 IPC::Message
/* nested_msg */)
1420 // Notification that a resource has been destroyed in the plugin.
1421 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ResourceDestroyed
,
1422 PP_Resource
/* resource */)
1424 // A resource call is a request from the plugin to the host. It may or may not
1425 // require a reply, depending on the params. The nested message will be
1426 // resource-type-specific.
1427 IPC_MESSAGE_CONTROL2(PpapiHostMsg_ResourceCall
,
1428 ppapi::proxy::ResourceMessageCallParams
/* call_params */,
1429 IPC::Message
/* nested_msg */)
1431 // A resource reply is a response to a ResourceCall from a host to the
1432 // plugin. The resource ID + sequence number in the params will correspond to
1433 // that of the previous ResourceCall.
1434 IPC_MESSAGE_CONTROL2(
1435 PpapiPluginMsg_ResourceReply
,
1436 ppapi::proxy::ResourceMessageReplyParams
/* reply_params */,
1437 IPC::Message
/* nested_msg */)