[Xorp-hackers] [PATCH] Supporting asynchronous method implementations

Steven Simpson ss at comp.lancs.ac.uk
Thu Mar 17 06:38:47 PDT 2011


Hi again,

I incorporated changes from the previous patch, as I've undone bits of
it.  I hope that's acceptable, but I can still provide individual
commits if necessary, of course.

On 17/03/11 12:58, ss at comp.lancs.ac.uk wrote:
> From: Steven Simpson <ss at comp.lancs.ac.uk>
[snip changes incorporated from earlier patch on 2011-03-11]
> * STCP changed from using list of RequestStates in seqno order to
>   map indexed by seqno.  This allows responses to return
>   out-of-order, which is possible if a server implements a method
>   asynchronously.

I believe that that's the last change necessary to make it work.  I did
[scons check] on both sync and async versions, and got the same set of
successes and failures as before.  (It's always test26, test28_ipv6 and
test28_ipv6_ok that fail, two of each, at the start.)

I undid the friendliness of FinderClient to XrlError, when I realised
that the async version was relaying the error code, while the sync
version just discards it.

The macros are now all-caps, plus I paranoically made even the sync
versions use [do while(0)] to form a statement, just in case there are
places that [return X] can be used where [do while(0)] cannot, or vice
versa.

Cheers,

Steven

-- 




More information about the Xorp-hackers mailing list