* $Source$
* $Header$
*/
+/* (c) Copyright 1988 by the Massachusetts Institute of Technology. */
+/* For copying and distribution information, please see the file */
+/* <mit-copyright.h>. */
#ifndef lint
static char *rcsid_exec_002_c = "$Header$";
#endif lint
+#include <mit-copyright.h>
#include <stdio.h>
+#include <sys/types.h>
#include <sys/wait.h>
#include <signal.h>
-#include "gdb.h"
+#include <gdb.h>
+#include <moira.h>
#include "update.h"
-#include "sms_update_int.h"
-#include "kludge.h"
-#include "smsu_int.h"
extern CONNECTION conn;
extern int code, errno;
exit(1);
return;
case 0:
+ sigsetmask(mask);
execlp(str, str, (char *)NULL);
n = errno;
sigsetmask(mask);
} while (n != -1 && n != pid);
sigsetmask(mask);
if (waitb.w_status) {
+ n = waitb.w_retcode + ERROR_TABLE_BASE_sms;
log_priority = log_ERROR;
- com_err(whoami, 0, "child exited with status %d", waitb.w_status);
+ com_err(whoami, n, " child exited with status %d", waitb.w_retcode);
code = send_object(conn, (char *)&n, INTEGER_T);
- if (code)
+ if (code) {
exit(1);
- }
- else {
+ }
+ } else {
code = send_ok();
if (code)
- exit(1);
+ exit(1);
}
}
}