Strip out old Service code, add new service message type.

This commit is contained in:
Adam Ierymenko 2015-01-05 11:47:22 -08:00
parent 95e303d6f3
commit 56cfe1d603
9 changed files with 37 additions and 535 deletions

View file

@ -55,7 +55,7 @@
* 3 - 0.5.0 ... 0.6.0
* * Yet another multicast redesign
* * New crypto completely changes key agreement cipher
* 4 - 0.6.0 ... 0.9.2
* 4 - 0.6.0 ... CURRENT
* * New identity format based on hashcash design
*
* This isn't going to change again for a long time unless your
@ -722,17 +722,7 @@ public:
*/
VERB_NETWORK_CONFIG_REQUEST = 11,
/* Network configuration refresh request:
* <[...] array of 64-bit network IDs>
*
* This message can be sent by the network configuration master node
* to request that nodes refresh their network configuration. It can
* thus be used to "push" updates so that network config changes will
* take effect quickly.
*
* It does not generate an OK or ERROR message, and is treated only as
* a hint to refresh now.
*/
/* DEPRECATED -- was never actually used */
VERB_NETWORK_CONFIG_REFRESH = 12,
/* Request endpoints for multicast distribution:
@ -812,7 +802,40 @@ public:
* <[6] multicast group MAC>
* <[4] 32-bit multicast group ADI>
*/
VERB_MULTICAST_FRAME = 14
VERB_MULTICAST_FRAME = 14,
/* Message or query to a service:
* <[8] 64-bit service identifier>
* <[1] flags>
* [<[...] payload to service>]
*
* Flags are currently unused and must be zero.
*
* Services allow out-of-band extensions to be added to the
* ZeroTier peer-to-peer network without having to mix them
* with the Ethernet virtualization layer. Right now this
* includes the network configuration (netconf) service, and
* in the future could include things like DHTs, caching,
* mesh net functionality, extensions to cryptographic or
* authentication services, remote administration, remote
* debugging, etc.
*
* Service identifiers less than or equal to 0xffff (65535)
* are reserved for use by ZeroTier Networks, with ID 0 being
* the netconf service that provisions and configures virtual
* networks. These IDs should not be used by third party
* developers. IDs above 65535 can be used, and should be
* assigned using something like a cryptographic random number
* generator to minimize the potential for collisions.
*
* OK responses to this message contain the same fields as
* above, and their meaning is service-dependent.
*
* ERROR_UNSUPPORTED_OPERATION may optionally be returned if
* the queried service ID is not available on this node.
* Payload consists of the 64-bit service ID queried.
*/
VERB_SERVICE_MESSAGE = 15
};
/**