#include <hurd.h>
#include <argp.h>
#include <error.h>

int main(int argc, char* argv[])
{
  printf("Hello world probe\n");
  printf("Mach arm probe: %x\n", mach_arm_probe);

  host_t host = mach_host_self();
  int status, probe;

  char* str = "mach_host_self";
  int ret = mach_arm_probe(host, 0, (int)str, 0, 0, &probe, &status);

  printf("Done mach probe s:%x r:%x p:%x\n", status, ret, probe);
  printf("Sleeping\n");

  int size = 0;
  mach_wait_probe(host, probe, NULL, &size, &status);
  printf("I awoke [1] %d\n", status);

  size = 0;
  mach_wait_probe(host, probe, NULL, &size, &status);
  printf("I awoke [2] %d\n", status);

  mach_disarm_probe(host,probe);

  printf("Bye\n");

  return 0;
}
