This allows one to rpctrace processes doing select(2).

* utils/rpctrace.c (trace_and_forward): Handle MACH_MSG_TYPE_PORT_SEND
rights.
---
 utils/rpctrace.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/utils/rpctrace.c b/utils/rpctrace.c
index 5d3b2ca..b39b2e3 100644
--- a/utils/rpctrace.c
+++ b/utils/rpctrace.c
@@ -1286,6 +1286,10 @@ trace_and_forward (mach_msg_header_t *inp, 
mach_msg_header_t *outp)
       {
        switch (reply_type)
          {
+         case MACH_MSG_TYPE_PORT_SEND:
+           rewrite_right (&inp->msgh_local_port, &reply_type, NULL);
+           break;
+
          case MACH_MSG_TYPE_PORT_SEND_ONCE:;
            struct send_once_info *info;
            info = new_send_once_wrapper (inp->msgh_local_port,
-- 
1.7.10.4


Reply via email to