NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/53800: ptrace crashes



The following reply was made to PR kern/53800; it has been noted by GNATS.

From: christos%zoulas.com@localhost (Christos Zoulas)
To: gnats-bugs%NetBSD.org@localhost, kern-bug-people%netbsd.org@localhost, 
	gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost, coypu%sdf.org@localhost
Cc: 
Subject: Re: kern/53800: ptrace crashes
Date: Wed, 19 Dec 2018 10:50:44 -0500

 On Dec 19,  5:40am, coypu%sdf.org@localhost (coypu%sdf.org@localhost) wrote:
 -- Subject: Re: kern/53800: ptrace crashes
 
 | The following reply was made to PR kern/53800; it has been noted by GNATS.
 | 
 | From: coypu%sdf.org@localhost
 | To: gnats-bugs%NetBSD.org@localhost
 | Cc: 
 | Subject: Re: kern/53800: ptrace crashes
 | Date: Wed, 19 Dec 2018 05:38:50 +0000
 | 
 |  Looks like the problem is commented:
 |  
 |          case PT_ATTACH:
 |                  /*
 |                   * Go ahead and set the trace flag.
 |                   * Save the old parent (it's reset in
 |                   *   _DETACH, and also in kern_exit.c:wait4()
 |                   * Reparent the process so that the tracing
 |                   *   proc gets to see all the action.
 |  
 |  
 |  But it is not reset in _DETACH.
 
 Nope, it is reset in PT_DETACH. In fact the code works as documented...
 It crashes because the code jumps to 0. Since PT_DETACH works like
 PT_CONTINUE, passing NULL as the 3rd argument to ptrace will do that :-)
 Try passing (void *)1 and it will work. Arguably this is not a very
 useful or expected feature, but I don't think that changing it is
 wise...
 
 christos
 


Home | Main Index | Thread Index | Old Index