pub struct Request {
pub protocol_version: String,
pub updater: String,
pub updater_version: String,
pub install_source: InstallSource,
pub is_machine: bool,
pub request_id: Option<GUID>,
pub session_id: Option<GUID>,
pub os: OS,
pub apps: Vec<App>,
}
Expand description
An Omaha protocol request.
This holds the data for constructing a request to the Omaha service.
See https://github.com/google/omaha/blob/HEAD/doc/ServerProtocolV3.md#request
Fields§
§protocol_version: String
The current Omaha protocol version (which this is meant to be used with, is 3.0. This should always be set to “3.0”.
This is the ‘protocol’ attribute of the request object.
updater: String
This is the string identifying the updater software itself (this client). e.g. “fuchsia”
updater_version: String
The version of the updater itself (e.g. “Fuchsia/Rust-0.0.0.1”). This is the version of the updater implemented using this Crate.
This is the ‘updaterversion’ attribute of the request object.
install_source: InstallSource
The install source trigger for this request.
is_machine: bool
The system update is always done by “the machine” aka system-level or administrator privileges.
This is the ‘ismachine’ attribute of the request object.
request_id: Option<GUID>
The randomly generated GUID for a single Omaha request.
This is the ‘requestid’ attribute of the request object.
session_id: Option<GUID>
The randomly generated GUID for all Omaha requests in an update session.
This is the ‘sessionid’ attribute of the request object.
os: OS
Information about the device operating system.
This is the ‘os’ child object of the request object.
apps: Vec<App>
The applications to update.
These are the ‘app’ children objects of the request object