minor optimizations
[util-vserver.git] / util-vserver / tests / getinitpid.c
index 1de298b..ea4f12b 100644 (file)
 
 int main(int argc, char *argv[])
 {
-  char         buf[32];
-  pid_t                pid;
+  char                 buf[sizeof(int)*3+2];
+  xid_t                        xid;
+  struct vc_vx_info    info;
   
-  if (argc==1) pid = vc_X_getinitpid(0);
-  else         pid = vc_X_getinitpid(atoi(argv[1]));
+  if (argc==1) xid = vc_get_task_xid(0);
+  else         xid = vc_get_task_xid(atoi(argv[1]));
 
-  utilvserver_int2str(buf, sizeof buf, pid, 10);
+  if (xid==VC_NOCTX) {
+    perror("vc_get_task_xid()");
+    return EXIT_FAILURE;
+  }
+
+  if (vc_get_vx_info(xid, &info)==-1) {
+    perror("vc_get_vx_info()");
+    return EXIT_FAILURE;
+  }
+
+  utilvserver_fmt_int(buf, info.initpid);
 
   WRITE_STR(1, buf);
   WRITE_MSG(1, "\n");