Pular para o conteúdo

hook_param_set

  • Procura na cadeia de hooks da conta hook por um hash de 32 bytes indicado por hread_ptr
  • Se encontrado: define um parâmetro:
  • Com o nome do parâmetro indicado por kread_ptr e
  • O valor do parâmetro indicado por read_ptr
int64_t hook_param_set (
uint32_t read_ptr,
uint32_t read_len,
uint32_t kread_ptr,
uint32_t kread_len,
uint32_t hread_ptr,
uint32_t hread_len
);
uint8_t pvalue[] = "some parameter value";
uint8_t pname[] = "paramname";
uint8_t phash[] = { 0x19U, 0xFEU, 0x69U, 0xF1U, 0x53U, 0x66U, 0x4EU, 0x8CU,
0x97U, 0xF4U, 0x4CU, 0x5CU, 0x3CU, 0x65U, 0x63U, 0x79U,
0xC2U, 0xD0U, 0x26U, 0xE7U, 0x90U, 0xEFU, 0x38U, 0xF7U,
0xEDU, 0x73U, 0xE9U, 0xCEU, 0x9CU, 0x9DU, 0xBFU, 0x03U };
int64_t result =
hook_param_set(pvalue, sizeof(pvalue),
pname, sizeof(pname),
phash, sizeof(phash));
NomeTipoDescrição
read_ptruint32_tPonteiro para o valor do parâmetro
read_lenuint32_tTamanho do valor do parâmetro
kread_ptruint32_tPonteiro para o nome do parâmetro
kread_lenuint32_tTamanho do nome do parâmetro
hread_ptruint32_tPonteiro para o hash do hook
hread_lenuint32_tTamanho do hash do hook (sempre 32)
TipoDescrição
int64_tO tamanho do valor do parâmetro definido com sucesso

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

TOO_SMALL
- O nome do parâmetro não pode ser nulo

TOO_BIG
- O nome do parâmetro é maior que 32 bytes