*
* tunnel_create GNUNET_MESH_TunnelMessage
* tunnel_destroy GNUNET_MESH_TunnelMessage
+ * tunnel_speed_max GNUNET_MESH_TunnelMessage
+ * tunnel_speed_min GNUNET_MESH_TunnelMessage
+ * tunnel_buffer GNUNET_MESH_TunnelMessage
*
* peer_request_connect_add GNUNET_MESH_PeerControl
* peer_request_connect_del GNUNET_MESH_PeerControl
* peer_request_connect_by_type GNUNET_MESH_ConnectPeerByType
+ * peer_request_connect_by_string GNUNET_MESH_ConnectPeerByString
+ *
+ * peer_blacklist GNUNET_MESH_PeerControl
+ * peer_unblacklist GNUNET_MESH_PeerControl
*
- * notify_transmit_ready *GNUNET_MESH_TransmitReady?*
+ * notify_transmit_ready None (queue / GNUNET_CLIENT_ntf_tmt_rdy)
* notify_transmit_ready_cancel None (clear of internal data structures)
*
- *
- *
+ *
* EVENT MESSAGE USED
* ----- ------------
- * data GNUNET_MESH_Data OR
- * GNUNET_MESH_DataBroadcast
+ * data GNUNET_MESH_Unicast OR
+ * GNUNET_MESH_Multicast OR
+ * GNUNET_MESH_ToOrigin
+ * data ack GNUNET_MESH_LocalAck
+ *
* new incoming tunnel GNUNET_MESH_PeerControl
* peer connects to a tunnel GNUNET_MESH_PeerControl
* peer disconnects from a tunnel GNUNET_MESH_PeerControl
struct GNUNET_MessageHeader header;
uint16_t applications GNUNET_PACKED;
uint16_t types GNUNET_PACKED;
- /* uint16_t list_apps[applications] */
+ /* uint32_t list_apps[applications] */
/* uint16_t list_types[types] */
};
* Peer at the other end, if any
*/
struct GNUNET_PeerIdentity peer;
+
+ /**
+ * Tunnel options (speed, buffering)
+ */
+ uint32_t opt;
+};
+
+/**
+ * Message for announce of regular expressions.
+ */
+struct GNUNET_MESH_RegexAnnounce
+{
+ /**
+ * Type: GNUNET_MESSAGE_TYPE_MESH_LOCAL_ANNOUNCE_REGEX
+ *
+ * Size: sizeof(struct GNUNET_MESH_RegexAnnounce) + strlen (regex)
+ */
+ struct GNUNET_MessageHeader header;
+
+ /**
+ * How many characters do we want to put in an edge label.
+ */
+ uint16_t compression_characters;
+
+ /* regex */
};
+
/**
* Message for:
* - request adding and deleting peers from a tunnel