package gnoi.os

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service OS

os.proto:24

The OS service provides an interface for OS installation on a Target. The Client progresses through 3 RPCs: 1) Installation - provide the Target with the OS package. 2) Activation - activate an installed OS package. 3) Verification - verify that the Activation was successful. Dual Supervisor Target is supported, where the above process is executed once for each Supervisor. Note that certain platforms may have particular approaches to upgrade the firmware of specific components, eg., power supply units, etc.. In addition, platforms may have processes to apply patches to the running OS. Handling these exceptions introduces extra complexities. For Targets that implement this service, component firmware upgrade or OS patching MUST be embedded within an OS upgrade.

message ActivateError

os.proto:274

Used in: ActivateResponse

enum ActivateError.Type

os.proto:275

Used in: ActivateError

message ActivateOK

os.proto:272

If the Target is already running the requested version in ActivateRequest, then it replies with ActivateOK. If the Target has the OS package version requested in ActivateRequest then it replies with ActivateOK and proceeds to boot. In a Target with dual Supervisor, performing this RPC on the Active Supervisor triggers a switchover before booting the (old)Active Supervisor. The Target should always perform a switchover with the least impact possible to forwarding.

Used in: ActivateResponse

(message has no fields)

message InstallError

os.proto:212

The InstallError message MUST be sent by the Target to the Client whenever an issue occurs. The Target MUST immediately close the RPC without a gRPC error.

Used in: InstallResponse

enum InstallError.Type

os.proto:213

Used in: InstallError

message StandbyResponse

os.proto:320

Used in: VerifyStandby

message StandbyState

os.proto:307

Used in: VerifyStandby

enum StandbyState.State

os.proto:308

Used in: StandbyState

message SyncProgress

os.proto:193

The SyncProgress message signals the Client about the progress of transferring the OS package between Supervisors.

Used in: InstallResponse

message TransferEnd

os.proto:162

The TransferEnd message is sent whenever the Client finishes transferring the OS package to the Target. At this point the Target MUST perform a general health check to the OS package. If the Target fails to parse the OS package it MUST immediately reply with an InstallError->type->PARSE_FAIL. If the integrity check of the OS package fails it MUST immediately reply with an InstallError->type->INTEGRITY_FAIL. If the identified OS version contained in the package is not compatible with the Target either because of the platform type or the running OS, it MUST immediately reply with an InstallError->type->INCOMPATIBLE. If the image is force transferred by omitting the InstallRequest->TransferRequest->version value, and the OS package is the same as the one running in the Target, the RPC MUST immediately abort and reply with an InstallError->type->INSTALL_RUN_PACKAGE.

Used in: InstallRequest

(message has no fields)

message TransferProgress

os.proto:186

The TransferProgress message is sent by the target asynchronously during a file transfer. The device SHOULD not respond to each input block received from the client, but rather determine reasonable intervals at which to send the message (e.g., 5MB).

Used in: InstallResponse

message TransferReady

os.proto:180

The TransferReady message tells the Client that the Target is ready to accept the transfer of the OS package. At this stage the Target MUST have cleared enough space to accept the incoming OS package.

Used in: InstallResponse

(message has no fields)

message TransferRequest

os.proto:127

Used in: InstallRequest

message Validated

os.proto:200

The Validated message asserts that the Target was able to parse the package and perform integrity checks to its contents.

Used in: InstallResponse

message VerifyStandby

os.proto:300

Used in: VerifyResponse