nl::Weave::Profiles::SoftwareUpdate

Este espacio de nombres incluye todas las interfaces dentro de Weave para el perfil de Weave Software Update, que incluyen el protocolo correspondiente con el mismo nombre.

Resumen

Enumeraciones

@309{
  kMsgType_ImageAnnounce = 0,
  kMsgType_ImageQuery = 1,
  kMsgType_ImageQueryResponse = 2,
  kMsgType_DownloadNotify = 3,
  kMsgType_NotifyResponse = 4,
  kMsgType_UpdateNotify = 5,
  kMsgType_ImageQueryStatus = 6
}
enum
@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
Marcas de control para el campo de control del marco de ImageQuery.
@312 enum
Máscaras de bits para el campo de opciones de actualización opcional de ImageQueryResponse.
@313 enum
Desplazamientos de cambio para el campo de opciones de actualización opcional de ImageQueryResponse.
@314{
  kIntegrityType_SHA160 = 0,
  kIntegrityType_SHA256 = 1,
  kIntegrityType_SHA512 = 2,
  kIntegrityType_Last = 3
}
enum
@315 enum
Es las longitudes, en bytes, de las cadenas de bytes de especificación de integridad.
@316{
  kUpdateScheme_HTTP = 0,
  kUpdateScheme_HTTPS = 1,
  kUpdateScheme_SFTP = 2,
  kUpdateScheme_BDX = 3,
  kUpdateScheme_Last = 4
}
enum
@317 enum
Etiquetas de elementos de datos para el perfil de SoftwareUpdate.
UpdateCondition{
  IfUnmatched,
  IfLater,
  Unconditionally,
  OnOptIn
}
enum
Condiciones que rigen la política de actualización.
UpdatePriority{
  Normal,
  Critical
}
enum
Prioridades de actualización.

Funciones

integrityLength(uint8_t aType)
int
Un método de compatibilidad que asigna los valores IntegrityTypes a la longitud de los hash de ese tipo.

Clases

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

Interfaz para el delegado WeaveImageAnnounceServer.

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

Clase que describe el mensaje ImageAnnounce.

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

Una clase para admitir la creación y la decodificación de mensajes de consulta de imágenes.

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

Una clase para admitir la creación y la decodificación de los mensajes de respuesta a la consulta de imágenes.

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

Una clase auxiliar que contiene el tipo de integridad y el hash real de la imagen de la actualización de software.

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

Una clase auxiliar para conservar una lista de tipos de integridad como parte de la consulta de imagen.

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

Una clase auxiliar que representa las especificaciones de un producto.

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

Una clase auxiliar para contener una lista de esquemas de actualización como parte de la consulta de imagen.

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

Servidor que escucha anuncios de imágenes de Weave.

Enumeraciones

@309

 @309

SoftwareUpdate.

Propiedades
kMsgType_DownloadNotify

Un mensaje opcional del cliente al servidor que se usa para notificar al servidor sobre el estado de descarga.

Su carga útil es un objeto nl::Weave::Profiles::StatusReporting::StatusReport con la información de estado adicional obtenida de SoftwareUpdateStatusCodes.

kMsgType_ImageAnnounce

Es un mensaje opcional no solicitado que usa el servidor para anunciar la disponibilidad de una actualización de software.

El mensaje no lleva una carga útil.

kMsgType_ImageQuery

Un mensaje de consulta que envía el cliente al servidor.

Su formato se define con la clase ImageQuery.

kMsgType_ImageQueryResponse

Un mensaje generado en respuesta a un mensaje de consulta de imagen correcta.

La clase ImageQueryResponse define su formato.

kMsgType_ImageQueryStatus

Un mensaje generado en respuesta a un mensaje con errores de consulta de imagen.

Su carga útil es un objeto nl::Weave::Profiles::StatusReporting::StatusReport con la información de estado adicional obtenida de SoftwareUpdateStatusCodes.

kMsgType_NotifyResponse

Un mensaje generado en respuesta al mensaje de notificación de descarga.

Su carga útil es un objeto nl::Weave::Profiles::StatusReporting::StatusReport con la información de estado adicional obtenida de SoftwareUpdateStatusCodes.

kMsgType_UpdateNotify

Un mensaje opcional del cliente al servidor que se usa para comunicar el estado final de la actualización.

Su carga útil es un objeto nl::Weave::Profiles::StatusReporting::StatusReport con la información de estado adicional obtenida de SoftwareUpdateStatusCodes. Como se espera que el mensaje se genere después de la actualización real, se envía en un ExchangeContext nuevo y se trata como un mensaje no solicitado en el servidor.

@310

 @310

