Changes between Version 15 and Version 16 of GuiRpcProtocol
- Timestamp:
- Sep 9, 2008, 8:29:58 AM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GuiRpcProtocol
v15 v16 43 43 </boinc_gui_rpc_reply> 44 44 }}} 45 A notable error message is "unrecognized op", which is returned if the server doesn't recognize a command. The client must be prepared to receive this even in reply to commands documented here, because older core client versions may not support all of them. In fact, it's more reliable to just send a command and fallback to an alternative if "unrecognized op" is returned, than to look at the version number to know what is supported. 45 Clients should not try to parse the error message. The current gui_rpc_client.C library sometimes tries to parse errors, but this is very unreliable, since the message wording can change (and has changed) between RPC server versions. (r15942 even changed "unrecognized op") 46 46 47 47 == Common XML elements == 48 There are some XML elements (like {{{<project>}}}, {{{<result>}}}, {{{<workunit>}}}, and {{{<app>}}}) that are common to many command replies. Such elements are documented in this section.48 There are some XML elements (like {{{<project>}}}, {{{<result>}}}, {{{<workunit>}}}, and {{{<app>}}}) that are common to many command replies. Such elements ~~are~~ will be documented in this section. 49 49 50 50 The XML responses are relatively flat, and are parsed in one pass. The relationship between XML elements is determined by what was parsed before it, instead of based on the tree hierarchy like other XML formats do. For example, {{{<result>}}} elements that come ''after'' a particular {{{<project>}}} element are results that belong to that project; instead of those results being ''inside'' the {{{<project>}}} element. … … 81 81 The reply will be either {{{<authorized/>}}} or {{{<unauthorized/>}}}. 82 82 83 If the client hasn't authenticated yet, and it is connecting remotely (ie. not via localhost), {{{<auth1/>}}} is the only command that can be sent, and all the rest will return <unauthorized/>.83 If the client hasn't authenticated yet, and it is connecting remotely (ie. not via localhost), {{{<auth1/>}}} is the only command that can be sent, and all the rest will return {{{<unauthorized/>}}}.