blob: b7169d3cd5c401fff49570ef93bd11459c8a99f3 [file] [log] [blame]
[email protected]c80a0ba2012-01-13 00:02:291// Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]c2932f5e2010-11-03 03:22:332// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
[email protected]631179b2011-03-14 22:26:205// Multiply-included message header, no traditional include guard.
[email protected]c2932f5e2010-11-03 03:22:336#include <string>
7#include <vector>
8
9#include "base/basictypes.h"
[email protected]57999812013-02-24 05:40:5210#include "base/files/file_path.h"
[email protected]5d84d012010-12-02 17:17:2111#include "base/process.h"
12#include "base/shared_memory.h"
[email protected]19d2b012010-11-08 16:32:1813#include "base/string16.h"
[email protected]5d84d012010-12-02 17:17:2114#include "base/sync_socket.h"
[email protected]27db60a2013-03-29 03:29:2015#include "base/values.h"
[email protected]631179b2011-03-14 22:26:2016#include "gpu/command_buffer/common/command_buffer.h"
17#include "gpu/ipc/gpu_command_buffer_traits.h"
18#include "ipc/ipc_channel_handle.h"
19#include "ipc/ipc_message_macros.h"
[email protected]c2932f5e2010-11-03 03:22:3320#include "ipc/ipc_message_utils.h"
[email protected]5d84d012010-12-02 17:17:2121#include "ipc/ipc_platform_file.h"
[email protected]0fa46e82011-08-09 07:31:4922#include "ppapi/c/dev/pp_video_capture_dev.h"
[email protected]e8f07ac2012-01-03 17:43:3623#include "ppapi/c/dev/pp_video_dev.h"
[email protected]2daba2f32011-09-29 04:23:0924#include "ppapi/c/dev/ppb_text_input_dev.h"
[email protected]725056b72013-03-16 09:57:5125#include "ppapi/c/dev/ppb_truetype_font_dev.h"
[email protected]32938de2012-10-19 18:42:3226#include "ppapi/c/dev/ppb_url_util_dev.h"
[email protected]3890cfff2012-02-29 07:54:1827#include "ppapi/c/dev/ppp_printing_dev.h"
[email protected]19d2b012010-11-08 16:32:1828#include "ppapi/c/pp_bool.h"
[email protected]ea505a9d2011-07-07 18:34:4029#include "ppapi/c/pp_file_info.h"
[email protected]c2932f5e2010-11-03 03:22:3330#include "ppapi/c/pp_instance.h"
31#include "ppapi/c/pp_module.h"
[email protected]9b7cc082011-04-20 20:25:5532#include "ppapi/c/pp_point.h"
33#include "ppapi/c/pp_rect.h"
[email protected]c2932f5e2010-11-03 03:22:3334#include "ppapi/c/pp_resource.h"
[email protected]9b7cc082011-04-20 20:25:5535#include "ppapi/c/pp_size.h"
[email protected]3b98ced72012-03-09 02:08:3336#include "ppapi/c/pp_time.h"
[email protected]77b55502012-11-08 22:20:2037#include "ppapi/c/ppb_audio_config.h"
[email protected]38f61e8f2013-05-11 19:23:3838#include "ppapi/c/ppb_image_data.h"
[email protected]23de87452012-10-12 07:03:0939#include "ppapi/c/private/pp_content_decryptor.h"
[email protected]cb65f132012-10-09 17:06:0940#include "ppapi/c/private/pp_private_font_charset.h"
[email protected]ea628e32012-08-02 21:50:1641#include "ppapi/c/private/ppb_flash.h"
[email protected]24931102012-03-15 01:21:2742#include "ppapi/c/private/ppb_host_resolver_private.h"
43#include "ppapi/c/private/ppb_net_address_private.h"
[email protected]f5869d8be2013-04-06 00:33:1044#include "ppapi/c/private/ppb_pdf.h"
[email protected]fb575bc2011-11-16 07:06:2445#include "ppapi/c/private/ppb_tcp_socket_private.h"
[email protected]0addda92012-08-31 08:55:2846#include "ppapi/c/private/ppb_udp_socket_private.h"
[email protected]1a559442012-05-27 07:18:4647#include "ppapi/c/private/ppp_flash_browser_operations.h"
[email protected]6a685372013-02-12 12:50:4648#include "ppapi/proxy/host_resolver_private_resource.h"
[email protected]c2932f5e2010-11-03 03:22:3349#include "ppapi/proxy/ppapi_param_traits.h"
[email protected]f0a04c42011-08-26 22:43:2050#include "ppapi/proxy/ppapi_proxy_export.h"
[email protected]077ecfd42012-06-21 21:46:2651#include "ppapi/proxy/resource_message_params.h"
[email protected]7358d572011-02-15 18:44:4052#include "ppapi/proxy/serialized_flash_menu.h"
[email protected]eb5960da2013-01-16 23:23:5353#include "ppapi/proxy/serialized_handle.h"
[email protected]fb35dcf2010-11-14 17:08:0054#include "ppapi/proxy/serialized_structs.h"
[email protected]cb65f132012-10-09 17:06:0955#include "ppapi/proxy/serialized_var.h"
[email protected]0c92b0d2012-12-08 00:46:2356#include "ppapi/shared_impl/dir_contents.h"
57#include "ppapi/shared_impl/file_path.h"
[email protected]ac07ec52013-04-22 17:32:4558#include "ppapi/shared_impl/ppapi_nacl_channel_args.h"
[email protected]208aad792011-05-26 19:05:2859#include "ppapi/shared_impl/ppapi_preferences.h"
[email protected]dca65e12012-01-21 07:54:1760#include "ppapi/shared_impl/ppb_device_ref_shared.h"
[email protected]9a578392011-12-07 18:59:2761#include "ppapi/shared_impl/ppb_input_event_shared.h"
[email protected]5b9b80e2012-03-20 20:19:3962#include "ppapi/shared_impl/ppb_network_list_private_shared.h"
[email protected]e8f07ac2012-01-03 17:43:3663#include "ppapi/shared_impl/ppb_view_shared.h"
[email protected]ee4dd682012-06-12 15:49:3364#include "ppapi/shared_impl/ppp_flash_browser_operations_shared.h"
[email protected]de2895262012-04-04 17:15:4865#include "ppapi/shared_impl/private/ppb_x509_certificate_private_shared.h"
[email protected]7b2f7292012-09-19 19:52:1266#include "ppapi/shared_impl/url_request_info_data.h"
[email protected]844fecb2012-11-16 20:11:0667#include "ppapi/shared_impl/url_response_info_data.h"
[email protected]19d2b012010-11-08 16:32:1868
[email protected]f0a04c42011-08-26 22:43:2069#undef IPC_MESSAGE_EXPORT
70#define IPC_MESSAGE_EXPORT PPAPI_PROXY_EXPORT
71
[email protected]631179b2011-03-14 22:26:2072#define IPC_MESSAGE_START PpapiMsgStart
[email protected]c2932f5e2010-11-03 03:22:3373
[email protected]77b55502012-11-08 22:20:2074IPC_ENUM_TRAITS(PP_AudioSampleRate)
[email protected]dca65e12012-01-21 07:54:1775IPC_ENUM_TRAITS(PP_DeviceType_Dev)
[email protected]23de87452012-10-12 07:03:0976IPC_ENUM_TRAITS(PP_DecryptorStreamType)
[email protected]ef9225f2013-04-12 20:28:1477IPC_ENUM_TRAITS(PP_FileSystemType)
[email protected]7d0c1d82013-02-13 11:41:4078IPC_ENUM_TRAITS(PP_FileType)
[email protected]1a559442012-05-27 07:18:4679IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_Permission)
80IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_SettingType)
[email protected]ea628e32012-08-02 21:50:1681IPC_ENUM_TRAITS(PP_FlashSetting)
[email protected]38f61e8f2013-05-11 19:23:3882IPC_ENUM_TRAITS(PP_ImageDataFormat)
[email protected]493d14212011-07-07 15:38:4883IPC_ENUM_TRAITS(PP_InputEvent_MouseButton)
[email protected]24931102012-03-15 01:21:2784IPC_ENUM_TRAITS(PP_InputEvent_Type)
85IPC_ENUM_TRAITS(PP_NetAddressFamily_Private)
[email protected]5b9b80e2012-03-20 20:19:3986IPC_ENUM_TRAITS(PP_NetworkListState_Private)
[email protected]0addda92012-08-31 08:55:2887IPC_ENUM_TRAITS(PP_NetworkListType_Private)
[email protected]772a74622012-06-14 21:15:5088IPC_ENUM_TRAITS(PP_PrintOrientation_Dev)
89IPC_ENUM_TRAITS(PP_PrintOutputFormat_Dev)
90IPC_ENUM_TRAITS(PP_PrintScalingOption_Dev)
[email protected]cb65f132012-10-09 17:06:0991IPC_ENUM_TRAITS(PP_PrivateFontCharset)
[email protected]f5869d8be2013-04-06 00:33:1092IPC_ENUM_TRAITS(PP_ResourceImage)
93IPC_ENUM_TRAITS(PP_ResourceString)
[email protected]2daba2f32011-09-29 04:23:0994IPC_ENUM_TRAITS(PP_TextInput_Type)
[email protected]725056b72013-03-16 09:57:5195IPC_ENUM_TRAITS(PP_TrueTypeFontFamily_Dev)
96IPC_ENUM_TRAITS(PP_TrueTypeFontStyle_Dev)
97IPC_ENUM_TRAITS(PP_TrueTypeFontWeight_Dev)
98IPC_ENUM_TRAITS(PP_TrueTypeFontWidth_Dev)
99IPC_ENUM_TRAITS(PP_TrueTypeFontCharset_Dev)
[email protected]7ace8ad2011-08-06 03:23:58100IPC_ENUM_TRAITS(PP_VideoDecodeError_Dev)
[email protected]24931102012-03-15 01:21:27101IPC_ENUM_TRAITS(PP_VideoDecoder_Profile)
[email protected]493d14212011-07-07 15:38:48102
[email protected]9b7cc082011-04-20 20:25:55103IPC_STRUCT_TRAITS_BEGIN(PP_Point)
104 IPC_STRUCT_TRAITS_MEMBER(x)
105 IPC_STRUCT_TRAITS_MEMBER(y)
106IPC_STRUCT_TRAITS_END()
107
[email protected]493d14212011-07-07 15:38:48108IPC_STRUCT_TRAITS_BEGIN(PP_FloatPoint)
109 IPC_STRUCT_TRAITS_MEMBER(x)
110 IPC_STRUCT_TRAITS_MEMBER(y)
111IPC_STRUCT_TRAITS_END()
112
[email protected]9b7cc082011-04-20 20:25:55113IPC_STRUCT_TRAITS_BEGIN(PP_Size)
114 IPC_STRUCT_TRAITS_MEMBER(height)
115 IPC_STRUCT_TRAITS_MEMBER(width)
116IPC_STRUCT_TRAITS_END()
117
118IPC_STRUCT_TRAITS_BEGIN(PP_Rect)
119 IPC_STRUCT_TRAITS_MEMBER(point)
120 IPC_STRUCT_TRAITS_MEMBER(size)
121IPC_STRUCT_TRAITS_END()
122
[email protected]38f61e8f2013-05-11 19:23:38123IPC_STRUCT_TRAITS_BEGIN(PP_ImageDataDesc)
124 IPC_STRUCT_TRAITS_MEMBER(format)
125 IPC_STRUCT_TRAITS_MEMBER(size)
126 IPC_STRUCT_TRAITS_MEMBER(stride)
127IPC_STRUCT_TRAITS_END()
128
[email protected]7ace8ad2011-08-06 03:23:58129IPC_STRUCT_TRAITS_BEGIN(PP_PictureBuffer_Dev)
130 IPC_STRUCT_TRAITS_MEMBER(id)
131 IPC_STRUCT_TRAITS_MEMBER(size)
132 IPC_STRUCT_TRAITS_MEMBER(texture_id)
133IPC_STRUCT_TRAITS_END()
134
135IPC_STRUCT_TRAITS_BEGIN(PP_Picture_Dev)
136 IPC_STRUCT_TRAITS_MEMBER(picture_buffer_id)
137 IPC_STRUCT_TRAITS_MEMBER(bitstream_buffer_id)
138IPC_STRUCT_TRAITS_END()
139
[email protected]3890cfff2012-02-29 07:54:18140IPC_STRUCT_TRAITS_BEGIN(PP_PrintPageNumberRange_Dev)
141 IPC_STRUCT_TRAITS_MEMBER(first_page_number)
142 IPC_STRUCT_TRAITS_MEMBER(last_page_number)
143IPC_STRUCT_TRAITS_END()
144
[email protected]0fa46e82011-08-09 07:31:49145IPC_STRUCT_TRAITS_BEGIN(PP_VideoCaptureDeviceInfo_Dev)
146 IPC_STRUCT_TRAITS_MEMBER(width)
147 IPC_STRUCT_TRAITS_MEMBER(height)
148 IPC_STRUCT_TRAITS_MEMBER(frames_per_second)
149IPC_STRUCT_TRAITS_END()
150
[email protected]24931102012-03-15 01:21:27151IPC_STRUCT_TRAITS_BEGIN(PP_HostResolver_Private_Hint)
152 IPC_STRUCT_TRAITS_MEMBER(family)
153 IPC_STRUCT_TRAITS_MEMBER(flags)
154IPC_STRUCT_TRAITS_END()
155
[email protected]772a74622012-06-14 21:15:50156IPC_STRUCT_TRAITS_BEGIN(PP_PrintSettings_Dev)
157 IPC_STRUCT_TRAITS_MEMBER(printable_area)
158 IPC_STRUCT_TRAITS_MEMBER(content_area)
159 IPC_STRUCT_TRAITS_MEMBER(paper_size)
160 IPC_STRUCT_TRAITS_MEMBER(dpi)
161 IPC_STRUCT_TRAITS_MEMBER(orientation)
162 IPC_STRUCT_TRAITS_MEMBER(print_scaling_option)
163 IPC_STRUCT_TRAITS_MEMBER(grayscale)
164 IPC_STRUCT_TRAITS_MEMBER(format)
165IPC_STRUCT_TRAITS_END()
166
[email protected]32938de2012-10-19 18:42:32167IPC_STRUCT_TRAITS_BEGIN(PP_URLComponent_Dev)
168 IPC_STRUCT_TRAITS_MEMBER(begin)
169 IPC_STRUCT_TRAITS_MEMBER(len)
170IPC_STRUCT_TRAITS_END()
171
172IPC_STRUCT_TRAITS_BEGIN(PP_URLComponents_Dev)
173 IPC_STRUCT_TRAITS_MEMBER(scheme)
174 IPC_STRUCT_TRAITS_MEMBER(username)
175 IPC_STRUCT_TRAITS_MEMBER(password)
176 IPC_STRUCT_TRAITS_MEMBER(host)
177 IPC_STRUCT_TRAITS_MEMBER(port)
178 IPC_STRUCT_TRAITS_MEMBER(path)
179 IPC_STRUCT_TRAITS_MEMBER(query)
180 IPC_STRUCT_TRAITS_MEMBER(ref)
181IPC_STRUCT_TRAITS_END()
182
[email protected]dca65e12012-01-21 07:54:17183IPC_STRUCT_TRAITS_BEGIN(ppapi::DeviceRefData)
184 IPC_STRUCT_TRAITS_MEMBER(type)
185 IPC_STRUCT_TRAITS_MEMBER(name)
186 IPC_STRUCT_TRAITS_MEMBER(id)
187IPC_STRUCT_TRAITS_END()
188
[email protected]0c92b0d2012-12-08 00:46:23189IPC_STRUCT_TRAITS_BEGIN(ppapi::DirEntry)
190 IPC_STRUCT_TRAITS_MEMBER(name)
191 IPC_STRUCT_TRAITS_MEMBER(is_dir)
192IPC_STRUCT_TRAITS_END()
193
[email protected]ee4dd682012-06-12 15:49:33194IPC_STRUCT_TRAITS_BEGIN(ppapi::FlashSiteSetting)
195 IPC_STRUCT_TRAITS_MEMBER(site)
196 IPC_STRUCT_TRAITS_MEMBER(permission)
197IPC_STRUCT_TRAITS_END()
198
[email protected]e8f07ac2012-01-03 17:43:36199IPC_STRUCT_TRAITS_BEGIN(ppapi::ViewData)
200 IPC_STRUCT_TRAITS_MEMBER(rect)
201 IPC_STRUCT_TRAITS_MEMBER(is_fullscreen)
202 IPC_STRUCT_TRAITS_MEMBER(is_page_visible)
203 IPC_STRUCT_TRAITS_MEMBER(clip_rect)
[email protected]0cd5b9df2012-06-28 19:33:33204 IPC_STRUCT_TRAITS_MEMBER(device_scale)
205 IPC_STRUCT_TRAITS_MEMBER(css_scale)
[email protected]e8f07ac2012-01-03 17:43:36206IPC_STRUCT_TRAITS_END()
207
[email protected]cdf4e912012-06-21 23:15:10208IPC_STRUCT_TRAITS_BEGIN(PP_TouchPoint)
209 IPC_STRUCT_TRAITS_MEMBER(id)
210 IPC_STRUCT_TRAITS_MEMBER(position)
211 IPC_STRUCT_TRAITS_MEMBER(radius)
212 IPC_STRUCT_TRAITS_MEMBER(rotation_angle)
213 IPC_STRUCT_TRAITS_MEMBER(pressure)
214IPC_STRUCT_TRAITS_END()
215
[email protected]4d2efd22011-08-18 21:58:02216IPC_STRUCT_TRAITS_BEGIN(ppapi::Preferences)
[email protected]966d1e12012-05-18 07:20:32217 IPC_STRUCT_TRAITS_MEMBER(standard_font_family_map)
218 IPC_STRUCT_TRAITS_MEMBER(fixed_font_family_map)
219 IPC_STRUCT_TRAITS_MEMBER(serif_font_family_map)
220 IPC_STRUCT_TRAITS_MEMBER(sans_serif_font_family_map)
[email protected]208aad792011-05-26 19:05:28221 IPC_STRUCT_TRAITS_MEMBER(default_font_size)
222 IPC_STRUCT_TRAITS_MEMBER(default_fixed_font_size)
[email protected]6b4dcb072012-06-18 22:26:51223 IPC_STRUCT_TRAITS_MEMBER(number_of_cpu_cores)
[email protected]e0d8c422012-06-04 22:57:19224 IPC_STRUCT_TRAITS_MEMBER(is_3d_supported)
225 IPC_STRUCT_TRAITS_MEMBER(is_stage3d_supported)
[email protected]4abba3b42013-02-12 03:45:54226 IPC_STRUCT_TRAITS_MEMBER(is_stage3d_baseline_supported)
[email protected]208aad792011-05-26 19:05:28227IPC_STRUCT_TRAITS_END()
228
[email protected]4d2efd22011-08-18 21:58:02229IPC_STRUCT_TRAITS_BEGIN(ppapi::InputEventData)
[email protected]493d14212011-07-07 15:38:48230 IPC_STRUCT_TRAITS_MEMBER(is_filtered)
231 IPC_STRUCT_TRAITS_MEMBER(event_type)
232 IPC_STRUCT_TRAITS_MEMBER(event_time_stamp)
233 IPC_STRUCT_TRAITS_MEMBER(event_modifiers)
234 IPC_STRUCT_TRAITS_MEMBER(mouse_button)
235 IPC_STRUCT_TRAITS_MEMBER(mouse_position)
236 IPC_STRUCT_TRAITS_MEMBER(mouse_click_count)
[email protected]80473262011-08-31 17:15:18237 IPC_STRUCT_TRAITS_MEMBER(mouse_movement)
[email protected]493d14212011-07-07 15:38:48238 IPC_STRUCT_TRAITS_MEMBER(wheel_delta)
239 IPC_STRUCT_TRAITS_MEMBER(wheel_ticks)
240 IPC_STRUCT_TRAITS_MEMBER(wheel_scroll_by_page)
241 IPC_STRUCT_TRAITS_MEMBER(key_code)
[email protected]e1e08b42012-02-21 22:42:58242 IPC_STRUCT_TRAITS_MEMBER(usb_key_code)
[email protected]493d14212011-07-07 15:38:48243 IPC_STRUCT_TRAITS_MEMBER(character_text)
[email protected]2daba2f32011-09-29 04:23:09244 IPC_STRUCT_TRAITS_MEMBER(composition_segment_offsets)
245 IPC_STRUCT_TRAITS_MEMBER(composition_target_segment)
246 IPC_STRUCT_TRAITS_MEMBER(composition_selection_start)
247 IPC_STRUCT_TRAITS_MEMBER(composition_selection_end)
[email protected]cdf4e912012-06-21 23:15:10248 IPC_STRUCT_TRAITS_MEMBER(touches)
249 IPC_STRUCT_TRAITS_MEMBER(changed_touches)
250 IPC_STRUCT_TRAITS_MEMBER(target_touches)
[email protected]493d14212011-07-07 15:38:48251IPC_STRUCT_TRAITS_END()
252
[email protected]24931102012-03-15 01:21:27253IPC_STRUCT_TRAITS_BEGIN(ppapi::HostPortPair)
254 IPC_STRUCT_TRAITS_MEMBER(host)
255 IPC_STRUCT_TRAITS_MEMBER(port)
256IPC_STRUCT_TRAITS_END()
257
[email protected]7b2f7292012-09-19 19:52:12258IPC_STRUCT_TRAITS_BEGIN(ppapi::URLRequestInfoData)
[email protected]6f75c952011-08-26 04:51:07259 IPC_STRUCT_TRAITS_MEMBER(url)
260 IPC_STRUCT_TRAITS_MEMBER(method)
261 IPC_STRUCT_TRAITS_MEMBER(headers)
262 IPC_STRUCT_TRAITS_MEMBER(stream_to_file)
263 IPC_STRUCT_TRAITS_MEMBER(follow_redirects)
264 IPC_STRUCT_TRAITS_MEMBER(record_download_progress)
265 IPC_STRUCT_TRAITS_MEMBER(record_upload_progress)
266 IPC_STRUCT_TRAITS_MEMBER(has_custom_referrer_url)
267 IPC_STRUCT_TRAITS_MEMBER(custom_referrer_url)
268 IPC_STRUCT_TRAITS_MEMBER(allow_cross_origin_requests)
269 IPC_STRUCT_TRAITS_MEMBER(allow_credentials)
270 IPC_STRUCT_TRAITS_MEMBER(has_custom_content_transfer_encoding)
271 IPC_STRUCT_TRAITS_MEMBER(custom_content_transfer_encoding)
272 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_upper_threshold)
273 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_lower_threshold)
[email protected]c094eaf2012-07-10 16:09:01274 IPC_STRUCT_TRAITS_MEMBER(has_custom_user_agent)
275 IPC_STRUCT_TRAITS_MEMBER(custom_user_agent)
[email protected]6f75c952011-08-26 04:51:07276 IPC_STRUCT_TRAITS_MEMBER(body)
277IPC_STRUCT_TRAITS_END()
278
[email protected]7b2f7292012-09-19 19:52:12279IPC_STRUCT_TRAITS_BEGIN(ppapi::URLRequestInfoData::BodyItem)
[email protected]6f75c952011-08-26 04:51:07280 IPC_STRUCT_TRAITS_MEMBER(is_file)
281 IPC_STRUCT_TRAITS_MEMBER(data)
282 // Note: we don't serialize file_ref.
283 IPC_STRUCT_TRAITS_MEMBER(file_ref_host_resource)
284 IPC_STRUCT_TRAITS_MEMBER(start_offset)
285 IPC_STRUCT_TRAITS_MEMBER(number_of_bytes)
286 IPC_STRUCT_TRAITS_MEMBER(expected_last_modified_time)
287IPC_STRUCT_TRAITS_END()
288
[email protected]844fecb2012-11-16 20:11:06289IPC_STRUCT_TRAITS_BEGIN(ppapi::URLResponseInfoData)
290 IPC_STRUCT_TRAITS_MEMBER(url)
291 IPC_STRUCT_TRAITS_MEMBER(headers)
292 IPC_STRUCT_TRAITS_MEMBER(status_code)
293 IPC_STRUCT_TRAITS_MEMBER(status_text)
294 IPC_STRUCT_TRAITS_MEMBER(redirect_url)
295 IPC_STRUCT_TRAITS_MEMBER(body_as_file_ref)
296IPC_STRUCT_TRAITS_END()
297
[email protected]5b9b80e2012-03-20 20:19:39298IPC_STRUCT_TRAITS_BEGIN(ppapi::NetworkInfo)
299 IPC_STRUCT_TRAITS_MEMBER(name)
300 IPC_STRUCT_TRAITS_MEMBER(type)
301 IPC_STRUCT_TRAITS_MEMBER(state)
302 IPC_STRUCT_TRAITS_MEMBER(addresses)
303 IPC_STRUCT_TRAITS_MEMBER(display_name)
304 IPC_STRUCT_TRAITS_MEMBER(mtu)
305IPC_STRUCT_TRAITS_END()
[email protected]e5aeef02012-08-17 00:18:43306
[email protected]ac07ec52013-04-22 17:32:45307// Only whitelisted switches passed through NaClChannelArgs.
308// The list of switches can be found in:
309// chrome/browser/nacl_host/nacl_process_host.cc
310IPC_STRUCT_TRAITS_BEGIN(ppapi::PpapiNaClChannelArgs)
311 IPC_STRUCT_TRAITS_MEMBER(off_the_record)
312 IPC_STRUCT_TRAITS_MEMBER(permissions)
313 IPC_STRUCT_TRAITS_MEMBER(switch_names)
314 IPC_STRUCT_TRAITS_MEMBER(switch_values)
315IPC_STRUCT_TRAITS_END()
316
[email protected]e8f578d2012-09-17 19:27:10317#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]e8f578d2012-09-17 19:27:10318
[email protected]e5aeef02012-08-17 00:18:43319IPC_STRUCT_TRAITS_BEGIN(ppapi::proxy::PPPDecryptor_Buffer)
320 IPC_STRUCT_TRAITS_MEMBER(resource)
321 IPC_STRUCT_TRAITS_MEMBER(handle)
322 IPC_STRUCT_TRAITS_MEMBER(size)
323IPC_STRUCT_TRAITS_END()
324
[email protected]667591d2012-09-04 21:30:12325#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]5b9b80e2012-03-20 20:19:39326
[email protected]eb415bf0e2011-04-14 02:45:42327// These are from the browser to the plugin.
[email protected]631179b2011-03-14 22:26:20328// Loads the given plugin.
[email protected]195d4cde2012-10-02 18:12:41329IPC_MESSAGE_CONTROL2(PpapiMsg_LoadPlugin,
[email protected]d30a36f2013-02-07 04:16:26330 base::FilePath /* path */,
[email protected]195d4cde2012-10-02 18:12:41331 ppapi::PpapiPermissions /* permissions */)
[email protected]631179b2011-03-14 22:26:20332
333// Creates a channel to talk to a renderer. The plugin will respond with
334// PpapiHostMsg_ChannelCreated.
[email protected]108fd342013-01-04 20:46:54335IPC_MESSAGE_CONTROL3(PpapiMsg_CreateChannel,
336 base::ProcessId /* renderer_pid */,
337 int /* renderer_child_id */,
[email protected]bc2eeb42012-05-02 22:35:53338 bool /* incognito */)
[email protected]631179b2011-03-14 22:26:20339
[email protected]8510d282012-08-30 19:47:38340// Creates a channel to talk to a renderer. This message is only used by the
341// NaCl IPC proxy. It is intercepted by NaClIPCAdapter, which creates the
342// actual channel and rewrites the message for the untrusted side.
[email protected]ac07ec52013-04-22 17:32:45343IPC_MESSAGE_CONTROL3(PpapiMsg_CreateNaClChannel,
[email protected]8510d282012-08-30 19:47:38344 int /* renderer_id */,
[email protected]ac07ec52013-04-22 17:32:45345 ppapi::PpapiNaClChannelArgs /* args */,
[email protected]8510d282012-08-30 19:47:38346 ppapi::proxy::SerializedHandle /* channel_handle */)
347
[email protected]029bd942013-01-22 08:30:33348// Instructs the plugin process to crash.
349IPC_MESSAGE_CONTROL0(PpapiMsg_Crash)
350
351// Instructs the plugin process to hang.
352IPC_MESSAGE_CONTROL0(PpapiMsg_Hang)
353
[email protected]631179b2011-03-14 22:26:20354// Each plugin may be referenced by multiple renderers. We need the instance
355// IDs to be unique within a plugin, despite coming from different renderers,
356// and unique within a renderer, despite going to different plugins. This means
357// that neither the renderer nor the plugin can generate instance IDs without
358// consulting the other.
359//
360// We resolve this by having the renderer generate a unique instance ID inside
361// its process. It then asks the plugin to reserve that ID by sending this sync
362// message. If the plugin has not yet seen this ID, it will remember it as used
363// (to prevent a race condition if another renderer tries to then use the same
364// instance), and set usable as true.
365//
366// If the plugin has already seen the instance ID, it will set usable as false
367// and the renderer must retry a new instance ID.
368IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_ReserveInstanceId,
369 PP_Instance /* instance */,
370 bool /* usable */)
371
[email protected]208aad792011-05-26 19:05:28372// Passes the WebKit preferences to the plugin.
373IPC_MESSAGE_CONTROL1(PpapiMsg_SetPreferences,
[email protected]4d2efd22011-08-18 21:58:02374 ppapi::Preferences)
[email protected]208aad792011-05-26 19:05:28375
[email protected]631179b2011-03-14 22:26:20376// Sent in both directions to see if the other side supports the given
377// interface.
378IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_SupportsInterface,
379 std::string /* interface_name */,
380 bool /* result */)
381
[email protected]246fc492012-08-27 20:28:18382#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]6761d632012-04-18 17:54:49383// Network state notification from the browser for implementing
384// PPP_NetworkState_Dev.
385IPC_MESSAGE_CONTROL1(PpapiMsg_SetNetworkState,
386 bool /* online */)
387
[email protected]951ef0b2012-07-27 22:46:53388// Requests a list of sites that have data stored from the plugin. The plugin
389// process will respond with PpapiHostMsg_GetSitesWithDataResult. This is used
390// for Flash.
391IPC_MESSAGE_CONTROL2(PpapiMsg_GetSitesWithData,
392 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26393 base::FilePath /* plugin_data_path */)
[email protected]951ef0b2012-07-27 22:46:53394IPC_MESSAGE_CONTROL2(PpapiHostMsg_GetSitesWithDataResult,
395 uint32 /* request_id */,
396 std::vector<std::string> /* sites */)
397
[email protected]1bf0fb22012-04-12 21:44:16398// Instructs the plugin to clear data for the given site & time. The plugin
399// process will respond with PpapiHostMsg_ClearSiteDataResult. This is used
400// for Flash.
[email protected]951ef0b2012-07-27 22:46:53401IPC_MESSAGE_CONTROL5(PpapiMsg_ClearSiteData,
402 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26403 base::FilePath /* plugin_data_path */,
[email protected]1bf0fb22012-04-12 21:44:16404 std::string /* site */,
405 uint64 /* flags */,
406 uint64 /* max_age */)
[email protected]951ef0b2012-07-27 22:46:53407IPC_MESSAGE_CONTROL2(PpapiHostMsg_ClearSiteDataResult,
408 uint32 /* request_id */,
[email protected]1bf0fb22012-04-12 21:44:16409 bool /* success */)
[email protected]2b657fd2011-04-18 16:00:47410
[email protected]1a559442012-05-27 07:18:46411IPC_MESSAGE_CONTROL2(PpapiMsg_DeauthorizeContentLicenses,
412 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26413 base::FilePath /* plugin_data_path */)
[email protected]1a559442012-05-27 07:18:46414IPC_MESSAGE_CONTROL2(PpapiHostMsg_DeauthorizeContentLicensesResult,
415 uint32 /* request_id */,
416 bool /* success */)
417
[email protected]ee4dd682012-06-12 15:49:33418IPC_MESSAGE_CONTROL3(PpapiMsg_GetPermissionSettings,
419 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26420 base::FilePath /* plugin_data_path */,
[email protected]ee4dd682012-06-12 15:49:33421 PP_Flash_BrowserOperations_SettingType /* setting_type */)
422IPC_MESSAGE_CONTROL4(
423 PpapiHostMsg_GetPermissionSettingsResult,
424 uint32 /* request_id */,
425 bool /* success */,
426 PP_Flash_BrowserOperations_Permission /* default_permission */,
427 ppapi::FlashSiteSettings /* sites */)
428
429IPC_MESSAGE_CONTROL5(PpapiMsg_SetDefaultPermission,
430 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26431 base::FilePath /* plugin_data_path */,
[email protected]ee4dd682012-06-12 15:49:33432 PP_Flash_BrowserOperations_SettingType /* setting_type */,
433 PP_Flash_BrowserOperations_Permission /* permission */,
434 bool /* clear_site_specific */)
435IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetDefaultPermissionResult,
436 uint32 /* request_id */,
437 bool /* success */)
438
439IPC_MESSAGE_CONTROL4(PpapiMsg_SetSitePermission,
440 uint32 /* request_id */,
[email protected]d30a36f2013-02-07 04:16:26441 base::FilePath /* plugin_data_path */,
[email protected]ee4dd682012-06-12 15:49:33442 PP_Flash_BrowserOperations_SettingType /* setting_type */,
443 ppapi::FlashSiteSettings /* sites */)
444IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetSitePermissionResult,
445 uint32 /* request_id */,
446 bool /* success */)
447
[email protected]1bf0fb22012-04-12 21:44:16448// Broker Process.
[email protected]6990e5d2011-09-30 18:10:57449IPC_SYNC_MESSAGE_CONTROL2_1(PpapiMsg_ConnectToPlugin,
[email protected]2b657fd2011-04-18 16:00:47450 PP_Instance /* instance */,
[email protected]6990e5d2011-09-30 18:10:57451 IPC::PlatformFileForTransit /* handle */,
452 int32_t /* result */)
[email protected]246fc492012-08-27 20:28:18453#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]2b657fd2011-04-18 16:00:47454
[email protected]631179b2011-03-14 22:26:20455// PPB_Audio.
456
457// Notifies the result of the audio stream create call. This is called in
458// both error cases and in the normal success case. These cases are
459// differentiated by the result code, which is one of the standard PPAPI
460// result codes.
461//
462// The handler of this message should always close all of the handles passed
463// in, since some could be valid even in the error case.
[email protected]246fc492012-08-27 20:28:18464IPC_MESSAGE_ROUTED4(PpapiMsg_PPBAudio_NotifyAudioStreamCreated,
[email protected]be0a84b2011-08-13 04:18:44465 ppapi::HostResource /* audio_id */,
[email protected]631179b2011-03-14 22:26:20466 int32_t /* result_code (will be != PP_OK on failure) */,
[email protected]246fc492012-08-27 20:28:18467 ppapi::proxy::SerializedHandle /* socket_handle */,
468 ppapi::proxy::SerializedHandle /* handle */)
[email protected]631179b2011-03-14 22:26:20469
[email protected]0f41c012011-10-21 19:49:20470// PPB_FileRef.
471IPC_MESSAGE_ROUTED3(
472 PpapiMsg_PPBFileRef_CallbackComplete,
473 ppapi::HostResource /* resource */,
[email protected]d4edb102013-04-02 09:10:41474 uint32_t /* callback_id */,
475 int32_t /* result */)
476
477IPC_MESSAGE_ROUTED4(
478 PpapiMsg_PPBFileRef_QueryCallbackComplete,
479 ppapi::HostResource /* resource */,
480 PP_FileInfo /* file_info */,
481 uint32_t /* callback_id */,
[email protected]0f41c012011-10-21 19:49:20482 int32_t /* result */)
483
[email protected]2dea98e2013-05-03 21:51:46484IPC_MESSAGE_ROUTED5(
485 PpapiMsg_PPBFileRef_ReadDirectoryEntriesCallbackComplete,
486 ppapi::HostResource /* resource */,
487 std::vector<ppapi::PPB_FileRef_CreateInfo> /* files */,
488 std::vector<PP_FileType> /* file_types */,
489 uint32_t /* callback_id */,
490 int32_t /* result */)
491
[email protected]631179b2011-03-14 22:26:20492// PPB_FileSystem.
493IPC_MESSAGE_ROUTED2(
494 PpapiMsg_PPBFileSystem_OpenComplete,
[email protected]be0a84b2011-08-13 04:18:44495 ppapi::HostResource /* filesystem */,
[email protected]631179b2011-03-14 22:26:20496 int32_t /* result */)
497
[email protected]eeb4e4a2011-07-19 16:22:06498// PPB_Graphics3D.
499IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics3D_SwapBuffersACK,
[email protected]be0a84b2011-08-13 04:18:44500 ppapi::HostResource /* graphics_3d */,
[email protected]eeb4e4a2011-07-19 16:22:06501 int32_t /* pp_error */)
502
[email protected]c42835772012-08-22 18:22:13503// PPB_ImageData.
504IPC_MESSAGE_ROUTED1(PpapiMsg_PPBImageData_NotifyUnusedImageData,
505 ppapi::HostResource /* old_image_data */)
506
[email protected]0f41c012011-10-21 19:49:20507// PPB_Instance.
508IPC_MESSAGE_ROUTED2(PpapiMsg_PPBInstance_MouseLockComplete,
509 PP_Instance /* instance */,
510 int32_t /* result */)
511
[email protected]631179b2011-03-14 22:26:20512// PPP_Class.
513IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasProperty,
514 int64 /* ppp_class */,
515 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02516 ppapi::proxy::SerializedVar /* property */,
517 ppapi::proxy::SerializedVar /* out_exception */,
[email protected]631179b2011-03-14 22:26:20518 bool /* result */)
519IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasMethod,
520 int64 /* ppp_class */,
521 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02522 ppapi::proxy::SerializedVar /* method */,
523 ppapi::proxy::SerializedVar /* out_exception */,
[email protected]631179b2011-03-14 22:26:20524 bool /* result */)
525IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_GetProperty,
526 int64 /* ppp_class */,
527 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02528 ppapi::proxy::SerializedVar /* property */,
529 ppapi::proxy::SerializedVar /* out_exception */,
530 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:20531IPC_SYNC_MESSAGE_ROUTED2_2(PpapiMsg_PPPClass_EnumerateProperties,
532 int64 /* ppp_class */,
533 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02534 std::vector<ppapi::proxy::SerializedVar> /* props */,
535 ppapi::proxy::SerializedVar /* out_exception */)
[email protected]631179b2011-03-14 22:26:20536IPC_SYNC_MESSAGE_ROUTED4_1(PpapiMsg_PPPClass_SetProperty,
537 int64 /* ppp_class */,
538 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02539 ppapi::proxy::SerializedVar /* name */,
540 ppapi::proxy::SerializedVar /* value */,
541 ppapi::proxy::SerializedVar /* out_exception */)
[email protected]631179b2011-03-14 22:26:20542IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPClass_RemoveProperty,
543 int64 /* ppp_class */,
544 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02545 ppapi::proxy::SerializedVar /* property */,
546 ppapi::proxy::SerializedVar /* out_exception */)
[email protected]631179b2011-03-14 22:26:20547IPC_SYNC_MESSAGE_ROUTED4_2(PpapiMsg_PPPClass_Call,
548 int64 /* ppp_class */,
549 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02550 ppapi::proxy::SerializedVar /* method_name */,
551 std::vector<ppapi::proxy::SerializedVar> /* args */,
552 ppapi::proxy::SerializedVar /* out_exception */,
553 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:20554IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_Construct,
555 int64 /* ppp_class */,
556 int64 /* object */,
[email protected]4d2efd22011-08-18 21:58:02557 std::vector<ppapi::proxy::SerializedVar> /* args */,
558 ppapi::proxy::SerializedVar /* out_exception */,
559 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:20560IPC_MESSAGE_ROUTED2(PpapiMsg_PPPClass_Deallocate,
561 int64 /* ppp_class */,
562 int64 /* object */)
563
[email protected]8c3bd1d2011-04-12 20:01:42564// PPP_Graphics3D_Dev.
565IPC_MESSAGE_ROUTED1(PpapiMsg_PPPGraphics3D_ContextLost,
566 PP_Instance /* instance */)
567
[email protected]493d14212011-07-07 15:38:48568// PPP_InputEvent.
569IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent,
570 PP_Instance /* instance */,
571 ppapi::InputEventData /* data */)
572IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInputEvent_HandleFilteredInputEvent,
573 PP_Instance /* instance */,
574 ppapi::InputEventData /* data */,
575 PP_Bool /* result */)
576
[email protected]631179b2011-03-14 22:26:20577// PPP_Instance.
578IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPInstance_DidCreate,
579 PP_Instance /* instance */,
580 std::vector<std::string> /* argn */,
581 std::vector<std::string> /* argv */,
582 PP_Bool /* result */)
[email protected]5e5d0b02011-04-04 19:32:07583IPC_SYNC_MESSAGE_ROUTED1_0(PpapiMsg_PPPInstance_DidDestroy,
584 PP_Instance /* instance */)
[email protected]e8f07ac2012-01-03 17:43:36585IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_DidChangeView,
[email protected]631179b2011-03-14 22:26:20586 PP_Instance /* instance */,
[email protected]e8f07ac2012-01-03 17:43:36587 ppapi::ViewData /* new_data */,
[email protected]06e0a342011-09-27 04:24:30588 PP_Bool /* flash_fullscreen */)
[email protected]631179b2011-03-14 22:26:20589IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInstance_DidChangeFocus,
590 PP_Instance /* instance */,
591 PP_Bool /* has_focus */)
[email protected]47cb253f2013-05-16 01:50:40592IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_HandleDocumentLoad,
593 PP_Instance /* instance */,
594 int /* pending_loader_host_id */,
595 ppapi::URLResponseInfoData /* response */)
[email protected]631179b2011-03-14 22:26:20596
[email protected]b20df1c2011-08-03 14:38:24597// PPP_Messaging.
598IPC_MESSAGE_ROUTED2(PpapiMsg_PPPMessaging_HandleMessage,
599 PP_Instance /* instance */,
[email protected]4d2efd22011-08-18 21:58:02600 ppapi::proxy::SerializedVar /* message */)
[email protected]b20df1c2011-08-03 14:38:24601
[email protected]1314f5f2011-10-16 02:26:56602// PPP_MouseLock.
[email protected]18d871f2011-09-08 16:56:34603IPC_MESSAGE_ROUTED1(PpapiMsg_PPPMouseLock_MouseLockLost,
604 PP_Instance /* instance */)
605
[email protected]e8f578d2012-09-17 19:27:10606// PPB_NetworkMonitor_Private.
607IPC_MESSAGE_ROUTED2(PpapiMsg_PPBNetworkMonitor_NetworkList,
608 uint32 /* plugin_dispatcher_id */,
609 ppapi::NetworkList /* network_list */)
610
[email protected]3890cfff2012-02-29 07:54:18611// PPP_Printing
612IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_QuerySupportedFormats,
613 PP_Instance /* instance */,
614 uint32_t /* result */)
615IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_Begin,
616 PP_Instance /* instance */,
617 std::string /* settings_string */,
618 int32_t /* result */)
619IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_PrintPages,
620 PP_Instance /* instance */,
621 std::vector<PP_PrintPageNumberRange_Dev> /* pages */,
622 ppapi::HostResource /* result */)
623IPC_MESSAGE_ROUTED1(PpapiMsg_PPPPrinting_End,
624 PP_Instance /* instance */)
625IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_IsScalingDisabled,
626 PP_Instance /* instance */,
627 bool /* result */)
628
[email protected]3c8c74c2012-03-15 07:34:52629// PPP_TextInput.
630IPC_MESSAGE_ROUTED2(PpapiMsg_PPPTextInput_RequestSurroundingText,
631 PP_Instance /* instance */,
632 uint32_t /* desired_number_of_characters */)
633
[email protected]246fc492012-08-27 20:28:18634#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]6761d632012-04-18 17:54:49635// PPB_Broker.
636IPC_MESSAGE_ROUTED3(
637 PpapiMsg_PPBBroker_ConnectComplete,
638 ppapi::HostResource /* broker */,
639 IPC::PlatformFileForTransit /* handle */,
640 int32_t /* result */)
641
[email protected]e5aeef02012-08-17 00:18:43642// PPP_ContentDecryptor_Dev
[email protected]f1b1db02012-10-29 22:50:23643IPC_MESSAGE_ROUTED4(PpapiMsg_PPPContentDecryptor_GenerateKeyRequest,
[email protected]e5aeef02012-08-17 00:18:43644 PP_Instance /* instance */,
645 ppapi::proxy::SerializedVar /* key_system, String */,
[email protected]f1b1db02012-10-29 22:50:23646 ppapi::proxy::SerializedVar /* type, String */,
[email protected]e5aeef02012-08-17 00:18:43647 ppapi::proxy::SerializedVar /* init_data, ArrayBuffer */)
[email protected]98ad9782012-08-22 04:06:22648IPC_MESSAGE_ROUTED4(PpapiMsg_PPPContentDecryptor_AddKey,
[email protected]e5aeef02012-08-17 00:18:43649 PP_Instance /* instance */,
650 ppapi::proxy::SerializedVar /* session_id, String */,
[email protected]98ad9782012-08-22 04:06:22651 ppapi::proxy::SerializedVar /* key, ArrayBuffer */,
652 ppapi::proxy::SerializedVar /* init_data, ArrayBuffer */)
[email protected]e5aeef02012-08-17 00:18:43653IPC_MESSAGE_ROUTED2(PpapiMsg_PPPContentDecryptor_CancelKeyRequest,
654 PP_Instance /* instance */,
655 ppapi::proxy::SerializedVar /* session_id, String */)
656IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_Decrypt,
657 PP_Instance /* instance */,
658 ppapi::proxy::PPPDecryptor_Buffer /* buffer */,
[email protected]98ad9782012-08-22 04:06:22659 std::string /* serialized_block_info */)
[email protected]e9d3a1022012-10-11 23:43:55660IPC_MESSAGE_ROUTED3(
[email protected]c999b3b72012-10-19 22:33:46661 PpapiMsg_PPPContentDecryptor_InitializeAudioDecoder,
662 PP_Instance /* instance */,
663 std::string /* serialized_decoder_config */,
664 ppapi::proxy::PPPDecryptor_Buffer /* extra_data_buffer */)
665IPC_MESSAGE_ROUTED3(
[email protected]e9d3a1022012-10-11 23:43:55666 PpapiMsg_PPPContentDecryptor_InitializeVideoDecoder,
667 PP_Instance /* instance */,
668 std::string /* serialized_decoder_config */,
669 ppapi::proxy::PPPDecryptor_Buffer /* extra_data_buffer. */)
[email protected]23de87452012-10-12 07:03:09670IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_DeinitializeDecoder,
671 PP_Instance /* instance */,
672 PP_DecryptorStreamType /* decoder_type */,
673 uint32_t /* request_id */)
674IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_ResetDecoder,
675 PP_Instance /* instance */,
676 PP_DecryptorStreamType /* decoder_type */,
677 uint32_t /* request_id */)
[email protected]467434d2012-10-12 10:48:53678IPC_MESSAGE_ROUTED4(PpapiMsg_PPPContentDecryptor_DecryptAndDecode,
[email protected]e5aeef02012-08-17 00:18:43679 PP_Instance /* instance */,
[email protected]467434d2012-10-12 10:48:53680 PP_DecryptorStreamType /* decoder_type */,
[email protected]98ad9782012-08-22 04:06:22681 ppapi::proxy::PPPDecryptor_Buffer /* buffer */,
682 std::string /* serialized_block_info */)
[email protected]667591d2012-09-04 21:30:12683#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]6761d632012-04-18 17:54:49684
685// PPB_TCPSocket_Private.
686IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPSocket_ConnectACK,
687 uint32 /* plugin_dispatcher_id */,
688 uint32 /* socket_id */,
689 bool /* succeeded */,
690 PP_NetAddress_Private /* local_addr */,
691 PP_NetAddress_Private /* remote_addr */)
692IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_SSLHandshakeACK,
693 uint32 /* plugin_dispatcher_id */,
694 uint32 /* socket_id */,
695 bool /* succeeded */,
696 ppapi::PPB_X509Certificate_Fields /* certificate_fields */)
697IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_ReadACK,
698 uint32 /* plugin_dispatcher_id */,
699 uint32 /* socket_id */,
700 bool /* succeeded */,
701 std::string /* data */)
702IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_WriteACK,
703 uint32 /* plugin_dispatcher_id */,
704 uint32 /* socket_id */,
705 bool /* succeeded */,
706 int32_t /* bytes_written */)
[email protected]466a5832013-02-22 11:17:08707IPC_MESSAGE_ROUTED3(PpapiMsg_PPBTCPSocket_SetBoolOptionACK,
708 uint32 /* plugin_dispatcher_id */,
709 uint32 /* socket_id */,
710 bool /* succeeded */)
[email protected]6761d632012-04-18 17:54:49711
[email protected]6761d632012-04-18 17:54:49712// PPB_TCPServerSocket_Private.
713
714// |socket_resource| should not be used as Resource in browser. The
715// only purpose of this argument is to be echoed back.
716// |status| == PP_ERROR_NOSPACE means that the socket table is full
717// and new socket can't be initialized.
718// |status| == PP_ERROR_FAILED means that socket is correctly
719// initialized (if needed) but Listen call is failed.
720// |status| == PP_OK means that socket is correctly initialized (if
721// needed) and Listen call succeeds.
722IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPServerSocket_ListenACK,
723 uint32 /* plugin_dispatcher_id */,
724 PP_Resource /* socket_resource */,
725 uint32 /* socket_id */,
726 int32_t /* status */)
727IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPServerSocket_AcceptACK,
728 uint32 /* plugin_dispatcher_id */,
729 uint32 /* server_socket_id */,
730 uint32 /* accepted_socket_id */,
731 PP_NetAddress_Private /* local_addr */,
732 PP_NetAddress_Private /* remote_addr */)
733
[email protected]667591d2012-09-04 21:30:12734#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]6761d632012-04-18 17:54:49735// PPP_Instance_Private.
736IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPInstancePrivate_GetInstanceObject,
737 PP_Instance /* instance */,
738 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:20739
[email protected]7ace8ad2011-08-06 03:23:58740// PPB_VideoDecoder_Dev.
741// (Messages from renderer to plugin to notify it to run callbacks.)
742IPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoDecoder_EndOfBitstreamACK,
[email protected]be0a84b2011-08-13 04:18:44743 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58744 int32_t /* bitstream buffer id */,
745 int32_t /* PP_CompletionCallback result */)
746IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_FlushACK,
[email protected]be0a84b2011-08-13 04:18:44747 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58748 int32_t /* PP_CompletionCallback result */)
749IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_ResetACK,
[email protected]be0a84b2011-08-13 04:18:44750 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58751 int32_t /* PP_CompletionCallback result */)
752
753// PPP_VideoDecoder_Dev.
[email protected]08bab532012-06-08 19:39:45754IPC_MESSAGE_ROUTED4(PpapiMsg_PPPVideoDecoder_ProvidePictureBuffers,
[email protected]be0a84b2011-08-13 04:18:44755 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58756 uint32_t /* requested number of buffers */,
[email protected]08bab532012-06-08 19:39:45757 PP_Size /* dimensions of buffers */,
758 uint32_t /* texture_target */)
[email protected]7ace8ad2011-08-06 03:23:58759IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_DismissPictureBuffer,
[email protected]be0a84b2011-08-13 04:18:44760 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58761 int32_t /* picture buffer id */)
762IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_PictureReady,
[email protected]be0a84b2011-08-13 04:18:44763 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58764 PP_Picture_Dev /* output picture */)
[email protected]7ace8ad2011-08-06 03:23:58765IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_NotifyError,
[email protected]be0a84b2011-08-13 04:18:44766 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:58767 PP_VideoDecodeError_Dev /* error */)
[email protected]246fc492012-08-27 20:28:18768#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]7ace8ad2011-08-06 03:23:58769
[email protected]631179b2011-03-14 22:26:20770// -----------------------------------------------------------------------------
771// These are from the plugin to the renderer.
772
773// Reply to PpapiMsg_CreateChannel. The handle will be NULL if the channel
774// could not be established. This could be because the IPC could not be created
775// for some weird reason, but more likely that the plugin failed to load or
776// initialize properly.
777IPC_MESSAGE_CONTROL1(PpapiHostMsg_ChannelCreated,
778 IPC::ChannelHandle /* handle */)
779
[email protected]a9b16dd2012-01-31 05:00:26780// Logs the given message to the console of all instances.
781IPC_MESSAGE_CONTROL4(PpapiHostMsg_LogWithSource,
782 PP_Instance /* instance */,
783 int /* log_level */,
784 std::string /* source */,
785 std::string /* value */)
786
[email protected]631179b2011-03-14 22:26:20787// PPB_Audio.
[email protected]55cdf6052011-05-13 19:22:53788IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBAudio_Create,
[email protected]631179b2011-03-14 22:26:20789 PP_Instance /* instance_id */,
[email protected]55cdf6052011-05-13 19:22:53790 int32_t /* sample_rate */,
791 uint32_t /* sample_frame_count */,
[email protected]be0a84b2011-08-13 04:18:44792 ppapi::HostResource /* result */)
[email protected]631179b2011-03-14 22:26:20793IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudio_StartOrStop,
[email protected]be0a84b2011-08-13 04:18:44794 ppapi::HostResource /* audio_id */,
[email protected]631179b2011-03-14 22:26:20795 bool /* play */)
796
[email protected]631179b2011-03-14 22:26:20797// PPB_Core.
798IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_AddRefResource,
[email protected]be0a84b2011-08-13 04:18:44799 ppapi::HostResource)
[email protected]631179b2011-03-14 22:26:20800IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_ReleaseResource,
[email protected]be0a84b2011-08-13 04:18:44801 ppapi::HostResource)
[email protected]631179b2011-03-14 22:26:20802
[email protected]631179b2011-03-14 22:26:20803// PPB_FileRef.
[email protected]ef9225f2013-04-12 20:28:14804IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFileRef_Create,
805 PP_Instance /* instance */,
806 PP_Resource /* file_system */,
[email protected]631179b2011-03-14 22:26:20807 std::string /* path */,
[email protected]6f75c952011-08-26 04:51:07808 ppapi::PPB_FileRef_CreateInfo /* result */)
[email protected]631179b2011-03-14 22:26:20809IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetParent,
[email protected]be0a84b2011-08-13 04:18:44810 ppapi::HostResource /* file_ref */,
[email protected]6f75c952011-08-26 04:51:07811 ppapi::PPB_FileRef_CreateInfo /* result */)
[email protected]631179b2011-03-14 22:26:20812IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_MakeDirectory,
[email protected]be0a84b2011-08-13 04:18:44813 ppapi::HostResource /* file_ref */,
[email protected]631179b2011-03-14 22:26:20814 PP_Bool /* make_ancestors */,
[email protected]d4edb102013-04-02 09:10:41815 uint32_t /* callback_id */)
[email protected]631179b2011-03-14 22:26:20816IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFileRef_Touch,
[email protected]be0a84b2011-08-13 04:18:44817 ppapi::HostResource /* file_ref */,
[email protected]631179b2011-03-14 22:26:20818 PP_Time /* last_access */,
819 PP_Time /* last_modified */,
[email protected]d4edb102013-04-02 09:10:41820 uint32_t /* callback_id */)
[email protected]631179b2011-03-14 22:26:20821IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileRef_Delete,
[email protected]be0a84b2011-08-13 04:18:44822 ppapi::HostResource /* file_ref */,
[email protected]d4edb102013-04-02 09:10:41823 uint32_t /* callback_id */)
[email protected]631179b2011-03-14 22:26:20824IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_Rename,
[email protected]be0a84b2011-08-13 04:18:44825 ppapi::HostResource /* file_ref */,
826 ppapi::HostResource /* new_file_ref */,
[email protected]d4edb102013-04-02 09:10:41827 uint32_t /* callback_id */)
828IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileRef_Query,
829 ppapi::HostResource /* file_ref */,
830 uint32_t /* callback_id */)
[email protected]f12a3832011-11-28 23:11:45831IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetAbsolutePath,
832 ppapi::HostResource /* file_ref */,
833 ppapi::proxy::SerializedVar /* result */)
[email protected]2dea98e2013-05-03 21:51:46834IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileRef_ReadDirectoryEntries,
835 ppapi::HostResource /* file_ref */,
836 uint32_t /* callback_id */)
[email protected]631179b2011-03-14 22:26:20837
[email protected]eeb4e4a2011-07-19 16:22:06838// PPB_Graphics3D.
[email protected]9ed07f82012-05-29 21:54:55839IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics3D_Create,
[email protected]eeb4e4a2011-07-19 16:22:06840 PP_Instance /* instance */,
[email protected]9ed07f82012-05-29 21:54:55841 ppapi::HostResource /* share_context */,
[email protected]eeb4e4a2011-07-19 16:22:06842 std::vector<int32_t> /* attrib_list */,
[email protected]be0a84b2011-08-13 04:18:44843 ppapi::HostResource /* result */)
[email protected]503b3a22011-12-12 23:29:40844IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBGraphics3D_InitCommandBuffer,
845 ppapi::HostResource /* context */)
846IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_SetGetBuffer,
[email protected]be0a84b2011-08-13 04:18:44847 ppapi::HostResource /* context */,
[email protected]503b3a22011-12-12 23:29:40848 int32 /* transfer_buffer_id */)
[email protected]571b35e82012-05-19 00:04:35849IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBGraphics3D_GetState,
[email protected]be0a84b2011-08-13 04:18:44850 ppapi::HostResource /* context */,
[email protected]571b35e82012-05-19 00:04:35851 gpu::CommandBuffer::State /* state */,
852 bool /* success */)
853IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBGraphics3D_Flush,
[email protected]be0a84b2011-08-13 04:18:44854 ppapi::HostResource /* context */,
[email protected]eeb4e4a2011-07-19 16:22:06855 int32 /* put_offset */,
856 int32 /* last_known_get */,
[email protected]571b35e82012-05-19 00:04:35857 gpu::CommandBuffer::State /* state */,
858 bool /* success */)
[email protected]eeb4e4a2011-07-19 16:22:06859IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics3D_AsyncFlush,
[email protected]be0a84b2011-08-13 04:18:44860 ppapi::HostResource /* context */,
[email protected]eeb4e4a2011-07-19 16:22:06861 int32 /* put_offset */)
[email protected]eeb4e4a2011-07-19 16:22:06862IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBGraphics3D_CreateTransferBuffer,
[email protected]be0a84b2011-08-13 04:18:44863 ppapi::HostResource /* context */,
[email protected]b31199e2012-12-12 00:48:29864 uint32 /* size */,
[email protected]eeb4e4a2011-07-19 16:22:06865 int32 /* id */)
[email protected]eeb4e4a2011-07-19 16:22:06866IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_DestroyTransferBuffer,
[email protected]be0a84b2011-08-13 04:18:44867 ppapi::HostResource /* context */,
[email protected]eeb4e4a2011-07-19 16:22:06868 int32 /* id */)
[email protected]246fc492012-08-27 20:28:18869IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBGraphics3D_GetTransferBuffer,
[email protected]be0a84b2011-08-13 04:18:44870 ppapi::HostResource /* context */,
[email protected]eeb4e4a2011-07-19 16:22:06871 int32 /* id */,
[email protected]246fc492012-08-27 20:28:18872 ppapi::proxy::SerializedHandle /* transfer_buffer */)
[email protected]eeb4e4a2011-07-19 16:22:06873IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics3D_SwapBuffers,
[email protected]be0a84b2011-08-13 04:18:44874 ppapi::HostResource /* graphics_3d */)
[email protected]b096d032013-03-08 03:08:01875IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBGraphics3D_InsertSyncPoint,
876 ppapi::HostResource /* context */,
877 uint32 /* sync_point */)
[email protected]eeb4e4a2011-07-19 16:22:06878
[email protected]2a1d6d912011-12-04 23:29:06879// PPB_ImageData.
880IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_Create,
881 PP_Instance /* instance */,
882 int32 /* format */,
883 PP_Size /* size */,
884 PP_Bool /* init_to_zero */,
885 ppapi::HostResource /* result_resource */,
886 std::string /* image_data_desc */,
887 ppapi::proxy::ImageHandle /* result */)
[email protected]16b7b272012-07-25 21:54:49888IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_CreateNaCl,
889 PP_Instance /* instance */,
890 int32 /* format */,
891 PP_Size /* size */,
892 PP_Bool /* init_to_zero */,
893 ppapi::HostResource /* result_resource */,
894 std::string /* image_data_desc */,
[email protected]246fc492012-08-27 20:28:18895 ppapi::proxy::SerializedHandle /* result */)
[email protected]2a1d6d912011-12-04 23:29:06896
[email protected]631179b2011-03-14 22:26:20897// PPB_Instance.
898IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetWindowObject,
899 PP_Instance /* instance */,
[email protected]4d2efd22011-08-18 21:58:02900 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:20901IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetOwnerElementObject,
902 PP_Instance /* instance */,
[email protected]4d2efd22011-08-18 21:58:02903 ppapi::proxy::SerializedVar /* result */)
[email protected]473ef7d2012-12-03 23:39:05904IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_BindGraphics,
905 PP_Instance /* instance */,
906 PP_Resource /* device */)
[email protected]c59ed5892012-02-18 01:10:19907IPC_SYNC_MESSAGE_ROUTED1_1(
908 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputSampleRate,
909 PP_Instance /* instance */,
910 uint32_t /* result */)
911IPC_SYNC_MESSAGE_ROUTED1_1(
912 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputBufferSize,
913 PP_Instance /* instance */,
914 uint32_t /* result */)
[email protected]631179b2011-03-14 22:26:20915IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_IsFullFrame,
916 PP_Instance /* instance */,
917 PP_Bool /* result */)
918IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBInstance_ExecuteScript,
919 PP_Instance /* instance */,
[email protected]4d2efd22011-08-18 21:58:02920 ppapi::proxy::SerializedVar /* script */,
921 ppapi::proxy::SerializedVar /* out_exception */,
922 ppapi::proxy::SerializedVar /* result */)
[email protected]8d770e492011-10-11 04:54:31923IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDefaultCharSet,
924 PP_Instance /* instance */,
925 ppapi::proxy::SerializedVar /* result */)
[email protected]06e0a342011-09-27 04:24:30926IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_SetFullscreen,
927 PP_Instance /* instance */,
928 PP_Bool /* fullscreen */,
929 PP_Bool /* result */)
930IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetScreenSize,
931 PP_Instance /* instance */,
932 PP_Bool /* result */,
933 PP_Size /* size */)
[email protected]493d14212011-07-07 15:38:48934IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_RequestInputEvents,
935 PP_Instance /* instance */,
936 bool /* is_filtering */,
937 uint32_t /* event_classes */)
938IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_ClearInputEvents,
939 PP_Instance /* instance */,
940 uint32_t /* event_classes */)
[email protected]55a5a522011-07-06 22:52:40941IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_PostMessage,
942 PP_Instance /* instance */,
[email protected]4d2efd22011-08-18 21:58:02943 ppapi::proxy::SerializedVar /* message */)
[email protected]0f41c012011-10-21 19:49:20944IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_LockMouse,
945 PP_Instance /* instance */)
[email protected]18d871f2011-09-08 16:56:34946IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_UnlockMouse,
947 PP_Instance /* instance */)
[email protected]03460232011-10-10 17:23:57948IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_ResolveRelativeToDocument,
949 PP_Instance /* instance */,
950 ppapi::proxy::SerializedVar /* relative */,
951 ppapi::proxy::SerializedVar /* result */)
952IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanRequest,
953 PP_Instance /* instance */,
954 ppapi::proxy::SerializedVar /* relative */,
955 PP_Bool /* result */)
956IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanAccessDocument,
957 PP_Instance /* active */,
958 PP_Instance /* target */,
959 PP_Bool /* result */)
[email protected]32938de2012-10-19 18:42:32960IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetDocumentURL,
[email protected]03460232011-10-10 17:23:57961 PP_Instance /* active */,
[email protected]32938de2012-10-19 18:42:32962 PP_URLComponents_Dev /* components */,
[email protected]03460232011-10-10 17:23:57963 ppapi::proxy::SerializedVar /* result */)
964IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetPluginInstanceURL,
965 PP_Instance /* active */,
966 ppapi::proxy::SerializedVar /* result */)
[email protected]33ec50562012-04-08 20:28:43967IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_SetCursor,
968 PP_Instance /* instance */,
969 int32_t /* type */,
970 ppapi::HostResource /* custom_image */,
971 PP_Point /* hot_spot */)
[email protected]4c44183a2012-04-27 16:52:23972IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SetTextInputType,
[email protected]2daba2f32011-09-29 04:23:09973 PP_Instance /* instance */,
974 PP_TextInput_Type /* type */)
[email protected]4c44183a2012-04-27 16:52:23975IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_UpdateCaretPosition,
[email protected]2daba2f32011-09-29 04:23:09976 PP_Instance /* instance */,
977 PP_Rect /* caret */,
978 PP_Rect /* bounding_box */)
[email protected]4c44183a2012-04-27 16:52:23979IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_CancelCompositionText,
[email protected]2daba2f32011-09-29 04:23:09980 PP_Instance /* instance */)
[email protected]4c44183a2012-04-27 16:52:23981IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_UpdateSurroundingText,
[email protected]3c8c74c2012-03-15 07:34:52982 PP_Instance /* instance */,
983 std::string /* text */,
984 uint32_t /* caret */,
985 uint32_t /* anchor */)
[email protected]2daba2f32011-09-29 04:23:09986
[email protected]631179b2011-03-14 22:26:20987// PPB_Var.
[email protected]5b2d3852011-04-19 23:22:40988IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVar_AddRefObject,
989 int64 /* object_id */,
990 int /* unused - need a return value for sync msgs */)
[email protected]631179b2011-03-14 22:26:20991IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVar_ReleaseObject,
992 int64 /* object_id */)
[email protected]631179b2011-03-14 22:26:20993IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasProperty,
[email protected]4d2efd22011-08-18 21:58:02994 ppapi::proxy::SerializedVar /* object */,
995 ppapi::proxy::SerializedVar /* property */,
996 ppapi::proxy::SerializedVar /* out_exception */,
[email protected]631179b2011-03-14 22:26:20997 PP_Bool /* result */)
998IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasMethodDeprecated,
[email protected]4d2efd22011-08-18 21:58:02999 ppapi::proxy::SerializedVar /* object */,
1000 ppapi::proxy::SerializedVar /* method */,
1001 ppapi::proxy::SerializedVar /* out_exception */,
[email protected]631179b2011-03-14 22:26:201002 PP_Bool /* result */)
1003IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_GetProperty,
[email protected]4d2efd22011-08-18 21:58:021004 ppapi::proxy::SerializedVar /* object */,
1005 ppapi::proxy::SerializedVar /* property */,
1006 ppapi::proxy::SerializedVar /* out_exception */,
1007 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:201008IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_DeleteProperty,
[email protected]4d2efd22011-08-18 21:58:021009 ppapi::proxy::SerializedVar /* object */,
1010 ppapi::proxy::SerializedVar /* property */,
1011 ppapi::proxy::SerializedVar /* out_exception */,
[email protected]631179b2011-03-14 22:26:201012 PP_Bool /* result */)
1013IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBVar_EnumerateProperties,
[email protected]4d2efd22011-08-18 21:58:021014 ppapi::proxy::SerializedVar /* object */,
1015 std::vector<ppapi::proxy::SerializedVar> /* props */,
1016 ppapi::proxy::SerializedVar /* out_exception */)
[email protected]631179b2011-03-14 22:26:201017IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_SetPropertyDeprecated,
[email protected]4d2efd22011-08-18 21:58:021018 ppapi::proxy::SerializedVar /* object */,
1019 ppapi::proxy::SerializedVar /* name */,
1020 ppapi::proxy::SerializedVar /* value */,
1021 ppapi::proxy::SerializedVar /* out_exception */)
[email protected]631179b2011-03-14 22:26:201022IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_CallDeprecated,
[email protected]4d2efd22011-08-18 21:58:021023 ppapi::proxy::SerializedVar /* object */,
1024 ppapi::proxy::SerializedVar /* method_name */,
1025 std::vector<ppapi::proxy::SerializedVar> /* args */,
1026 ppapi::proxy::SerializedVar /* out_exception */,
1027 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:201028IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_Construct,
[email protected]4d2efd22011-08-18 21:58:021029 ppapi::proxy::SerializedVar /* object */,
1030 std::vector<ppapi::proxy::SerializedVar> /* args */,
1031 ppapi::proxy::SerializedVar /* out_exception */,
1032 ppapi::proxy::SerializedVar /* result */)
[email protected]631179b2011-03-14 22:26:201033IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_IsInstanceOfDeprecated,
[email protected]4d2efd22011-08-18 21:58:021034 ppapi::proxy::SerializedVar /* var */,
[email protected]631179b2011-03-14 22:26:201035 int64 /* object_class */,
1036 int64 /* object-data */,
1037 PP_Bool /* result */)
1038IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_CreateObjectDeprecated,
1039 PP_Instance /* instance */,
1040 int64 /* object_class */,
1041 int64 /* object_data */,
[email protected]4d2efd22011-08-18 21:58:021042 ppapi::proxy::SerializedVar /* result */)
[email protected]6239d342011-05-06 22:55:471043
[email protected]246fc492012-08-27 20:28:181044#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]6761d632012-04-18 17:54:491045// PPB_Broker.
1046IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBBroker_Create,
1047 PP_Instance /* instance */,
1048 ppapi::HostResource /* result_resource */)
1049IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBBroker_Connect,
1050 ppapi::HostResource /* broker */)
1051
1052// PPB_Buffer.
[email protected]246fc492012-08-27 20:28:181053IPC_SYNC_MESSAGE_ROUTED2_2(
1054 PpapiHostMsg_PPBBuffer_Create,
1055 PP_Instance /* instance */,
1056 uint32_t /* size */,
1057 ppapi::HostResource /* result_resource */,
1058 ppapi::proxy::SerializedHandle /* result_shm_handle */)
[email protected]6761d632012-04-18 17:54:491059
[email protected]e5aeef02012-08-17 00:18:431060// PPB_ContentDecryptor_Dev messages handled in PPB_Instance_Proxy.
1061IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_NeedKey,
1062 PP_Instance /* instance */,
1063 ppapi::proxy::SerializedVar /* key_system, String */,
1064 ppapi::proxy::SerializedVar /* session_id, String */,
1065 ppapi::proxy::SerializedVar /* init_data, ArrayBuffer */)
1066IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_KeyAdded,
1067 PP_Instance /* instance */,
1068 ppapi::proxy::SerializedVar /* key_system, String */,
1069 ppapi::proxy::SerializedVar /* session_id, String */)
1070IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBInstance_KeyMessage,
1071 PP_Instance /* instance */,
1072 ppapi::proxy::SerializedVar /* key_system, String */,
1073 ppapi::proxy::SerializedVar /* session_id, String */,
[email protected]a6e4fbf2012-12-12 05:25:001074 ppapi::proxy::SerializedVar /* message, ArrayBuffer */,
[email protected]e5aeef02012-08-17 00:18:431075 ppapi::proxy::SerializedVar /* default_url, String */)
1076IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBInstance_KeyError,
1077 PP_Instance /* instance */,
1078 ppapi::proxy::SerializedVar /* key_system, String */,
1079 ppapi::proxy::SerializedVar /* session_id, String */,
1080 int32_t /* media_error */,
1081 int32_t /* system_code */)
1082IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverBlock,
1083 PP_Instance /* instance */,
1084 PP_Resource /* decrypted_block, PPB_Buffer_Dev */,
[email protected]98ad9782012-08-22 04:06:221085 std::string /* serialized_block_info */)
[email protected]c999b3b72012-10-19 22:33:461086IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_DecoderInitializeDone,
[email protected]e9d3a1022012-10-11 23:43:551087 PP_Instance /* instance */,
[email protected]c999b3b72012-10-19 22:33:461088 PP_DecryptorStreamType /* decoder_type */,
1089 uint32_t /* request_id */,
1090 PP_Bool /* success */)
[email protected]23de87452012-10-12 07:03:091091IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DecoderDeinitializeDone,
1092 PP_Instance /* instance */,
1093 PP_DecryptorStreamType /* decoder_type */,
1094 uint32_t /* request_id */)
1095IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DecoderResetDone,
1096 PP_Instance /* instance */,
1097 PP_DecryptorStreamType /* decoder_type */,
1098 uint32_t /* request_id */)
[email protected]e5aeef02012-08-17 00:18:431099IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverFrame,
1100 PP_Instance /* instance */,
1101 PP_Resource /* decrypted_frame, PPB_Buffer_Dev */,
[email protected]98ad9782012-08-22 04:06:221102 std::string /* serialized_block_info */)
[email protected]e5aeef02012-08-17 00:18:431103IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverSamples,
1104 PP_Instance /* instance */,
[email protected]c999b3b72012-10-19 22:33:461105 PP_Resource /* audio_frames, PPB_Buffer_Dev */,
[email protected]98ad9782012-08-22 04:06:221106 std::string /* serialized_block_info */)
[email protected]e8f578d2012-09-17 19:27:101107#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]e5aeef02012-08-17 00:18:431108
[email protected]6761d632012-04-18 17:54:491109// PPB_NetworkMonitor_Private.
1110IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Start,
1111 uint32 /* plugin_dispatcher_id */)
1112IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Stop,
1113 uint32 /* plugin_dispatcher_id */)
1114
[email protected]6761d632012-04-18 17:54:491115// PPB_Testing.
1116IPC_SYNC_MESSAGE_ROUTED3_1(
1117 PpapiHostMsg_PPBTesting_ReadImageData,
1118 ppapi::HostResource /* device_context_2d */,
1119 ppapi::HostResource /* image */,
1120 PP_Point /* top_left */,
1121 PP_Bool /* result */)
1122IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBTesting_GetLiveObjectsForInstance,
1123 PP_Instance /* instance */,
1124 uint32 /* result */)
1125IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBTesting_SimulateInputEvent,
1126 PP_Instance /* instance */,
1127 ppapi::InputEventData /* input_event */)
[email protected]38f428f12013-04-19 14:46:051128IPC_SYNC_MESSAGE_ROUTED1_0(
1129 PpapiHostMsg_PPBTesting_SetMinimumArrayBufferSizeForShmem,
1130 uint32_t /* threshold */)
[email protected]6761d632012-04-18 17:54:491131
[email protected]667591d2012-09-04 21:30:121132#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]0fa46e82011-08-09 07:31:491133
[email protected]7ace8ad2011-08-06 03:23:581134// PPB_VideoDecoder.
1135IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVideoDecoder_Create,
1136 PP_Instance /* instance */,
[email protected]be0a84b2011-08-13 04:18:441137 ppapi::HostResource /* context */,
[email protected]2ffc31a2011-09-01 03:18:281138 PP_VideoDecoder_Profile /* profile */,
[email protected]be0a84b2011-08-13 04:18:441139 ppapi::HostResource /* result */)
[email protected]7ace8ad2011-08-06 03:23:581140IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoDecoder_Decode,
[email protected]be0a84b2011-08-13 04:18:441141 ppapi::HostResource /* video_decoder */,
1142 ppapi::HostResource /* bitstream buffer */,
[email protected]7ace8ad2011-08-06 03:23:581143 int32 /* bitstream buffer id */,
[email protected]b31199e2012-12-12 00:48:291144 uint32 /* size of buffer */)
[email protected]7ace8ad2011-08-06 03:23:581145IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_AssignPictureBuffers,
[email protected]be0a84b2011-08-13 04:18:441146 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:581147 std::vector<PP_PictureBuffer_Dev> /* picture buffers */)
1148IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_ReusePictureBuffer,
[email protected]be0a84b2011-08-13 04:18:441149 ppapi::HostResource /* video_decoder */,
[email protected]7ace8ad2011-08-06 03:23:581150 int32_t /* picture buffer id */)
1151IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Flush,
[email protected]be0a84b2011-08-13 04:18:441152 ppapi::HostResource /* video_decoder */)
[email protected]7ace8ad2011-08-06 03:23:581153IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Reset,
[email protected]be0a84b2011-08-13 04:18:441154 ppapi::HostResource /* video_decoder */)
[email protected]7ace8ad2011-08-06 03:23:581155IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBVideoDecoder_Destroy,
[email protected]be0a84b2011-08-13 04:18:441156 ppapi::HostResource /* video_decoder */)
[email protected]339fbcff2012-02-29 16:10:321157
[email protected]339fbcff2012-02-29 16:10:321158// PPB_Flash_MessageLoop.
1159IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Create,
1160 PP_Instance /* instance */,
1161 ppapi::HostResource /* result */)
1162IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Run,
1163 ppapi::HostResource /* flash_message_loop */,
1164 int32_t /* result */)
1165IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlashMessageLoop_Quit,
1166 ppapi::HostResource /* flash_message_loop */)
[email protected]667591d2012-09-04 21:30:121167#endif // !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]339fbcff2012-02-29 16:10:321168
[email protected]339fbcff2012-02-29 16:10:321169// PPB_TCPSocket_Private.
1170IPC_SYNC_MESSAGE_CONTROL2_1(PpapiHostMsg_PPBTCPSocket_Create,
1171 int32 /* routing_id */,
1172 uint32 /* plugin_dispatcher_id */,
1173 uint32 /* socket_id */)
1174IPC_MESSAGE_CONTROL4(PpapiHostMsg_PPBTCPSocket_Connect,
1175 int32 /* routing_id */,
1176 uint32 /* socket_id */,
1177 std::string /* host */,
1178 uint16_t /* port */)
1179IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBTCPSocket_ConnectWithNetAddress,
1180 int32 /* routing_id */,
1181 uint32 /* socket_id */,
1182 PP_NetAddress_Private /* net_addr */)
[email protected]92a794992012-04-12 03:38:221183IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPSocket_SSLHandshake,
[email protected]339fbcff2012-02-29 16:10:321184 uint32 /* socket_id */,
1185 std::string /* server_name */,
[email protected]92a794992012-04-12 03:38:221186 uint16_t /* server_port */,
1187 std::vector<std::vector<char> > /* trusted_certs */,
1188 std::vector<std::vector<char> > /* untrusted_certs */)
[email protected]339fbcff2012-02-29 16:10:321189IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Read,
1190 uint32 /* socket_id */,
1191 int32_t /* bytes_to_read */)
1192IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Write,
1193 uint32 /* socket_id */,
1194 std::string /* data */)
1195IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPSocket_Disconnect,
1196 uint32 /* socket_id */)
[email protected]466a5832013-02-22 11:17:081197IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBTCPSocket_SetBoolOption,
1198 uint32 /* socket_id */,
1199 uint32 /* name */,
1200 bool /* value */)
[email protected]339fbcff2012-02-29 16:10:321201
[email protected]9e141212013-01-21 15:21:561202// UDPSocketPrivate.
1203IPC_MESSAGE_CONTROL0(PpapiHostMsg_UDPSocketPrivate_Create)
1204IPC_MESSAGE_CONTROL2(PpapiHostMsg_UDPSocketPrivate_SetBoolSocketFeature,
[email protected]0addda92012-08-31 08:55:281205 int32_t /* name */,
1206 bool /* value */)
[email protected]9e141212013-01-21 15:21:561207IPC_MESSAGE_CONTROL1(PpapiHostMsg_UDPSocketPrivate_Bind,
[email protected]339fbcff2012-02-29 16:10:321208 PP_NetAddress_Private /* net_addr */)
[email protected]9e141212013-01-21 15:21:561209IPC_MESSAGE_CONTROL1(PpapiHostMsg_UDPSocketPrivate_RecvFrom,
[email protected]339fbcff2012-02-29 16:10:321210 int32_t /* num_bytes */)
[email protected]9e141212013-01-21 15:21:561211IPC_MESSAGE_CONTROL2(PpapiHostMsg_UDPSocketPrivate_SendTo,
[email protected]339fbcff2012-02-29 16:10:321212 std::string /* data */,
1213 PP_NetAddress_Private /* net_addr */)
[email protected]9e141212013-01-21 15:21:561214IPC_MESSAGE_CONTROL0(PpapiHostMsg_UDPSocketPrivate_Close)
[email protected]fd4845ac2013-03-06 20:33:041215IPC_MESSAGE_CONTROL1(PpapiPluginMsg_UDPSocketPrivate_BindReply,
[email protected]9e141212013-01-21 15:21:561216 PP_NetAddress_Private /* bound_addr */)
[email protected]fd4845ac2013-03-06 20:33:041217IPC_MESSAGE_CONTROL2(PpapiPluginMsg_UDPSocketPrivate_RecvFromReply,
[email protected]9e141212013-01-21 15:21:561218 std::string /* data */,
1219 PP_NetAddress_Private /* remote_addr */)
[email protected]fd4845ac2013-03-06 20:33:041220IPC_MESSAGE_CONTROL1(PpapiPluginMsg_UDPSocketPrivate_SendToReply,
[email protected]9e141212013-01-21 15:21:561221 int32_t /* bytes_written */)
[email protected]339fbcff2012-02-29 16:10:321222
1223// PPB_TCPServerSocket_Private.
1224IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPServerSocket_Listen,
1225 int32 /* routing_id */,
1226 uint32 /* plugin_dispatcher_id */,
[email protected]2d011e82012-03-15 09:39:561227 PP_Resource /* socket_resource */,
[email protected]339fbcff2012-02-29 16:10:321228 PP_NetAddress_Private /* addr */,
1229 int32_t /* backlog */)
[email protected]2d011e82012-03-15 09:39:561230IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPServerSocket_Accept,
1231 int32 /* tcp_client_socket_routing_id */,
1232 uint32 /* server_socket_id */)
[email protected]339fbcff2012-02-29 16:10:321233IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPServerSocket_Destroy,
[email protected]2d011e82012-03-15 09:39:561234 uint32 /* socket_id */)
[email protected]339fbcff2012-02-29 16:10:321235
[email protected]de2895262012-04-04 17:15:481236// PPB_X509Certificate_Private
1237IPC_SYNC_MESSAGE_CONTROL1_2(PpapiHostMsg_PPBX509Certificate_ParseDER,
1238 std::vector<char> /* der */,
1239 bool /* succeeded */,
1240 ppapi::PPB_X509Certificate_Fields /* result */)
1241
[email protected]077ecfd42012-06-21 21:46:261242//-----------------------------------------------------------------------------
1243// Resource call/reply messages.
1244//
1245// These are the new-style resource implementations where the resource is only
1246// implemented in the proxy and "resource messages" are sent between this and a
1247// host object. Resource messages are a wrapper around some general routing
1248// information and a separate message of a type defined by the specific resource
1249// sending/receiving it. The extra paremeters allow the nested message to be
1250// routed automatically to the correct resource.
1251
1252// Notification that a resource has been created in the plugin. The nested
1253// message will be resource-type-specific.
1254IPC_MESSAGE_CONTROL3(PpapiHostMsg_ResourceCreated,
1255 ppapi::proxy::ResourceMessageCallParams /* call_params */,
1256 PP_Instance /* instance */,
1257 IPC::Message /* nested_msg */)
1258
1259// Notification that a resource has been destroyed in the plugin.
1260IPC_MESSAGE_CONTROL1(PpapiHostMsg_ResourceDestroyed,
1261 PP_Resource /* resource */)
1262
[email protected]db70c132012-12-05 00:41:201263// Most resources are created by the plugin, which then sends a ResourceCreated
1264// message to create a corresponding ResourceHost in the renderer or browser
1265// host process. However, some resources are first created in the host and
1266// "pushed" or returned to the plugin.
1267//
1268// In this case, the host will create a "pending" ResourceHost object which
1269// is identified by an ID. The ID is sent to the plugin process and the
1270// PluginResource object is created. This message is sent from the plugin to
1271// the host process to connect the PluginResource and the pending ResourceHost
1272// (at which point, it's no longer pending).
1273IPC_MESSAGE_CONTROL2(PpapiHostMsg_AttachToPendingHost,
1274 PP_Resource /* resource */,
1275 int /* pending_host_id */)
1276
[email protected]077ecfd42012-06-21 21:46:261277// A resource call is a request from the plugin to the host. It may or may not
1278// require a reply, depending on the params. The nested message will be
1279// resource-type-specific.
1280IPC_MESSAGE_CONTROL2(PpapiHostMsg_ResourceCall,
1281 ppapi::proxy::ResourceMessageCallParams /* call_params */,
1282 IPC::Message /* nested_msg */)
1283
1284// A resource reply is a response to a ResourceCall from a host to the
1285// plugin. The resource ID + sequence number in the params will correspond to
1286// that of the previous ResourceCall.
1287IPC_MESSAGE_CONTROL2(
1288 PpapiPluginMsg_ResourceReply,
1289 ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
1290 IPC::Message /* nested_msg */)
[email protected]eccf80312012-07-14 15:43:421291
[email protected]ff44fc12012-10-03 00:52:161292IPC_SYNC_MESSAGE_CONTROL2_2(PpapiHostMsg_ResourceSyncCall,
1293 ppapi::proxy::ResourceMessageCallParams /* call_params */,
1294 IPC::Message /* nested_msg */,
1295 ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
1296 IPC::Message /* reply_msg */)
1297
[email protected]eccf80312012-07-14 15:43:421298//-----------------------------------------------------------------------------
1299// Messages for resources using call/reply above.
1300
[email protected]83d12c8d2012-12-10 19:28:461301// Broker ----------------------------------------------------------------------
1302IPC_MESSAGE_CONTROL0(PpapiHostMsg_Broker_Create)
1303
1304// Queries whether the plugin has permission to connect to the Pepper broker.
1305// The response is contained in the error value of the
1306// ResourceMessageReplyParams in the reply message.
1307IPC_MESSAGE_CONTROL0(PpapiHostMsg_Broker_IsAllowed)
1308
[email protected]27db60a2013-03-29 03:29:201309// Extensions common -----------------------------------------------------------
1310IPC_MESSAGE_CONTROL0(PpapiHostMsg_ExtensionsCommon_Create)
1311
1312// Starts an extension API request which doesn't expect a response.
1313// |request_name| is an API function name. |args| is a list of input arguments.
1314IPC_MESSAGE_CONTROL2(PpapiHostMsg_ExtensionsCommon_Post,
1315 std::string /* request_name */,
1316 base::ListValue /* args */)
1317
1318// Starts an extension API request which expects a response sent back using a
1319// PpapiPluginMsg_ExtensionsCommon_CallReply message.
1320// |request_name| is an API function name. |args| is a list of input arguments.
1321// |output| is a list of output results.
1322IPC_MESSAGE_CONTROL2(PpapiHostMsg_ExtensionsCommon_Call,
1323 std::string /* request_name */,
1324 base::ListValue /* args */)
1325IPC_MESSAGE_CONTROL1(PpapiPluginMsg_ExtensionsCommon_CallReply,
1326 base::ListValue /* output */)
1327
[email protected]d196ccaf2013-05-08 18:04:581328// Ext_CrxFileSystem
1329IPC_MESSAGE_CONTROL0(PpapiHostMsg_Ext_CrxFileSystem_Create)
1330IPC_MESSAGE_CONTROL0(PpapiHostMsg_Ext_CrxFileSystem_BrowserOpen)
1331IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Ext_CrxFileSystem_BrowserOpenReply,
1332 std::string /* fsid */)
1333
[email protected]eccf80312012-07-14 15:43:421334// File chooser.
1335IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileChooser_Create)
1336IPC_MESSAGE_CONTROL4(PpapiHostMsg_FileChooser_Show,
1337 bool /* save_as */,
1338 bool /* open_multiple */,
1339 std::string /* suggested_file_name */,
1340 std::vector<std::string> /* accept_mime_types */)
1341IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileChooser_ShowReply,
1342 std::vector<ppapi::PPB_FileRef_CreateInfo> /* files */)
[email protected]f5118812012-08-24 19:54:301343
[email protected]c77144722013-01-19 04:16:361344// FileIO
1345IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Create)
1346IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Open,
1347 PP_Resource /* file_ref_resource */,
1348 int32_t /* open_flags */)
1349IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileIO_OpenReply)
1350IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Close)
1351IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Query)
1352IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileIO_QueryReply, PP_FileInfo /* info */)
1353IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Touch,
1354 PP_Time /* last_access_time */,
1355 PP_Time /* last_modified_time */)
1356IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Read,
1357 int64_t /* offset */,
1358 int32_t /* bytes_to_read */)
1359IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileIO_ReadReply, std::string /* data */)
1360IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Write,
1361 int64_t /* offset */,
1362 std::string /* data */)
1363IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileIO_SetLength,
1364 int64_t /* length */)
1365IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Flush)
1366IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_WillWrite,
1367 int64_t /* offset */,
1368 int32_t /* bytes_to_write */)
1369IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileIO_WillSetLength,
1370 int64_t /* length */)
1371IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_GetOSFileDescriptor)
1372IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileIO_GetOSFileDescriptorReply,
1373 int32_t /* file descriptor */)
[email protected]8f96cef2013-04-01 16:51:131374IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_RequestOSFileHandle)
1375IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileIO_RequestOSFileHandleReply)
[email protected]c77144722013-01-19 04:16:361376IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileIO_GeneralReply)
1377
[email protected]ef9225f2013-04-12 20:28:141378// FileSystem
1379IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileSystem_Create,
1380 PP_FileSystemType /* type */)
1381IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileSystem_Open,
1382 int64_t /* expected_size */)
1383IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileSystem_OpenReply)
[email protected]d196ccaf2013-05-08 18:04:581384IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileSystem_InitIsolatedFileSystem,
1385 std::string /* fsid */)
[email protected]ef9225f2013-04-12 20:28:141386
[email protected]b7631cc2012-09-15 05:08:381387// Flash device ID.
1388IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDeviceID_Create)
1389IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDeviceID_GetDeviceID)
1390IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashDeviceID_GetDeviceIDReply,
1391 std::string /* id */)
1392
[email protected]f5118812012-08-24 19:54:301393// Gamepad.
1394IPC_MESSAGE_CONTROL0(PpapiHostMsg_Gamepad_Create)
[email protected]00c0d042012-09-10 07:06:391395
1396// Requests that the gamepad host send the shared memory handle to the plugin
1397// process.
[email protected]f5118812012-08-24 19:54:301398IPC_MESSAGE_CONTROL0(PpapiHostMsg_Gamepad_RequestMemory)
[email protected]00c0d042012-09-10 07:06:391399
1400// Reply to a RequestMemory call. This supplies the shared memory handle. The
1401// actual handle is passed in the ReplyParams struct.
1402IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Gamepad_SendMemory)
1403
[email protected]08e65c12012-11-29 18:53:291404
1405// Graphics2D, plugin -> host
1406IPC_MESSAGE_CONTROL2(PpapiHostMsg_Graphics2D_Create,
1407 PP_Size /* size */,
1408 PP_Bool /* is_always_opaque */)
1409IPC_MESSAGE_CONTROL4(PpapiHostMsg_Graphics2D_PaintImageData,
1410 ppapi::HostResource /* image_data */,
1411 PP_Point /* top_left */,
1412 bool /* src_rect_specified */,
1413 PP_Rect /* src_rect */)
1414IPC_MESSAGE_CONTROL3(PpapiHostMsg_Graphics2D_Scroll,
1415 bool /* clip_specified */,
1416 PP_Rect /* clip */,
1417 PP_Point /* amount */)
1418IPC_MESSAGE_CONTROL1(PpapiHostMsg_Graphics2D_ReplaceContents,
1419 ppapi::HostResource /* image_data */)
1420IPC_MESSAGE_CONTROL1(PpapiHostMsg_Graphics2D_Dev_SetScale,
1421 float /* scale */)
1422
1423// Graphics2D, plugin -> host -> plugin
1424IPC_MESSAGE_CONTROL0(PpapiHostMsg_Graphics2D_Flush)
1425IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Graphics2D_FlushAck)
1426
1427IPC_MESSAGE_CONTROL2(PpapiHostMsg_Graphics2D_ReadImageData,
1428 PP_Resource /* image */,
1429 PP_Point /* top_left */)
1430IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Graphics2D_ReadImageDataAck)
1431
[email protected]725056b72013-03-16 09:57:511432// TrueTypeFont.
1433IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFontSingleton_Create)
1434IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFontSingleton_GetFontFamilies)
1435IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFontSingleton_GetFontFamiliesReply,
1436 std::vector<std::string> /* font_families */)
[email protected]720e1e622013-04-19 03:50:351437IPC_MESSAGE_CONTROL1(PpapiHostMsg_TrueTypeFontSingleton_GetFontsInFamily,
1438 std::string /* family */)
1439IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFontSingleton_GetFontsInFamilyReply,
1440 std::vector<ppapi::proxy::SerializedTrueTypeFontDesc>
1441 /* fonts */)
[email protected]725056b72013-03-16 09:57:511442IPC_MESSAGE_CONTROL1(PpapiHostMsg_TrueTypeFont_Create,
1443 ppapi::proxy::SerializedTrueTypeFontDesc /* desc */)
1444IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFont_Describe)
1445IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_DescribeReply,
1446 ppapi::proxy::SerializedTrueTypeFontDesc /* desc */)
1447IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFont_GetTableTags)
1448IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_GetTableTagsReply,
1449 std::vector<uint32_t> /* tags */)
1450IPC_MESSAGE_CONTROL3(PpapiHostMsg_TrueTypeFont_GetTable,
1451 uint32_t /* table */,
1452 int32_t /* offset */,
1453 int32_t /* max_data_length */)
1454IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_GetTableReply,
1455 std::string /* data */)
1456
[email protected]6a685372013-02-12 12:50:461457// HostResolverPrivate, plugin -> host -> plugin
1458IPC_MESSAGE_CONTROL0(PpapiHostMsg_HostResolverPrivate_Create)
1459IPC_MESSAGE_CONTROL2(PpapiHostMsg_HostResolverPrivate_Resolve,
1460 ppapi::HostPortPair /* host_port */,
1461 PP_HostResolver_Private_Hint /* hint */)
1462IPC_MESSAGE_CONTROL2(PpapiPluginMsg_HostResolverPrivate_ResolveReply,
1463 std::string /* canonical_name */,
1464 std::vector<PP_NetAddress_Private> /* net_address_list */)
[email protected]08e65c12012-11-29 18:53:291465
[email protected]e9cb0b792012-09-07 07:11:061466// Printing.
1467IPC_MESSAGE_CONTROL0(PpapiHostMsg_Printing_Create)
1468IPC_MESSAGE_CONTROL0(PpapiHostMsg_Printing_GetDefaultPrintSettings)
1469IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Printing_GetDefaultPrintSettingsReply,
1470 PP_PrintSettings_Dev /* print_settings */)
[email protected]9d5eadf2012-10-09 03:43:481471
[email protected]47cb253f2013-05-16 01:50:401472// URLLoader ------------------------------------------------------------------
1473
1474IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_Create)
1475
1476// These messages correspond to PPAPI calls and all should get a
1477// CallbackComplete message.
1478IPC_MESSAGE_CONTROL1(PpapiHostMsg_URLLoader_Open,
1479 ppapi::URLRequestInfoData /* request_data */)
1480
1481// The plugin can tell the host to defer a load to hold off on sending more
1482// data because the buffer in the plugin is full. When defers_loading is set to
1483// false, data streaming will resume.
1484//
1485// When auditing redirects (no auto follow) the load will be automatically
1486// deferred each time we get a redirect. The plugin will reset this to false
1487// by sending this message when it wants to continue following the redirect.
1488//
1489// When streaming data, the host may still send more data after this call (for
1490// example, it could already be in-flight at the time of this request).
1491IPC_MESSAGE_CONTROL1(PpapiHostMsg_URLLoader_SetDeferLoading,
1492 bool /* defers_loading */)
1493
1494// Closes the URLLoader. There is no reply.
1495IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_Close)
1496
1497// Requests that cross-site restrictions be ignored. The plugin must have
1498// the private permission set. Otherwise this message will be ignored by the
1499// renderer. There is no reply.
1500IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_GrantUniversalAccess)
1501
1502// Push notification that a response is available.
1503IPC_MESSAGE_CONTROL1(PpapiPluginMsg_URLLoader_ReceivedResponse,
1504 ppapi::URLResponseInfoData /* response */)
1505
1506// Push notification with load data from the renderer. It is a custom generated
1507// message with the response data (array of bytes stored via WriteData)
1508// appended.
1509IPC_MESSAGE_CONTROL0(PpapiPluginMsg_URLLoader_SendData)
1510
1511// Push notification indicating that all data has been sent, either via
1512// SendData or by streaming it to a file. Note that since this is a push
1513// notification, we don't use the result field of the ResourceMessageReply.
1514IPC_MESSAGE_CONTROL1(PpapiPluginMsg_URLLoader_FinishedLoading,
1515 int32_t /* result */)
1516
1517// Push notification from the renderer to the plugin to tell it about download
1518// and upload progress. This will only be sent if the plugin has requested
1519// progress updates, and only the fields requested by the plugin will be
1520// valid.
1521IPC_MESSAGE_CONTROL4(PpapiPluginMsg_URLLoader_UpdateProgress,
1522 int64_t /* bytes_sent */,
1523 int64_t /* total_bytes_to_be_sent */,
1524 int64_t /* bytes_received */,
1525 int64_t /* total_bytes_to_be_received */)
1526
[email protected]30e1cb752013-03-19 20:42:331527// Shared memory ---------------------------------------------------------------
[email protected]47cb253f2013-05-16 01:50:401528
[email protected]30e1cb752013-03-19 20:42:331529// Creates shared memory on the host side, returning a handle to the shared
1530// memory on the plugin and keeping the memory mapped in on the host.
1531// We return a "host handle_id" that can be mapped back to the
1532// handle on the host side by PpapiGlobals::UntrackSharedMemoryHandle().
1533IPC_SYNC_MESSAGE_CONTROL2_2(PpapiHostMsg_SharedMemory_CreateSharedMemory,
1534 PP_Instance /* instance */,
1535 uint32_t /* size */,
1536 int /* host_handle_id */,
1537 ppapi::proxy::SerializedHandle /* plugin_handle */)
1538
[email protected]47cb253f2013-05-16 01:50:401539// WebSocket -------------------------------------------------------------------
1540
[email protected]9d5eadf2012-10-09 03:43:481541IPC_MESSAGE_CONTROL0(PpapiHostMsg_WebSocket_Create)
1542
1543// Establishes the connection to a server. This message requires
1544// WebSocket_ConnectReply as a reply message.
1545IPC_MESSAGE_CONTROL2(PpapiHostMsg_WebSocket_Connect,
1546 std::string /* url */,
1547 std::vector<std::string> /* protocols */)
1548
1549// Closes established connection with graceful closing handshake. This message
1550// requires WebSocket_CloseReply as a reply message.
1551IPC_MESSAGE_CONTROL2(PpapiHostMsg_WebSocket_Close,
1552 int32_t /* code */,
1553 std::string /* reason */)
1554
1555// Sends a text frame to the server. No reply is defined.
1556IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_SendText,
1557 std::string /* message */)
1558
1559// Sends a binary frame to the server. No reply is defined.
1560IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_SendBinary,
1561 std::vector<uint8_t> /* message */)
1562
1563// Fails the connection. This message invokes RFC6455 defined
1564// _Fail the WebSocket Connection_ operation. No reply is defined.
1565IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_Fail,
1566 std::string /* message */)
1567
1568// This message is a reply to WebSocket_Connect. If the |url| and |protocols|
1569// are invalid, WebSocket_ConnectReply is issued immediately and it contains
1570// proper error code in its result. Otherwise, WebSocket_ConnectReply is sent
1571// with valid |url|, |protocol|, and result PP_OK. |protocol| is not a passed
1572// |protocols|, but a result of opening handshake negotiation. If the
1573// connection can not be established successfully, WebSocket_ConnectReply is
1574// not issued, but WebSocket_ClosedReply is sent instead.
1575IPC_MESSAGE_CONTROL2(PpapiPluginMsg_WebSocket_ConnectReply,
1576 std::string /* url */,
1577 std::string /* protocol */)
1578
1579// This message is a reply to WebSocket_Close. If the operation fails,
1580// WebSocket_CloseReply is issued immediately and it contains PP_ERROR_FAILED.
1581// Otherwise, CloseReply will be issued after the closing handshake is
1582// finished. All arguments will be valid iff the result is PP_OK and it means
1583// that the client initiated closing handshake is finished gracefully.
1584IPC_MESSAGE_CONTROL4(PpapiPluginMsg_WebSocket_CloseReply,
[email protected]76e6df02012-11-09 01:43:071585 uint64_t /* buffered_amount */,
[email protected]9d5eadf2012-10-09 03:43:481586 bool /* was_clean */,
[email protected]76e6df02012-11-09 01:43:071587 uint16_t /* code */,
[email protected]9d5eadf2012-10-09 03:43:481588 std::string /* reason */)
1589
1590// Unsolicited reply message to transmit a receiving text frame.
1591IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_ReceiveTextReply,
1592 std::string /* message */)
1593
1594// Unsolicited reply message to transmit a receiving binary frame.
1595IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_ReceiveBinaryReply,
1596 std::vector<uint8_t> /* message */)
1597
1598// Unsolicited reply message to notify a error on underlying network connetion.
1599IPC_MESSAGE_CONTROL0(PpapiPluginMsg_WebSocket_ErrorReply)
1600
1601// Unsolicited reply message to update the buffered amount value.
1602IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_BufferedAmountReply,
[email protected]76e6df02012-11-09 01:43:071603 uint64_t /* buffered_amount */)
[email protected]9d5eadf2012-10-09 03:43:481604
1605// Unsolicited reply message to update |state| because of incoming external
1606// events, e.g., protocol error, or unexpected network closure.
1607IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_StateReply,
1608 int32_t /* state */)
1609
1610// Unsolicited reply message to notify that the connection is closed without
1611// any WebSocket_Close request. Server initiated closing handshake or
1612// unexpected network errors will invoke this message.
1613IPC_MESSAGE_CONTROL4(PpapiPluginMsg_WebSocket_ClosedReply,
[email protected]76e6df02012-11-09 01:43:071614 uint64_t /* buffered_amount */,
[email protected]9d5eadf2012-10-09 03:43:481615 bool /* was_clean */,
[email protected]76e6df02012-11-09 01:43:071616 uint16_t /* code */,
[email protected]9d5eadf2012-10-09 03:43:481617 std::string /* reason */)
[email protected]cb65f132012-10-09 17:06:091618
1619#if !defined(OS_NACL) && !defined(NACL_WIN64)
[email protected]a1686e272012-11-01 23:39:341620
[email protected]77b55502012-11-08 22:20:201621// Audio input.
1622IPC_MESSAGE_CONTROL0(PpapiHostMsg_AudioInput_Create)
[email protected]77b55502012-11-08 22:20:201623IPC_MESSAGE_CONTROL3(PpapiHostMsg_AudioInput_Open,
1624 std::string /* device_id */,
1625 PP_AudioSampleRate /* sample_rate */,
1626 uint32_t /* sample_frame_count */)
1627// Reply to an Open call. This supplies a socket handle and a shared memory
1628// handle. Both handles are passed in the ReplyParams struct.
1629IPC_MESSAGE_CONTROL0(PpapiPluginMsg_AudioInput_OpenReply)
1630IPC_MESSAGE_CONTROL1(PpapiHostMsg_AudioInput_StartOrStop, bool /* capture */)
1631IPC_MESSAGE_CONTROL0(PpapiHostMsg_AudioInput_Close)
1632
[email protected]a6d81c02012-12-20 21:17:001633// BrowserFont -----------------------------------------------------------------
1634
1635IPC_MESSAGE_CONTROL0(PpapiHostMsg_BrowserFontSingleton_Create)
1636
1637// Requests that the browser reply with the list of font families via
1638// PpapiPluginMsg_BrowserFontSingleton_GetFontFamiliesReply.
1639IPC_MESSAGE_CONTROL0(PpapiHostMsg_BrowserFontSingleton_GetFontFamilies)
1640
1641// Reply to PpapiHostMsg_BrowserFontSingleton_GetFontFamilies with the font
1642// family list. The |families| result is encoded by separating each family name
1643// by a null character.
1644IPC_MESSAGE_CONTROL1(PpapiPluginMsg_BrowserFontSingleton_GetFontFamiliesReply,
1645 std::string /* families */)
1646
[email protected]db16e6d2012-12-19 03:32:571647// Flash -----------------------------------------------------------------------
[email protected]a6d81c02012-12-20 21:17:001648
[email protected]a9f2a6212012-12-04 08:47:341649IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_Create)
[email protected]db16e6d2012-12-19 03:32:571650
1651// Message to notify the browser to register an update in system activity.
[email protected]a9f2a6212012-12-04 08:47:341652IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_UpdateActivity)
[email protected]db16e6d2012-12-19 03:32:571653
1654// Query the browser for the proxy server to use for the given URL.
[email protected]a9f2a6212012-12-04 08:47:341655IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_GetProxyForURL, std::string /* url */)
[email protected]db16e6d2012-12-19 03:32:571656// Reply message for GetProxyForURL containing the proxy server.
[email protected]a9f2a6212012-12-04 08:47:341657IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetProxyForURLReply,
1658 std::string /* proxy */)
1659
[email protected]c92465382012-12-17 23:51:211660// Queries the browser for the local time zone offset for a given time.
1661IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_GetLocalTimeZoneOffset,
1662 base::Time /* time */)
1663// Reply to GetLocalTimeZoneOffset containing the time zone offset as a double.
1664IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetLocalTimeZoneOffsetReply,
1665 double /* offset */)
1666
[email protected]db16e6d2012-12-19 03:32:571667// Query the browser for the restrictions on storing Flash LSOs.
1668IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_GetLocalDataRestrictions)
1669// Reply message for GetLocalDataRestrictions containing the restrictions to
1670// use. These are PP_FlashLSORestrictions cast to an int32_t.
1671IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetLocalDataRestrictionsReply,
1672 int32_t /* restrictions */)
1673
[email protected]24f40c12012-12-19 20:17:421674// Notifies the renderer whether the Flash instance is in windowed mode. No
1675// reply is sent.
1676IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_SetInstanceAlwaysOnTop,
1677 bool /* on_top */)
1678
1679// Notifies the renderer to draw text to the given PP_ImageData resource. All
1680// parmeters for drawing (including the resource to draw to) are contianed in
1681// the PPBFlash_DrawGlyphs_Params structure. An error code is sent in a reply
1682// message indicating success.
1683IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_DrawGlyphs,
1684 ppapi::proxy::PPBFlash_DrawGlyphs_Params /* params */)
1685
1686// Notifies the renderer to navigate to the given URL contained in the
1687// URLRequestInfoData. An error code is sent in a reply message indicating
1688// success.
1689IPC_MESSAGE_CONTROL3(PpapiHostMsg_Flash_Navigate,
1690 ppapi::URLRequestInfoData /* data */,
1691 std::string /* target */,
1692 bool /* from_user_action */)
1693
1694// Queries the renderer on whether the plugin instance is the topmost element
1695// in the area of the instance specified by the given PP_Rect. PP_OK is sent as
1696// the error code in a reply message if the rect is topmost otherwise
1697// PP_ERROR_FAILED is sent.
1698IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_IsRectTopmost,
1699 PP_Rect /* rect */)
1700
[email protected]6a77ef22012-12-21 23:31:361701// Notifies the renderer to invoke printing for the given plugin instance. No
1702// reply is sent.
1703IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_InvokePrinting)
1704
[email protected]db16e6d2012-12-19 03:32:571705// DeviceEnumeration -----------------------------------------------------------
[email protected]4f01c762012-12-05 02:44:181706// Device enumeration messages used by audio input and video capture.
1707IPC_MESSAGE_CONTROL0(PpapiHostMsg_DeviceEnumeration_EnumerateDevices)
1708IPC_MESSAGE_CONTROL1(PpapiPluginMsg_DeviceEnumeration_EnumerateDevicesReply,
1709 std::vector<ppapi::DeviceRefData> /* devices */)
1710IPC_MESSAGE_CONTROL1(PpapiHostMsg_DeviceEnumeration_MonitorDeviceChange,
1711 uint32_t /* callback_id */)
1712IPC_MESSAGE_CONTROL0(PpapiHostMsg_DeviceEnumeration_StopMonitoringDeviceChange)
1713IPC_MESSAGE_CONTROL2(PpapiPluginMsg_DeviceEnumeration_NotifyDeviceChange,
1714 uint32_t /* callback_id */,
1715 std::vector<ppapi::DeviceRefData> /* devices */)
1716
[email protected]a1686e272012-11-01 23:39:341717// Flash clipboard.
1718IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashClipboard_Create)
1719IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashClipboard_RegisterCustomFormat,
1720 std::string /* format_name */)
1721IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashClipboard_RegisterCustomFormatReply,
1722 uint32_t /* format */)
1723IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashClipboard_IsFormatAvailable,
1724 uint32_t /* clipboard_type */,
1725 uint32_t /* format */)
1726IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashClipboard_ReadData,
1727 uint32_t /* clipboard_type */,
1728 uint32_t /* format */)
1729IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashClipboard_ReadDataReply,
1730 std::string /* result */)
1731IPC_MESSAGE_CONTROL3(PpapiHostMsg_FlashClipboard_WriteData,
1732 uint32_t /* clipboard_type */,
1733 std::vector<uint32_t> /* formats */,
1734 std::vector<std::string> /* data */)
[email protected]77b55502012-11-08 22:20:201735
[email protected]0c92b0d2012-12-08 00:46:231736// Flash file.
1737IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFile_Create)
1738IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_OpenFile,
1739 ppapi::PepperFilePath /* path */,
1740 int /* flags */)
1741IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_RenameFile,
1742 ppapi::PepperFilePath /* from_path */,
1743 ppapi::PepperFilePath /* to_path */)
1744IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_DeleteFileOrDir,
1745 ppapi::PepperFilePath /* path */,
1746 bool /* recursive */)
1747IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_CreateDir,
1748 ppapi::PepperFilePath /* path */)
1749IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_QueryFile,
1750 ppapi::PepperFilePath /* path */)
1751IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFile_QueryFileReply,
1752 base::PlatformFileInfo /* file_info */)
1753IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_GetDirContents,
1754 ppapi::PepperFilePath /* path */)
1755IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFile_GetDirContentsReply,
1756 ppapi::DirContents /* entries */)
1757IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFile_CreateTemporaryFile)
1758
[email protected]cb65f132012-10-09 17:06:091759// Flash font file.
1760IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFontFile_Create,
1761 ppapi::proxy::SerializedFontDescription /* description */,
1762 PP_PrivateFontCharset /* charset */)
1763IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFontFile_GetFontTable,
1764 uint32_t /* table */)
1765IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFontFile_GetFontTableReply,
1766 std::string /* output */)
[email protected]11d0c362012-10-11 02:02:111767
[email protected]22fdaa62012-11-30 01:55:441768// Flash fullscreen.
1769IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFullscreen_Create)
1770IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFullscreen_SetFullscreen,
1771 bool /* fullscreen */)
1772
[email protected]97f58132012-11-15 20:41:321773// FlashMenu ------------------------------------------------------------------
1774
1775// Creates the flash menu with the given data.
1776IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashMenu_Create,
1777 ppapi::proxy::SerializedFlashMenu /* menu_data */)
1778
1779// Shows the menu at the given location relative to the plugin instance.
1780IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashMenu_Show,
1781 PP_Point /* location */)
1782
1783// Reply to a show command. If the resource reply is PP_OK, the selected_id
1784// will be the menu item ID chosen by the user.
1785IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashMenu_ShowReply,
1786 int32_t /* selected_id */)
1787
[email protected]bb92b012013-03-29 02:13:201788// PDF ------------------------------------------------------------------------
1789
1790// Creates the PDF resource.
1791IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_Create)
1792
1793// Requests the localized string for the given ID.
1794IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_GetLocalizedString,
[email protected]f5869d8be2013-04-06 00:33:101795 PP_ResourceString /* string_id */)
[email protected]bb92b012013-03-29 02:13:201796// Reply for PpapiHostMsg_PDF_GetLocalizedString containing the localized
1797// string.
1798IPC_MESSAGE_CONTROL1(PpapiPluginMsg_PDF_GetLocalizedStringReply,
1799 std::string /* localized_string*/)
1800
1801// Notifies the renderer that the PDF started loading.
1802IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_DidStartLoading)
1803
1804// Notifies the renderer that the PDF stopped loading.
1805IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_DidStopLoading)
1806
1807// Sets any restrictions on the PDF content.
1808IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_SetContentRestriction,
1809 int /* restrictions */)
1810
1811// Requests that the specified action be recorded with UMA.
1812IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_UserMetricsRecordAction,
1813 std::string /* action */)
1814
1815// Notifies the renderer that the current PDF uses an unsupported feature.
1816IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_HasUnsupportedFeature)
1817
1818// Notifies the renderer to print the current PDF.
1819IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_Print)
1820
1821// Notifies the renderer to save the current PDF.
1822IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_SaveAs)
1823
1824// Requests a resource image for the plugin at a particular scale.
1825IPC_MESSAGE_CONTROL2(PpapiHostMsg_PDF_GetResourceImage,
[email protected]f5869d8be2013-04-06 00:33:101826 PP_ResourceImage /* image_id */,
[email protected]bb92b012013-03-29 02:13:201827 float /* scale */)
1828// Reply for PpapiHostMsg_PDF_GetResourceImage containing the host resource id
1829// of the image and a string (representing a PP_ImageDataDesc) containing the
1830// properties of the image. Also carries a shared memory handle pointing to the
[email protected]f5869d8be2013-04-06 00:33:101831// memory containg the image. On linux, the handle is transmitted in this
1832// message as |fd|. This is due to the unfortunate way that ImageHandles are
1833// defined for use with PPB_ImageData.
1834IPC_MESSAGE_CONTROL3(PpapiPluginMsg_PDF_GetResourceImageReply,
[email protected]bb92b012013-03-29 02:13:201835 ppapi::HostResource /* resource_id */,
[email protected]f5869d8be2013-04-06 00:33:101836 std::string /* image_data_desc */,
1837 int /* fd */)
[email protected]bb92b012013-03-29 02:13:201838
[email protected]cc123872012-11-16 07:53:081839// VideoCapture_Dev, plugin -> host
1840IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_Create)
1841IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_StartCapture)
1842IPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoCapture_ReuseBuffer,
1843 uint32_t /* buffer */)
1844IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_StopCapture)
1845IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_Close)
1846
1847// VideoCapture_Dev, plugin -> host -> plugin
[email protected]cc123872012-11-16 07:53:081848IPC_MESSAGE_CONTROL3(PpapiHostMsg_VideoCapture_Open,
1849 std::string /* device_id */,
1850 PP_VideoCaptureDeviceInfo_Dev /* requested_info */,
1851 uint32_t /* buffer_count */)
1852IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoCapture_OpenReply)
1853
[email protected]f20cc692012-11-28 19:21:201854// Talk ------------------------------------------------------------------------
1855
1856IPC_MESSAGE_CONTROL0(PpapiHostMsg_Talk_Create)
1857
1858// Requests talk permissions. The host will respond with GetPermissionReply.
1859IPC_MESSAGE_CONTROL0(PpapiHostMsg_Talk_GetPermission)
1860
1861// Response to GetPermission.
1862//
1863// The result of this message is the general Pepper "result" in the ReplyParams.
1864IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Talk_GetPermissionReply)
1865
[email protected]cc123872012-11-16 07:53:081866// VideoCapture_Dev, host -> plugin
1867IPC_MESSAGE_CONTROL3(PpapiPluginMsg_VideoCapture_OnDeviceInfo,
1868 PP_VideoCaptureDeviceInfo_Dev /* info */,
1869 std::vector<ppapi::HostResource> /* buffers */,
1870 uint32_t /* buffer_size */)
1871IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnStatus,
1872 uint32_t /* status */)
1873IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnError,
1874 uint32_t /* error */)
1875IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnBufferReady,
1876 uint32_t /* buffer */)
1877
[email protected]b76257d2013-05-04 00:11:301878// MediaStream -----------------------------------------------------------------
1879
1880// VideoDestination Private.
1881IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDestination_Create)
1882IPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoDestination_Open,
1883 std::string /* stream_url */)
1884IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoDestination_OpenReply)
1885IPC_MESSAGE_CONTROL2(PpapiHostMsg_VideoDestination_PutFrame,
1886 ppapi::HostResource /* image_data */,
1887 PP_TimeTicks /* timestamp */)
1888IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDestination_Close)
1889
1890// VideoSource Private.
1891IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_Create)
1892IPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoSource_Open,
1893 std::string /* stream_url */)
1894IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoSource_OpenReply)
1895IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_GetFrame)
[email protected]38f61e8f2013-05-11 19:23:381896IPC_MESSAGE_CONTROL4(PpapiPluginMsg_VideoSource_GetFrameReply,
1897 ppapi::HostResource /* resource_id */,
1898 PP_ImageDataDesc /* image_data_desc */,
1899 int /* fd */,
[email protected]b76257d2013-05-04 00:11:301900 PP_TimeTicks /* timestamp */)
1901IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_Close)
1902
[email protected]cb65f132012-10-09 17:06:091903#endif // !defined(OS_NACL) && !defined(NACL_WIN64)