Códigos de estado específicos del perfil SoftwareUpdate.

Propiedades
kStatus_Abort

servidor => “Cliente” indica que el cliente debería darse por vencido porque el servidor no tiene opciones.

kStatus_DownloadFailed

cliente => “server”, indica que un intento de descarga falló.

kStatus_IntegrityCheckFailed

cliente => “server”, indica que se descargó una imagen, pero falló la verificación de integridad posterior.

kStatus_InvalidInstructions

cliente => indica que el cliente no pudo descargar una imagen debido a las instrucciones de descarga incluidas en ImageQueryResponse, es decir,

El URI, el esquema de actualización y la condición de actualización no tenían el formato correcto o eran incoherentes.

kStatus_NoUpdateAvailable

servidor => cliente indica que se recibió y comprendió una consulta de imagen, y que el servidor no tiene actualizaciones para el cliente en este momento.

kStatus_Retry

servidor => cliente, indica que el cliente debe enviar otra consulta de imagen y reiniciar o continuar con la actualización

kStatus_UpdateFailed

cliente => “server”, indica que se produjo un error al intentar instalar una imagen especificada por el servidor.

@311

 @311

Marcas de control para el campo de control del marco de ImageQuery.

Propiedades
kFlag_LocaleSpecPresent

La especificación de Locale está presente en ImageQuery.

kFlag_PackageSpecPresent

La especificación del paquete está presente en ImageQuery.

kFlag_TargetNodeIdPresent

El ID del nodo de destino está presente en la ImageQuery.

@312

 @312

Máscaras de bits para el campo de opciones de actualización opcional de ImageQueryResponse.

@313

 @313

Desplazamientos de cambio para el campo de opciones de actualización opcional de ImageQueryResponse.

@314

 @314

Tipos de integridad compatibles con el perfil SoftwareUpdate.

El marco de consulta de imágenes contiene información sobre la verificación de integridad que admite el cliente y la respuesta de la consulta de imágenes contiene un tipo y valor de integridad para la imagen que se le indica al cliente que descargue e instale. Los tipos admitidos son los siguientes:

Propiedades
kIntegrityType_Last

Cantidad de elementos válidos en la enumeración.

kIntegrityType_SHA160

Se requiere el hash seguro de 160 bits (SHA-1).

kIntegrityType_SHA256

Hash seguro de 256 bits (SHA-2)

kIntegrityType_SHA512

Hash seguro de 512 bits (SHA-2).

@315

 @315

Es las longitudes, en bytes, de las cadenas de bytes de especificación de integridad.

@316

 @316

Actualiza los esquemas compatibles con el perfil de SofwareUpdate.

De manera similar a los tipos de integridad compatibles, la consulta de imagen contiene información sobre los esquemas de actualización (es decir, los protocolos de descarga) que admite el cliente, y la respuesta contiene un valor para indicar el esquema de actualización que se usará para descargar las imágenes. Los esquemas compatibles son los siguientes:

Propiedades
kUpdateScheme_BDX

Se utilizará la transferencia masiva de datos de Weave como protocolo de descarga.

kUpdateScheme_HTTP

Se debe usar HTTP como protocolo de descarga.

kUpdateScheme_HTTPS

Se debe usar HTTPS como protocolo de descarga.

kUpdateScheme_Last

Cantidad de elementos válidos en la enumeración.

kUpdateScheme_SFTP

Se debe utilizar SFTP como protocolo de descarga.

@317

 @317

Etiquetas de elementos de datos para el perfil de SoftwareUpdate.

UpdateCondition

 UpdateCondition

Condiciones que rigen la política de actualización.

Propiedades
IfLater

Descarga e instala la imagen si la especificación de versión en el marco de respuesta es posterior a la versión del software instalada actualmente.

IfUnmatched

Descarga e instala la imagen si la especificación de versión en el marco de respuesta no coincide con la versión del software instalada actualmente.

OnOptIn

descargar e instalar la imagen en algún activador proporcionado por un usuario en el sitio.

Unconditionally

Descarga e instala la imagen independientemente de la versión del software que se esté ejecutando.

UpdatePriority

 UpdatePriority

Prioridades de actualización.

Propiedades
Critical

La actualización debe ejecutarse de inmediato.

Normal

La actualización se puede ejecutar a discreción del cliente.

Funciones

integrityLength

int integrityLength(
  uint8_t aType
)

Un método de compatibilidad que asigna los valores IntegrityTypes a la longitud de los hash de ese tipo.

Detalles
Parámetros
[in] aType
Un valor IntegrityTypes
Resultado que se muestra
La longitud del hash del tipo de hash proporcionado.