O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Configurações

Este módulo inclui a abstração da plataforma para o armazenamento de configurações não voláteis.

Resumo

Enumerações

anonymous enum{
  OT_SETTINGS_KEY_ACTIVE_DATASET = 0x0001,
  OT_SETTINGS_KEY_PENDING_DATASET = 0x0002,
  OT_SETTINGS_KEY_NETWORK_INFO = 0x0003,
  OT_SETTINGS_KEY_PARENT_INFO = 0x0004,
  OT_SETTINGS_KEY_CHILD_INFO = 0x0005,
  OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY = 0x0007,
  OT_SETTINGS_KEY_DAD_INFO = 0x0008,
  OT_SETTINGS_KEY_SRP_ECDSA_KEY = 0x000b,
  OT_SETTINGS_KEY_SRP_CLIENT_INFO = 0x000c,
  OT_SETTINGS_KEY_SRP_SERVER_INFO = 0x000d,
  OT_SETTINGS_KEY_BR_ULA_PREFIX = 0x000f
}
tipo enumerado
Esta enumeração define as chaves das configurações.

Funções

otPlatSettingsAdd(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Adiciona um valor a uma configuração.
otPlatSettingsDeinit(otInstance *aInstance)
void
Realiza qualquer inicialização do subsistema de configurações, se necessário.
otPlatSettingsDelete(otInstance *aInstance, uint16_t aKey, int aIndex)
Remove uma configuração do armazenamento de configurações.
otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint8_t *aValue, uint16_t *aValueLength)
Busca o valor de uma configuração.
otPlatSettingsInit(otInstance *aInstance, const uint16_t *aSensitiveKeys, uint16_t aSensitiveKeysLength)
void
Executa qualquer inicialização para o subsistema de configurações, se necessário.
otPlatSettingsSet(otInstance *aInstance, uint16_t aKey, const uint8_t *aValue, uint16_t aValueLength)
Define ou substitui o valor de uma configuração.
otPlatSettingsWipe(otInstance *aInstance)
void
Remove todas as configurações do armazenamento de configurações.

Enumerações

enumeração anônima

 anonymous enum

Esta enumeração define as chaves das configurações.

Observação: ao adicionar uma nova chave de configurações, se as configurações correspondentes à chave tiverem informações confidenciais de segurança, o desenvolvedor PRECISA adicionar a chave à matriz aSensitiveKeys, que é transmitida em otPlatSettingsInit().

Propriedades
OT_SETTINGS_KEY_ACTIVE_DATASET

Conjunto de dados operacional ativo.

OT_SETTINGS_KEY_BR_ULA_PREFIX

BR ULA.

OT_SETTINGS_KEY_CHILD_INFO

Informações do editor filho

OT_SETTINGS_KEY_DAD_INFO

Informações de detecção de endereço duplicado (DAD, na sigla em inglês).

OT_SETTINGS_KEY_NETWORK_INFO

Informações da rede de linhas de execução.

OT_SETTINGS_KEY_PARENT_INFO

Informações da família.

OT_SETTINGS_KEY_PENDING_DATASET

Conjunto operacional de dados pendente.

OT_SETTINGS_KEY_SLAAC_IID_SECRET_KEY

Chave SLAAC para gerar IID opaco semanticamente.

OT_SETTINGS_KEY_SRP_CLIENT_INFO

Informações do cliente SRP (endereço do servidor SRP selecionado).

OT_SETTINGS_KEY_SRP_ECDSA_KEY

Par de chaves pública/privada ECDSA do cliente SRP.

OT_SETTINGS_KEY_SRP_SERVER_INFO

Informações do servidor SRP (porta UDP).

Funções

OtPlatSettingsAdd

otError otPlatSettingsAdd(
  otInstance *aInstance,
  uint16_t aKey,
  const uint8_t *aValue,
  uint16_t aValueLength
)

Adiciona um valor a uma configuração.

Essa função adiciona o valor a uma configuração identificada por aKey, sem substituir os valores existentes.

A implementação subjacente não é necessária para manter a ordem dos itens associados a uma chave específica. O valor adicionado pode ser adicionado ao final, início ou até mesmo no meio. A ordem dos valores preexistentes também poderá ser alterada.

Chamar esta função com sucesso pode fazer com que as configurações não relacionadas com vários valores sejam reordenadas.

A pilha do OpenThread garante o uso do método otPlatSettingsAdd() para um aKey que foi gerenciado anteriormente por otPlatSettingsAdd() (ou seja, contém um ou mais itens) ou está vazio e/ou totalmente excluído (não tem valor).

A camada de plataforma pode confiar e usar esse fato para otimizar a implementação.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread
[in] aKey
A chave associada à configuração a ser alterada.
[in] aValue
Um ponteiro para leitura do novo valor da configuração. NÃO DEVE ser NULL se aValueLength for diferente de zero.
[in] aValueLength
O comprimento dos dados apontados por aValue. Pode ser zero.
Valores de retorno
OT_ERROR_NONE
A configuração especificada foi adicionada ou preparada para ser adicionada.
OT_ERROR_NOT_IMPLEMENTED
Esta função não está implementada nesta plataforma.
OT_ERROR_NO_BUFS
Não há mais espaço para armazenar a configuração especificada.

OtPlatSettingsDeinit

