This is the mail archive of the gdb-patches@sourceware.cygnus.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: RFA: Deprecate remote protocol sequence-ID


Steven Johnson wrote:
> 
> Andrew Cagney wrote:
> >
> > I'd like to put forward the proposal that the sequence-id:
> >
> > $sequence-id:packet-data#checksum
> >
> > be clearly deprecated.
> 
> I would actually prefer to see it properly defined to secure up
> communications between
> the target and GDB. (Obviously it would be selectable)

I agree that there should be a properly defined mechanism for reliably
transfering packets, just not this one as it affects the contents of a
packet.  The good old theory of a clear separation of layers :-)

I think a simple reliable separate transport layer is needed.  I'd even
go as far as a new packet wrapper (replacing $...#NN and +-).

> Can you give an example of how it restricts packet contents, other than
> having a colon as the third character in the packet.

That, to me is sufficient.

> A Target i'm writing can use them and seem to work fine? Although Ive
> had to make some interpretations in implementation because they are not well
> defined.

That ``not well defined'' bit is my problem.  GDB can't rely on what a
target will do with a sequence-id because it is not well defined.  The
target might discard the packet.  The target might reply with the
contents from the last output buffer, the target might even just repeat
the operation (oops :-).

> Further if the Colon at position 3 is a problem, then don't use it. It
> seems to me
> that a function code of '0'-'9' is not used, so it would be easy to
> detect these functions
> and say 'Now using sequence-id' must check colon for verification. (Also
> I check second character and it also must be 0-9.)

Interesting idea.  None of the targets I know do this.

	Andrew

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]