Minimum set of actions to support vCont

Simon Marchi simon.marchi@polymtl.ca
Tue Dec 11 17:01:00 GMT 2018


On 2018-11-23 05:16, Mathieu Tarral wrote:
> Hi,
> 
> I'm implementing the vCont packet in my stub,
> and so far, when I receive a vCont? packet, I reply with
> "vCont;c;s" since I support singlestep and continue.
> 
> This implementation works in radare2, but it doesn't work with GDB:
> Sending packet: $vCont?#49...Packet received: vCont;c;s
> Packet vCont (verbose-resume) is NOT supported
> 
> What is the minimal set of actions required to support
> vCont in GDB RSP ?
> 
> 
> Thanks.
> --
> Mathieu Tarral

Hi Mathieu,

Sorry for the late reply, but I thought it would be better than no reply 
at all.

I don't think there is a clear spec about that.  The implementation of 
GDB is the closest thing to a source of truth that you'll get.

In remote.c, in remote_target::remote_vcont_probe (), I see

       /* If c, and C are not all supported, we can't use vCont.  
Clearing
	 BUF will make packet_ok disable the packet.  */
       if (!support_c || !support_C)
	buf[0] = 0;

So I guess GDB wants you to support C (or claim you support C) in order 
to use vCont.

Simon



More information about the Gdb mailing list