Commit 21489fa9 authored by Ali Tofigh's avatar Ali Tofigh Committed by Commit Bot

Update Google Update COM interface definitions in google_update_idl.idl.

This update is required for work that is underway related to management
of Chrome browsers for enterprise users.

The google_update_idl.idl file was originally provided by the Google
Update team. It has been modified as described in the README.chromium
file in this CL.

The change was tested with Chrome-branded builds with target_cpu set to
"x86" and "x64". I followed these steps to make sure that this change
does not break Chrome updates.

1. Manully set the version of Chrome in src/chrome/VERSION to a version
   prior to that which is currently served on the Dev channel.
2. Compile with is_chrome_branded=true and target_cpu set to one of
   "x86" or "x64".
3. Install the build as a Dev-channel Chrome using setup.exe on a 64-bit
   Win10 machine.
4. Navigate to chrome://help and make sure that the update process works
   as expected.

Bug: 796270
Change-Id: I6962b8874a7e825d41834860de0eb0fe92f5a6e3
Reviewed-on: https://chromium-review.googlesource.com/924474
Commit-Queue: Ali Tofigh <alito@chromium.org>
Reviewed-by: default avatarWill Harris <wfh@chromium.org>
Reviewed-by: default avatarNico Weber <thakis@chromium.org>
Reviewed-by: default avatarGreg Thompson <grt@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539457}
parent fbb98d83
Originally this IDL was provided by the Google Update team so that we could use
the On-Demand checking for updates. Now it is copied from the public Omaha
repository with minor modifications. See
http://omaha.googlecode.com/svn/trunk/official/goopdate/omaha3_idl.idl.
This copy is based on http://omaha.googlecode.com/svn/trunk/official/goopdate/omaha3_idl.idl@120
with the following two coclasses removed:
The IDL in this directory is provided by the Google Update team. The original
file was modified by removing the following two coclasses:
[
uuid(___AUTO_GENERATED_GUID___),
......
......@@ -313,6 +313,18 @@ interface IApp : IDispatch {
[propget] HRESULT currentState([out, retval] IDispatch**);
};
[
object,
dual,
uuid(084D78A8-B084-4E14-A629-A2C419B0E3D9),
helpstring("IApp2 Interface"),
pointer_default(unique)
]
interface IApp2 : IApp {
[propget] HRESULT untrustedData([out, retval] BSTR*);
[propput] HRESULT untrustedData([in] BSTR);
};
[
object,
dual,
......@@ -336,6 +348,17 @@ interface IAppCommand : IDispatch {
[in, optional] VARIANT arg9);
};
[
object,
dual,
uuid(3D05F64F-71E3-48A5-BF6B-83315BC8AE1F),
helpstring("IAppCommand2 Interface"),
pointer_default(unique)
]
interface IAppCommand2 : IAppCommand {
[propget] HRESULT output([out, retval] BSTR*);
};
[
object,
dual,
......@@ -582,15 +605,20 @@ interface IAppWeb : IDispatch {
[out, retval] IDispatch** command);
HRESULT cancel();
[propget] HRESULT currentState([out, retval] IDispatch** current_state);
HRESULT launch();
HRESULT uninstall();
[propget] HRESULT serverInstallDataIndex([out, retval] BSTR*);
[propput] HRESULT serverInstallDataIndex([in] BSTR);
};
[
object,
dual,
uuid(68D6C2BD-712E-4c96-93E8-49CB8A9AAEED),
uuid(8476CE12-AE1F-4198-805C-BA0F9B783F57),
helpstring("IAppCommandWeb Interface"),
pointer_default(unique)
]
......@@ -598,6 +626,7 @@ interface IAppCommandWeb : IDispatch {
// Use values from the AppCommandStatus enum.
[propget] HRESULT status([out, retval] UINT*);
[propget] HRESULT exitCode([out, retval] DWORD*);
[propget] HRESULT output([out, retval] BSTR*);
HRESULT execute([in, optional] VARIANT arg1,
[in, optional] VARIANT arg2,
[in, optional] VARIANT arg3,
......@@ -717,6 +746,29 @@ interface IProcessLauncher : IUnknown {
[out] ULONG_PTR* proc_handle);
};
[
object,
oleautomation,
uuid(D106AB5F-A70E-400E-A21B-96208C1D8DBB),
helpstring("Google Update IProcessLauncher2 Interface"),
pointer_default(unique)
]
interface IProcessLauncher2 : IProcessLauncher {
// Launches the command line, returning the COM server's process ID and
// handles to the launched process and its stdout. The caller is responsible
// for closing the returned handles (by passing DUPLICATE_CLOSE_SOURCE to
// DuplicateHandle, for instance).
// @param cmd_line The full command line to execute.
// @param server_proc_id The process id of the IProcessLauncher2 COM server.
// @param proc_handle The process handle valid in the server's context
// @param stdout_handle The child process's stdout handle valid in the
// server's context.
HRESULT LaunchCmdLineEx([in, string] const WCHAR* cmd_line,
[out] DWORD* server_proc_id,
[out] ULONG_PTR* proc_handle,
[out] ULONG_PTR* stdout_handle);
};
[
object,
oleautomation,
......@@ -792,6 +844,20 @@ interface IJobObserver : IUnknown {
HRESULT SetEventSink([in] IProgressWndEvents* ui_sink);
};
[
object,
oleautomation,
uuid(19692F10-ADD2-4EFF-BE54-E61C62E40D13),
helpstring("IJobObserver2 Interface"),
pointer_default(unique)
]
interface IJobObserver2 : IUnknown {
// @param time_remaining_ms Remaining install time.
// @param pos Current install progress in percentage from 0 to 100. -1
// indicates unknown.
HRESULT OnInstalling2([in] int time_remaining_ms, [in] int pos);
};
[
object,
oleautomation,
......@@ -849,7 +915,9 @@ library GoogleUpdate3Lib {
interface IGoogleUpdate3;
interface IAppBundle;
interface IApp;
interface IApp2;
interface IAppCommand;
interface IAppCommand2;
interface IAppVersion;
interface IPackage;
interface ICurrentState;
......
......@@ -76,9 +76,15 @@ MIDL_DEFINE_GUID(IID, IID_IAppBundle,0xfe908cdd,0x22bb,0x472a,0x98,0x70,0x1a,0x0
MIDL_DEFINE_GUID(IID, IID_IApp,0x76F7B787,0xA67C,0x4c73,0x82,0xC7,0x31,0xF5,0xE3,0xAA,0xBC,0x5C);
MIDL_DEFINE_GUID(IID, IID_IApp2,0x084D78A8,0xB084,0x4E14,0xA6,0x29,0xA2,0xC4,0x19,0xB0,0xE3,0xD9);
MIDL_DEFINE_GUID(IID, IID_IAppCommand,0x4DE778FE,0xF195,0x4ee3,0x9D,0xAB,0xFE,0x44,0x6C,0x23,0x92,0x21);
MIDL_DEFINE_GUID(IID, IID_IAppCommand2,0x3D05F64F,0x71E3,0x48A5,0xBF,0x6B,0x83,0x31,0x5B,0xC8,0xAE,0x1F);
MIDL_DEFINE_GUID(IID, IID_IAppVersion,0xBCDCB538,0x01C0,0x46d1,0xA6,0xA7,0x52,0xF4,0xD0,0x21,0xC2,0x72);
......@@ -106,7 +112,7 @@ MIDL_DEFINE_GUID(IID, IID_IAppBundleWeb,0xDD42475D,0x6D46,0x496a,0x92,0x4E,0xBD,
MIDL_DEFINE_GUID(IID, IID_IAppWeb,0x18D0F672,0x18B4,0x48e6,0xAD,0x36,0x6E,0x6B,0xF0,0x1D,0xBB,0xC4);
MIDL_DEFINE_GUID(IID, IID_IAppCommandWeb,0x68D6C2BD,0x712E,0x4c96,0x93,0xE8,0x49,0xCB,0x8A,0x9A,0xAE,0xED);
MIDL_DEFINE_GUID(IID, IID_IAppCommandWeb,0x8476CE12,0xAE1F,0x4198,0x80,0x5C,0xBA,0x0F,0x9B,0x78,0x3F,0x57);
MIDL_DEFINE_GUID(IID, IID_IAppVersionWeb,0x0CD01D1E,0x4A1C,0x489d,0x93,0xB9,0x9B,0x66,0x72,0x87,0x7C,0x57);
......@@ -124,6 +130,9 @@ MIDL_DEFINE_GUID(IID, IID_IBrowserHttpRequest2,0x5B25A8DC,0x1780,0x4178,0xA6,0x2
MIDL_DEFINE_GUID(IID, IID_IProcessLauncher,0x128C2DA6,0x2BC0,0x44c0,0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64);
MIDL_DEFINE_GUID(IID, IID_IProcessLauncher2,0xD106AB5F,0xA70E,0x400E,0xA2,0x1B,0x96,0x20,0x8C,0x1D,0x8D,0xBB);
MIDL_DEFINE_GUID(IID, IID_IOneClickProcessLauncher,0x5CCCB0EF,0x7073,0x4516,0x80,0x28,0x4C,0x62,0x8D,0x0C,0x8A,0xAB);
......@@ -133,6 +142,9 @@ MIDL_DEFINE_GUID(IID, IID_IProgressWndEvents,0x1C642CED,0xCA3B,0x4013,0xA9,0xDF,
MIDL_DEFINE_GUID(IID, IID_IJobObserver,0x49D7563B,0x2DDB,0x4831,0x88,0xC8,0x76,0x8A,0x53,0x83,0x38,0x37);
MIDL_DEFINE_GUID(IID, IID_IJobObserver2,0x19692F10,0xADD2,0x4EFF,0xBE,0x54,0xE6,0x1C,0x62,0xE4,0x0D,0x13);
MIDL_DEFINE_GUID(IID, IID_IGoogleUpdate,0x31AC3F11,0xE5EA,0x4a85,0x8A,0x3D,0x8E,0x09,0x5A,0x39,0xC2,0x7B);
......
......@@ -76,9 +76,15 @@ MIDL_DEFINE_GUID(IID, IID_IAppBundle,0xfe908cdd,0x22bb,0x472a,0x98,0x70,0x1a,0x0
MIDL_DEFINE_GUID(IID, IID_IApp,0x76F7B787,0xA67C,0x4c73,0x82,0xC7,0x31,0xF5,0xE3,0xAA,0xBC,0x5C);
MIDL_DEFINE_GUID(IID, IID_IApp2,0x084D78A8,0xB084,0x4E14,0xA6,0x29,0xA2,0xC4,0x19,0xB0,0xE3,0xD9);
MIDL_DEFINE_GUID(IID, IID_IAppCommand,0x4DE778FE,0xF195,0x4ee3,0x9D,0xAB,0xFE,0x44,0x6C,0x23,0x92,0x21);
MIDL_DEFINE_GUID(IID, IID_IAppCommand2,0x3D05F64F,0x71E3,0x48A5,0xBF,0x6B,0x83,0x31,0x5B,0xC8,0xAE,0x1F);
MIDL_DEFINE_GUID(IID, IID_IAppVersion,0xBCDCB538,0x01C0,0x46d1,0xA6,0xA7,0x52,0xF4,0xD0,0x21,0xC2,0x72);
......@@ -106,7 +112,7 @@ MIDL_DEFINE_GUID(IID, IID_IAppBundleWeb,0xDD42475D,0x6D46,0x496a,0x92,0x4E,0xBD,
MIDL_DEFINE_GUID(IID, IID_IAppWeb,0x18D0F672,0x18B4,0x48e6,0xAD,0x36,0x6E,0x6B,0xF0,0x1D,0xBB,0xC4);
MIDL_DEFINE_GUID(IID, IID_IAppCommandWeb,0x68D6C2BD,0x712E,0x4c96,0x93,0xE8,0x49,0xCB,0x8A,0x9A,0xAE,0xED);
MIDL_DEFINE_GUID(IID, IID_IAppCommandWeb,0x8476CE12,0xAE1F,0x4198,0x80,0x5C,0xBA,0x0F,0x9B,0x78,0x3F,0x57);
MIDL_DEFINE_GUID(IID, IID_IAppVersionWeb,0x0CD01D1E,0x4A1C,0x489d,0x93,0xB9,0x9B,0x66,0x72,0x87,0x7C,0x57);
......@@ -124,6 +130,9 @@ MIDL_DEFINE_GUID(IID, IID_IBrowserHttpRequest2,0x5B25A8DC,0x1780,0x4178,0xA6,0x2
MIDL_DEFINE_GUID(IID, IID_IProcessLauncher,0x128C2DA6,0x2BC0,0x44c0,0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64);
MIDL_DEFINE_GUID(IID, IID_IProcessLauncher2,0xD106AB5F,0xA70E,0x400E,0xA2,0x1B,0x96,0x20,0x8C,0x1D,0x8D,0xBB);
MIDL_DEFINE_GUID(IID, IID_IOneClickProcessLauncher,0x5CCCB0EF,0x7073,0x4516,0x80,0x28,0x4C,0x62,0x8D,0x0C,0x8A,0xAB);
......@@ -133,6 +142,9 @@ MIDL_DEFINE_GUID(IID, IID_IProgressWndEvents,0x1C642CED,0xCA3B,0x4013,0xA9,0xDF,
MIDL_DEFINE_GUID(IID, IID_IJobObserver,0x49D7563B,0x2DDB,0x4831,0x88,0xC8,0x76,0x8A,0x53,0x83,0x38,0x37);
MIDL_DEFINE_GUID(IID, IID_IJobObserver2,0x19692F10,0xADD2,0x4EFF,0xBE,0x54,0xE6,0x1C,0x62,0xE4,0x0D,0x13);
MIDL_DEFINE_GUID(IID, IID_IGoogleUpdate,0x31AC3F11,0xE5EA,0x4a85,0x8A,0x3D,0x8E,0x09,0x5A,0x39,0xC2,0x7B);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment