Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The error code is a 32-bit unsigned integer formatted as a hexadecimal string. Synchronous error replies always will have a request ID returned. Asynchronous error replies only will return a request ID if the reply is associated with an asynchronous request. Optionally, all commands immediately return an acknowledgment reply. If the Acks option is turned on, the client receives an immediate reply "@ReqID;OK;" followed by the command that was recognized.

The API Sets

There are two are four API sets available in the Fairmount SSH Server: the Fairmount Network Data Access (FANDA) APIs, the Design Pad APIs, the Configuration APIs, and the Configuration internal use APIs.

Access to API sets may be limited based on authentication credentials. The GetCaps command provides a mechanism to determine the capabilities of the current connection.

...

The current max-capability response is

Panel

@ReqID;Caps=7F,03

GetCapsAsync

Panel

GetCapsAsync

...

SetCaps

Panel

SetCaps,HexByteList

...

The bytes in HexByteList have the same format as a GetCaps response. The connection's current capabilities are masked with the capabilities given in this command. After this command completes, the connection's capabilities are reduced to the intersection of the two sets.

...

GetNDL

Panel

SetCapsAsync,HexByteList

This is an asynchronous version of SetCaps. The format and effect is the same as the SetCaps command, but there is no response.

GetNDL

Panel

GetNDL

...

GetNDL

This command requests a download of the NDL string. Returns “@ReqID;NDL=xml string” or “@ReqID;Error=code;error message”. The format of xml string is documented elsewhere.

...

GetMulticastKey

Panel

GetNDLAsyncGetMulticastKey[,<MulticastID>]

This command is primarily for internal use. There is no synchronous response this command, but it will cause the NDL to be returned as an asynchronous message.

GetMulticastKey

Panel

GetMulticastKey[,<MulticastID>]

This command requests a download of the multicast encryption key(s). If a particular Multicast requests a download of the multicast encryption key(s). If a particular Multicast ID is not specified, all multicast keys are reported. Returns “@ReqID;MulticastKey=MulticastID,KeyGen,Base64KeyData,Base64NextKeyData” or “@ReqID;Error=code;error message”. If all multicast keys are requested, each key will be reported with a MulticastKey= response. KeyGen specifies the current key generation number in use, Base64KeyData is the current encryption key in use, and Base64NextKeyData is the next encryption key to be used after rekeying. The format of Base64KeyData and Base64NextKeyData is little-endian binary encryption key encoded as a Base64 string. The key cipher and length are described in the NDL.

...

GetVar

Panel

GetMulticastKeyAsync

This command is primarily for internal use. There is no synchronous response this command, but it will cause the multicast encryption keys to be returned as an asynchronous message.

GetVar

Panel

GetVar,VariableName
GetVar,VariableNameGetVar,VariableName
GetVar,VariableName.MemberName[.MemberName...]

...

A single FairNET packet may be split into multiple FANDA FairNET commands, and a single FANDA FairNET command may contain data from multiple FairNET packets.

Internal Use APIs 

GetCapsAsync

GetCapsAsync

It has no synchronous response, and causes the current caps to be sent as an asynchronous message.

SetCapsAsync

SetCapsAsync,HexByteList

This is an asynchronous version of SetCaps. The format and effect is the same as the SetCaps command, but there is no response.

GetNDLAsync

GetNDLAsync

There is no synchronous response this command, but it will cause the NDL to be returned as an asynchronous message.

GetMulticastKeyAsync

GetMulticastKeyAsync

There is no synchronous response this command, but it will cause the multicast encryption keys to be returned as an asynchronous message.

Change History

  • Changes in Protocol Version 1.4:
    • Add GetMulticastKey command.
    • Add MulticastKey async message.
  • Changes in Protocol Version 1.3:
    • Add Device ID to hello message.
    • Add GetCaps command.
    • Add Fairnet command.
    • Add Update command.
    • Add Lock and Unlock commands.
    • This update to the protocol is backwards-compatible with the 1.2 protocol. Existing 1.2 clients may use a 1.3 server.
  • Changes in Protocol Version 1.2:
    • Initial published version?