The Function Code contains a unique value, defining the message type. This is combined with a set of modifier flags that provide for minor expansions to the "pure" set of commands.
The least significant 5 bits of the Function Code contains the command code. This gives a set of 32 possible commands. Command code 0 is, defensively, not used, giving a total of 31 commands, of which only five are defined:
|
Code Name |
Value |
Meaning |
|
#FNF_PING |
1 |
Ping packet. No message. |
|
#FNF_ACK |
2 |
Acknowledgement of an #FNF_RPC. No message. |
|
#FNF_SESSION |
3 |
Session management table in message. |
|
#FNF_RPC |
4 |
RPC in message. |
|
#FNF_ RPCMULTI |
5 |
Multiple RPCs in message. |
The most significant 3 bits contain modifier flags. These
flags are command specific and are presently only defined for
FNF_RPC:
|
Flag Name |
Value |
Meaning |
|
#FNF_FLAG_RESERVED |
32 |
Reserved for future use. |
|
#FNF_FLAG_FIRST |
64 |
First fragment of a fragmented RPC. |
|
#FNF_FLAG_NEXT |
128 |
Subsequent fragment of a fragmented RPC |