summaryrefslogtreecommitdiff
path: root/node/Packet.hpp
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2013-07-27 16:20:08 -0400
committerAdam Ierymenko <adam.ierymenko@gmail.com>2013-07-27 16:20:08 -0400
commit7a17f6ca80e3df9e1509dc99d0acdd00f12686e0 (patch)
tree1ab3bb43f16047f79fcb66fb46143703912d63a1 /node/Packet.hpp
parentd35d322890a4a4c3ca85768ba2e16c47662c27c8 (diff)
downloadinfinitytier-7a17f6ca80e3df9e1509dc99d0acdd00f12686e0.tar.gz
infinitytier-7a17f6ca80e3df9e1509dc99d0acdd00f12686e0.zip
Add skeleton of certificate-based private network authentication. Also remove some old code.
Diffstat (limited to 'node/Packet.hpp')
-rw-r--r--node/Packet.hpp25
1 files changed, 23 insertions, 2 deletions
diff --git a/node/Packet.hpp b/node/Packet.hpp
index 5ccfae45..86d94e1d 100644
--- a/node/Packet.hpp
+++ b/node/Packet.hpp
@@ -463,7 +463,22 @@ public:
*
* No OK or ERROR is generated.
*/
- VERB_MULTICAST_FRAME = 9
+ VERB_MULTICAST_FRAME = 9,
+
+ /* Network permission certificate:
+ * <[8] 64-bit network ID>
+ * <[1] flags (currently unused, must be 0)>
+ * <[8] certificate timestamp>
+ * <[8] 16-bit length of signature>
+ * <[...] ECDSA signature of my binary serialized identity and timestamp>
+ *
+ * This message is used to send ahead of time a certificate proving
+ * this node has permission to communicate on a private network.
+ *
+ * OK is generated on acceptance. ERROR is returned on failure. In both
+ * cases the payload is the network ID.
+ */
+ VERB_NETWORK_PERMISSION_CERTIFICATE = 10
};
/**
@@ -490,7 +505,13 @@ public:
ERROR_IDENTITY_INVALID = 5,
/* Verb or use case not supported/enabled by this node */
- ERROR_UNSUPPORTED_OPERATION = 6
+ ERROR_UNSUPPORTED_OPERATION = 6,
+
+ /* Message to private network rejected -- no unexpired certificate on file */
+ ERROR_NO_NETWORK_CERTIFICATE_ON_FILE = 7,
+
+ /* Object is expired (e.g. network certificate) */
+ ERROR_OBJECT_EXPIRED = 8
};
/**