summaryrefslogtreecommitdiff
path: root/proc/notify.c
diff options
context:
space:
mode:
Diffstat (limited to 'proc/notify.c')
-rw-r--r--proc/notify.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/proc/notify.c b/proc/notify.c
index 5a112b07..b6731ae5 100644
--- a/proc/notify.c
+++ b/proc/notify.c
@@ -36,33 +36,33 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
message ports die. Both notifications get sent to the process
port. */
kern_return_t
-do_mach_notify_dead_name (mach_port_t notify,
+do_mach_notify_dead_name (struct port_info *pi,
mach_port_t deadport)
{
struct proc *p;
- if (notify == generic_port)
+ if (pi->port_right == generic_port)
{
check_dead_execdata_notify (deadport);
mach_port_deallocate (mach_task_self (), deadport);
return 0;
}
- p = ports_lookup_port (proc_bucket, notify, proc_class);
+ p = (struct proc *) pi;
- if (!p)
+ if (!p
+ || p->p_pi.bucket != proc_bucket
+ || p->p_pi.class != proc_class)
return EOPNOTSUPP;
if (p->p_task == deadport)
{
process_has_exited (p);
- ports_port_deref (p);
mach_port_deallocate (mach_task_self (), deadport);
return 0;
}
else
{
- ports_port_deref (p);
return EINVAL;
}
}
@@ -70,35 +70,35 @@ do_mach_notify_dead_name (mach_port_t notify,
/* We get no-senders notifications on exception ports that we
handle through proc_handle_exceptions. */
kern_return_t
-do_mach_notify_no_senders (mach_port_t notify,
+do_mach_notify_no_senders (struct port_info *pi,
mach_port_mscount_t mscount)
{
- return ports_do_mach_notify_no_senders (notify, mscount);
+ return ports_do_mach_notify_no_senders (pi, mscount);
}
kern_return_t
-do_mach_notify_port_deleted (mach_port_t notify,
+do_mach_notify_port_deleted (struct port_info *pi,
mach_port_t name)
{
return 0;
}
kern_return_t
-do_mach_notify_msg_accepted (mach_port_t notify,
+do_mach_notify_msg_accepted (struct port_info *pi,
mach_port_t name)
{
return 0;
}
kern_return_t
-do_mach_notify_port_destroyed (mach_port_t notify,
+do_mach_notify_port_destroyed (struct port_info *pi,
mach_port_t name)
{
return 0;
}
kern_return_t
-do_mach_notify_send_once (mach_port_t notify)
+do_mach_notify_send_once (struct port_info *pi)
{
return 0;
}