Pular para o conteúdo

state_set

  • Lê uma chave do Estado do Hook de 32 bytes a partir de kread_ptr
  • Lê uma quantidade arbitrária de dados a partir de read_ptr (o valor)
  • Atualiza a chave do Estado do Hook com o valor
int64_t state_set (
uint32_t read_ptr,
uint32_t read_len,
uint32_t kread_ptr,
uint32_t kread_len
);
#define SBUF(str) (uint32_t)(str), sizeof(str)
if (state_set(SBUF(vault), SBUF(vault_key)) < 0)
rollback(SBUF("Error: could not set state!"), 1);
NomeTipoDescrição
read_ptruint32_t

Ponteiro para os dados (valor) a serem escritos no Estado do Hook.
Se for 0 (nulo), então os dados nessa chave são excluídos. Pode ser nulo.

read_lenuint32_t

O tamanho dos dados.
Se for 0 (nulo), então os dados nessa chave são excluídos. Pode ser nulo.

kread_ptruint32_tUm ponteiro para a chave do Estado do Hook na qual armazenar o valor.
kread_lenuint32_tO tamanho da chave. (Deve ser sempre 32.)
TipoDescrição
int64_t

O número de bytes escritos no Estado do Hook (o tamanho dos dados.)

Se negativo, um erro:
OUT_OF_BOUNDS
- ponteiros/tamanhos especificados fora da memória do hook.

TOO_BIG
- kread_len era maior que 32, ou
- read_len era maior que o tamanho máximo de dados do hook.

TOO_SMALL
- kread_len era 0.