Implemented part of the initial handshake with gdb client. For this we need to send a packet to gdb claiming that we are stopped with a signal. Other changes include placeholder code for processes (CoreFileProtocol), threads (CoreThreadProtocol) and registers (CoreRegisterContext). With this change gdb receives the thread and process id from the server. For example, if we turn on packet debugging in the client with 'set debug remote 1', we can see this:
[remote] Sending packet: $?#3f
[remote] Packet received: T0bthread:p30d3d2.30d3d2;
[remote] Sending packet: $qfThreadInfo#bb
[remote] Packet received: mp30d3d2.30d3d2
[remote] Sending packet: $qsThreadInfo#c8
[remote] Packet received: l
[remote] Sending packet: $qAttached:30d3d2#59
[remote] Packet received:
[remote] packet_ok: Packet qAttached (query-attached) is NOT supported
warning: No executable has been specified and target does not support
determining executable automatically. Try using the "file" command.
[remote] Sending packet: $Hc-1#09
[remote] Packet received: Eff
[remote] wait: enter
[remote] wait: exit
[remote] Sending packet: $g#67
[remote] Packet received: E15
The client doesn't get the correct response for the 'g' packet, and so it bails at this point. I verified that the pid+tid combo we get in the client is the correct one retrieved from the corefile.
Description
Implemented part of the initial handshake with gdb client. For this we need to send a packet to gdb claiming that we are stopped with a signal. Other changes include placeholder code for processes (CoreFileProtocol), threads (CoreThreadProtocol) and registers (CoreRegisterContext). With this change gdb receives the thread and process id from the server. For example, if we turn on packet debugging in the client with 'set debug remote 1', we can see this:
[remote] Sending packet: $?#3f [remote] Packet received: T0bthread:p30d3d2.30d3d2; [remote] Sending packet: $qfThreadInfo#bb [remote] Packet received: mp30d3d2.30d3d2 [remote] Sending packet: $qsThreadInfo#c8 [remote] Packet received: l [remote] Sending packet: $qAttached:30d3d2#59 [remote] Packet received: [remote] packet_ok: Packet qAttached (query-attached) is NOT supported warning: No executable has been specified and target does not support determining executable automatically. Try using the "file" command. [remote] Sending packet: $Hc-1#09 [remote] Packet received: Eff [remote] wait: enter [remote] wait: exit [remote] Sending packet: $g#67 [remote] Packet received: E15
The client doesn't get the correct response for the 'g' packet, and so it bails at this point. I verified that the pid+tid combo we get in the client is the correct one retrieved from the corefile.
Type of Change
Checklist