summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1994-03-22 22:11:43 +0000
committerMichael I. Bushnell <mib@gnu.org>1994-03-22 22:11:43 +0000
commitfa1781d25c85cdc790689bc2a0518c866deb7544 (patch)
tree2acc6d22a234b4601ebae3ad722ea42367f616d1
parent02f9f53d3c4c7b66c8cec2d4685059dfeb41e42b (diff)
Formerly notify.c.~2~
-rw-r--r--proc/notify.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/proc/notify.c b/proc/notify.c
index 664abe9e..1a478fe0 100644
--- a/proc/notify.c
+++ b/proc/notify.c
@@ -27,6 +27,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#include <sys/wait.h>
#include <signal.h>
#include <errno.h>
+#include <stdlib.h>
#include "proc.h"
#include "notify_S.h"
@@ -56,3 +57,50 @@ do_mach_notify_dead_name (mach_port_t notify,
else
return EINVAL;
}
+
+/* We get no-senders notifications on exception ports that we
+ handle through proc_handle_exceptions. */
+error_t
+do_mach_notify_no_senders (mach_port_t notify,
+ mach_port_mscount_t mscount)
+{
+ struct exc *e = exc_find (notify);
+ if (!e)
+ return EOPNOTSUPP;
+
+ remove_exc_from_hash (e);
+ mach_port_mod_refs (mach_task_self (), e->excport,
+ MACH_PORT_RIGHT_RECEIVE, -1);
+ mach_port_deallocate (mach_task_self (), e->forwardport);
+ if (e->replyport != MACH_PORT_NULL)
+ mach_port_deallocate (mach_task_self (), e->replyport);
+ free (e);
+ return 0;
+}
+
+error_t
+do_mach_notify_port_deleted (mach_port_t notify,
+ mach_port_t name)
+{
+ return 0;
+}
+
+error_t
+do_mach_notify_msg_accepted (mach_port_t notify,
+ mach_port_t name)
+{
+ return 0;
+}
+
+error_t
+do_mach_notify_port_destroyed (mach_port_t notify,
+ mach_port_t name)
+{
+ return 0;
+}
+
+error_t
+do_mach_notify_send_once (mach_port_t notify)
+{
+ return 0;
+}