void otPlatSettingsDeinit(
  otInstance *aInstance
)

Realiza qualquer inicialização do subsistema de configurações, se necessário.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread

OtPlatSettingsDelete

otError otPlatSettingsDelete(
  otInstance *aInstance,
  uint16_t aKey,
  int aIndex
)

Remove uma configuração do armazenamento de configurações.

Esta função exclui um valor específico da configuração identificada por aKey do armazenamento de configurações.

A implementação subjacente não é necessária para manter a ordem dos itens associados a uma chave específica.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread
[in] aKey
A chave associada à configuração solicitada.
[in] aIndex
O índice do valor a ser removido. Se definido como -1, todos os valores para aKey serão removidos.
Valores de retorno
OT_ERROR_NONE
A chave e o índice fornecidos foram encontrados e removidos.
OT_ERROR_NOT_FOUND
A chave ou o índice fornecido não foi encontrado no armazenamento de configurações.
OT_ERROR_NOT_IMPLEMENTED
Esta função não está implementada nesta plataforma.

OtPlatSettingsGet

otError otPlatSettingsGet(
  otInstance *aInstance,
  uint16_t aKey,
  int aIndex,
  uint8_t *aValue,
  uint16_t *aValueLength
)

Busca o valor de uma configuração.

Essa função busca o valor da configuração identificada por aKey e a grava na memória apontada por aValue. Em seguida, ele grava o comprimento no número inteiro apontado por aValueLength. O valor inicial de aValueLength é o número máximo de bytes a serem gravados no aValue.

Essa função pode ser usada para verificar a existência de uma chave sem buscar o valor definindo aValue e aValueLength como NULL. Você também pode verificar a duração da configuração sem buscá-la definindo apenas avalue como NULL.

A implementação de armazenamento subjacente não é necessária para manter a ordem das configurações com vários valores. A ordem desses valores PRECISA mudar após QUALQUER operação de gravação no armazenamento.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread
[in] aKey
A chave associada à configuração solicitada.
[in] aIndex
O índice do item específico a ser recebido.
[out] aValue
Um ponteiro para escrever o valor da configuração. Pode ser definido como NULL se apenas testar a presença ou a duração de uma configuração.
[in,out] aValueLength
Um ponteiro para o comprimento do valor. Quando chamado, esse ponteiro deve apontar para um número inteiro contendo o tamanho máximo de valor que pode ser gravado em aValue. Em retorno, a duração real da configuração é escrita. Ele poderá ser definido como NULL se realizar uma verificação de presença.
Valores de retorno
OT_ERROR_NONE
A configuração especificada foi encontrada e recuperada.
OT_ERROR_NOT_FOUND
A configuração fornecida não foi encontrada no armazenamento de configurações.
OT_ERROR_NOT_IMPLEMENTED
Esta função não está implementada nesta plataforma.

OtPlatSettingsInit

void otPlatSettingsInit(
  otInstance *aInstance,
  const uint16_t *aSensitiveKeys,
  uint16_t aSensitiveKeysLength
)

Executa qualquer inicialização para o subsistema de configurações, se necessário.

Essa função também define as chaves confidenciais que precisam ser armazenadas na área segura.

A memória apontada por aSensitiveKeys NÃO pode ser liberada antes de aInstance ser destruído.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread
[in] aSensitiveKeys
Um ponteiro para uma matriz contendo a lista de chaves confidenciais. Só poderá ser NULL se aSensitiveKeysLength for 0, o que significa que não há chaves confidenciais.
[in] aSensitiveKeysLength
O número de entradas na matriz aSensitiveKeys.

OtPlatSettingsSet

otError otPlatSettingsSet(
  otInstance *aInstance,
  uint16_t aKey,
  const uint8_t *aValue,
  uint16_t aValueLength
)

Define ou substitui o valor de uma configuração.

Essa função define ou substitui o valor de uma configuração identificada por aKey.

Chamar esta função com sucesso pode fazer com que as configurações não relacionadas com vários valores sejam reordenadas.

A pilha do OpenThread garante o uso do método otPlatSettingsSet() para um aKey definido anteriormente com otPlatSettingsSet() (ou seja, contém um único valor) ou está vazio e/ou totalmente excluído (não tem valor).

A camada de plataforma pode confiar e usar esse fato para otimizar a implementação.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread
[in] aKey
A chave associada à configuração a ser alterada.
[in] aValue
Um ponteiro para leitura do novo valor da configuração. NÃO DEVE ser NULL se aValueLength for diferente de zero.
[in] aValueLength
O comprimento dos dados apontados por aValue. Pode ser zero.
Valores de retorno
OT_ERROR_NONE
A configuração especificada foi alterada ou testada em etapas.
OT_ERROR_NOT_IMPLEMENTED
Esta função não está implementada nesta plataforma.
OT_ERROR_NO_BUFS
Não há mais espaço para armazenar a configuração especificada.

OtPlatSettingsWipe

void otPlatSettingsWipe(
  otInstance *aInstance
)

Remove todas as configurações do armazenamento de configurações.

Essa função exclui todas as configurações do armazenamento de configurações, redefinindo-a para o estado de fábrica inicial.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread

Recursos

Os tópicos de referência da API OpenThread são originados do código-fonte, disponível no GitHub. Para saber mais ou contribuir com nossa documentação, consulte Recursos.