nl::Weave::Profiles::SoftwareUpdate

Esse namespace inclui todas as interfaces no Weave para o perfil de atualização do software do Weave, que inclui o protocolo correspondente com o mesmo nome.

Resumo

Enumerações

@309{
  kMsgType_ImageAnnounce = 0,
  kMsgType_ImageQuery = 1,
  kMsgType_ImageQueryResponse = 2,
  kMsgType_DownloadNotify = 3,
  kMsgType_NotifyResponse = 4,
  kMsgType_UpdateNotify = 5,
  kMsgType_ImageQueryStatus = 6
}
enum
Tipos de mensagens do SoftwareUpdate.
@310{
  kStatus_NoUpdateAvailable = 0x0001,
  kStatus_UpdateFailed = 0x0010,
  kStatus_InvalidInstructions = 0x0050,
  kStatus_DownloadFailed = 0x0051,
  kStatus_IntegrityCheckFailed = 0x0052,
  kStatus_Abort = 0x0053,
  kStatus_Retry = 0x0091
}
enum
@311{
  kFlag_PackageSpecPresent = 1,
  kFlag_LocaleSpecPresent = 2,
  kFlag_TargetNodeIdPresent = 4
}
enum
Sinalizações de controle para o campo de controle do frame ImageQuery.
@312 enum
Bitmasks para o campo de opções de atualização opcional de ImageQueryResponse.
@313 enum
Desloque os deslocamentos para o campo de opções de atualização opcional de ImageQueryResponse.
@314{
  kIntegrityType_SHA160 = 0,
  kIntegrityType_SHA256 = 1,
  kIntegrityType_SHA512 = 2,
  kIntegrityType_Last = 3
}
enum
@315 enum
Tamanho, em bytes, para as strings de bytes de especificação de integridade.
@316{
  kUpdateScheme_HTTP = 0,
  kUpdateScheme_HTTPS = 1,
  kUpdateScheme_SFTP = 2,
  kUpdateScheme_BDX = 3,
  kUpdateScheme_Last = 4
}
enum
@317 enum
Tags de elementos de dados para o perfil SoftwareUpdate.
UpdateCondition{
  IfUnmatched,
  IfLater,
  Unconditionally,
  OnOptIn
}
enum
Condições que regem a política de atualização.
UpdatePriority{
  Normal,
  Critical
}
enum
Atualizar prioridades.

Funções

integrityLength(uint8_t aType)
int
Um método de suporte que mapeia os valores de IntegrityTypes para o comprimento dos hashes desse tipo.

Classes

nl::Weave::Profiles::SoftwareUpdate::IWeaveImageAnnounceServerDelegate

Interface para o delegado WeaveImageAnnounceServer.

nl::Weave::Profiles::SoftwareUpdate::ImageAnnounce

Classe que descreve a mensagem ImageAnnounce.

nl::Weave::Profiles::SoftwareUpdate::ImageQuery

Uma classe que oferece suporte à criação e decodificação de mensagens de consulta de imagem.

nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

Uma classe que oferece suporte à criação e decodificação das mensagens de resposta da consulta de imagem.

nl::Weave::Profiles::SoftwareUpdate::IntegritySpec

Uma classe auxiliar que contém o tipo de integridade e o hash real da imagem de atualização do software.

nl::Weave::Profiles::SoftwareUpdate::IntegrityTypeList

Uma classe auxiliar para manter uma lista de tipos de integridade como parte da consulta de imagem.

nl::Weave::Profiles::SoftwareUpdate::ProductSpec

Uma classe auxiliar que representa uma especificação de produto.

nl::Weave::Profiles::SoftwareUpdate::UpdateSchemeList

Uma classe auxiliar para manter uma lista de esquemas de atualização como parte da consulta de imagem.

nl::Weave::Profiles::SoftwareUpdate::WeaveImageAnnounceServer

Servidor que detecta anúncios de imagem do Weave.

Enumerações

@309

 @309

Tipos de mensagens do SoftwareUpdate.

Propriedades
kMsgType_DownloadNotify

Uma mensagem opcional do cliente para o servidor, usada para notificar o servidor sobre o status do download.

O payload é um nl::Weave::Profiles::StatusReporting::StatusReport com as informações de status adicionais extraídas de SoftwareUpdateStatusCodes.

kMsgType_ImageAnnounce

Uma mensagem não solicitada opcional, usada pelo servidor para anunciar a disponibilidade de uma atualização de software.

A mensagem não tem payload.

kMsgType_ImageQuery

Uma mensagem de consulta enviada pelo cliente ao servidor.

O formato é definido pela classe ImageQuery.

kMsgType_ImageQueryResponse

Uma mensagem gerada em resposta a uma mensagem de consulta de imagem bem-sucedida.

O formato é definido pela classe ImageQueryResponse.

kMsgType_ImageQueryStatus

Uma mensagem gerada em resposta a uma mensagem de consulta de imagem que falhou.

O payload é um nl::Weave::Profiles::StatusReporting::StatusReport com as informações de status adicionais extraídas de SoftwareUpdateStatusCodes.

kMsgType_NotifyResponse

