Changes between Version 21 and Version 22 of GuiRpcProtocol


Ignore:
Timestamp:
Sep 9, 2008, 9:33:52 AM (16 years ago)
Author:
Nicolas
Comment:

clean mess :)

Legend:

Unmodified
Added
Removed
Modified
  • GuiRpcProtocol

    v21 v22  
    1010The protocol is based on XML, and it's strictly request-reply. The client sends requests to the server, and waits for a reply; the server never sends anything without getting a request from the client first. Both requests and replies are terminated with the control character `0x03`.
    1111
    12 Requests are inside `<boinc_gui_rpc_request>` elements, and replies from the RPC server are inside `<boinc_gui_rpc_reply>` elements (in both cases there is a `0x03` byte after the closing tag). The current RPC server implementation doesn't require the `<boinc_gui_rpc_request>` tag, which is handy for debugging (you can connect via [http://netcat.sourceforge.net/ netcat] and just type `<auth1/>`); however,
    13 >>> clients must not rely on this, and must always send the __`<boinc_gui_rpc_request>`__ root tag.
    14 >>Ought this to be read as "''must always send the __`<boinc_gui_rpc_reply>`__ root tag''"?
    15 >Nope. I'm talking of RPC clients (which make __requests__), such as BOINCView or the official manager. See second paragraph of this page :)
    16 Thanks for clarification (I've missed the trailing ''s'' in client''s'' and thought of BCC), so you can clean my mess up :-) Maybe write at least once "''...however, RPC clients must not rely on this...''"? Although, with your next change from ''core client'' to ''RPC server'' it should not be necessary anymore.
    17 
     12Requests are inside `<boinc_gui_rpc_request>` elements, and replies from the RPC server are inside `<boinc_gui_rpc_reply>` elements (in both cases there is a `0x03` byte after the closing tag). The current RPC server implementation doesn't require the `<boinc_gui_rpc_request>` tag, which is handy for debugging (you can connect via [http://netcat.sourceforge.net/ netcat] and just type `<auth1/>`); however, clients must not rely on this, and must always send the `<boinc_gui_rpc_request>` root tag.
    1813
    1914The current RPC server doesn't support pipelining of requests (pipelining means sending a batch of multiple requests without waiting for a reply, then getting all the replies together; this improves latency). For compatibility, pipelining must not be used.