CAMLprim value unix_kill(value pid, value signal) { int sig; sig = convert_signal_number(Int_val(signal)); if (kill(Int_val(pid), sig) == -1) uerror("kill", Nothing); return Val_unit; }
value ocaml_cont (value ocaml_pid, value ocaml_signal) { CAMLparam2 (ocaml_pid, ocaml_signal); caddr_t addr ; int sig ; int rc ; addr = (caddr_t) 0; sig = Int_val (ocaml_signal); rc = ptrace (PT_CONTINUE, Int_val (ocaml_pid), addr, convert_signal_number (sig)); if (rc) { printf ("errno: %d\n", errno); caml_failwith ("libptrace cont returned non zero code") ; }; CAMLreturn (Val_unit) ; }