Uma mensagem gerada em resposta à mensagem de notificação de download.

O payload é um nl::Weave::Profiles::StatusReporting::StatusReport com as informações de status adicionais extraídas de SoftwareUpdateStatusCodes.

kMsgType_UpdateNotify

Uma mensagem opcional do cliente para o servidor usada para comunicar o status final da atualização.

O payload é um nl::Weave::Profiles::StatusReporting::StatusReport com as informações de status adicionais extraídas de SoftwareUpdateStatusCodes. Como se espera que a mensagem seja gerada após a atualização real, ela é enviada em um novo ExchangeContext e tratada como uma mensagem não solicitada no servidor.

@310

 @310

Códigos de status específicos do perfil SoftwareUpdate.

Propriedades
kStatus_Abort

servidor => client, indica que o cliente deve desistir, já que o servidor está sem opções.

kStatus_DownloadFailed

cliente => , indica que uma tentativa de download falhou.

kStatus_IntegrityCheckFailed

cliente => , indica que uma imagem foi baixada, mas que falhou na verificação de integridade subsequente.

kStatus_InvalidInstructions

cliente => server, indica que o cliente não conseguiu fazer o download de uma imagem porque as instruções de download contidas em ImageQueryResponse, ou seja,

URI, esquema de atualização, condição de atualização, formatação incorreta ou inconsistente.

kStatus_NoUpdateAvailable

servidor => cliente, indica que uma consulta de imagem foi recebida e compreendida e que o servidor não tem atualização para o cliente no momento.

kStatus_Retry

servidor => cliente, indica que o cliente deve enviar outra consulta de imagem e reiniciar/continuar a atualização

kStatus_UpdateFailed

cliente => servidor, indica que uma tentativa de instalar uma imagem especificada pelo servidor falhou.

@311

 @311

Sinalizações de controle para o campo de controle do frame ImageQuery.

Propriedades
kFlag_LocaleSpecPresent

A especificação Locale está presente na ImageQuery.

kFlag_PackageSpecPresent

A especificação do pacote está presente na ImageQuery.

kFlag_TargetNodeIdPresent

O ID do nó de destino está presente na ImageQuery.

@312

 @312

Bitmasks para o campo de opções de atualização opcional de ImageQueryResponse.

@313

 @313

Desloque os deslocamentos para o campo de opções de atualização opcional de ImageQueryResponse.

@314

 @314

Tipos de integridade compatíveis com o perfil SoftwareUpdate.

O frame de consulta de imagem contém informações sobre qual verificação de integridade o cliente aceita, e a resposta da consulta de imagem contém um tipo de integridade e um valor para a imagem que o cliente está sendo instruído a baixar e instalar. Os tipos permitidos são:

Propriedades
kIntegrityType_Last

Número de elementos válidos na enumeração.

kIntegrityType_SHA160

Hash seguro de 160 bits (SHA-1), obrigatório.

kIntegrityType_SHA256

Hash seguro de 256 bits (SHA-2).

kIntegrityType_SHA512

Hash seguro de 512 bits (SHA-2).

@315

 @315

Tamanho, em bytes, para as strings de bytes de especificação de integridade.

@316

 @316

Esquemas de atualização compatíveis com o perfil do SofwareUpdate.

Da mesma forma que os tipos de integridade compatíveis, a consulta de imagem contém informações sobre quais esquemas de atualização, ou seja, protocolos de download, o cliente aceita, e a resposta contém um valor para indicar o esquema de atualização a ser usado no download das imagens. Os esquemas com suporte são:

Propriedades
kUpdateScheme_BDX

A transferência de dados em massa do Weave será usada como protocolo de download.

kUpdateScheme_HTTP

O HTTP será usado como protocolo de download.

kUpdateScheme_HTTPS

O HTTPS será usado como protocolo de download.

kUpdateScheme_Last

Número de elementos válidos na enumeração.

kUpdateScheme_SFTP

O SFTP será usado como protocolo de download.

@317

 @317

Tags de elementos de dados para o perfil SoftwareUpdate.

UpdateCondition

 UpdateCondition

Condições que regem a política de atualização.

Propriedades
IfLater

Faça o download e instale a imagem se a especificação da versão no frame de resposta for posterior à versão do software instalada atualmente.

IfUnmatched

Faça o download e instale a imagem se a especificação da versão no frame de resposta não corresponder à versão do software instalada atualmente.

OnOptIn

fazer o download e instalar a imagem em algum acionador fornecido por um usuário no site.

Unconditionally

Faça o download e instale a imagem, independentemente da versão do software em execução no momento.

UpdatePriority

 UpdatePriority

Atualizar prioridades.

Propriedades
Critical

A atualização precisa ser executada imediatamente.

Normal

A atualização pode ser feita a critério do cliente.

Funções

integrityLength

int integrityLength(
  uint8_t aType
)

Um método de suporte que mapeia os valores de IntegrityTypes para o comprimento dos hashes desse tipo.

Detalhes
Parâmetros
[in] aType
Um valor IntegrityTypes
Retornos
Tamanho do hash do tipo de hash fornecido.