Merge pull request #1506 from zznop/1502-set-cpu-go

SetCPUModel go binding for setting the CPU model
This commit is contained in:
lazymio 2021-12-04 23:26:41 +01:00 committed by GitHub
commit 1923c12315
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 0 deletions

View File

@ -23,3 +23,7 @@ uc_err uc_reg_write_batch_helper(uc_engine *handle, int *regs, uint64_t *val_in,
free(val_ref);
return ret;
}
uc_err uc_ctl_set_cpu_model_helper(uc_engine *handle, int model) {
return uc_ctl_set_cpu_model(handle, model);
}

View File

@ -1,2 +1,3 @@
uc_err uc_reg_read_batch_helper(uc_engine *handle, int *regs, uint64_t *val_out, int count);
uc_err uc_reg_write_batch_helper(uc_engine *handle, int *regs, uint64_t *val_in, int count);
uc_err uc_ctl_set_cpu_model_helper(uc_engine *handle, int model);

View File

@ -62,6 +62,7 @@ type Unicorn interface {
Handle() *C.uc_engine
RegWriteX86Msr(reg uint64, val uint64) error
RegReadX86Msr(reg uint64) (uint64, error)
SetCPUModel(model int) error
}
type uc struct {
@ -233,3 +234,8 @@ func (u *uc) Query(queryType int) (uint64, error) {
func (u *uc) Handle() *C.uc_engine {
return u.handle
}
func (u *uc) SetCPUModel(model int) error {
ucerr := C.uc_ctl_set_cpu_model_helper(u.handle, C.int(model))
return errReturn(ucerr)
}