diff options
author | Florin Coras <fcoras@cisco.com> | 2020-03-13 04:44:51 +0000 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2020-03-25 18:56:27 +0000 |
commit | 07063b8ea39b05d5d7bb00ad2a2363b11792c571 (patch) | |
tree | 2df1cd5b5df869c729f534f093dea664eb059f3a /src/vnet/session/transport.h | |
parent | 4e783b9c901cf90e58c3f921bb17170ab23e540a (diff) |
session: api to add new transport types
Type: feature
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: If4dee6dba1ea942daa921d566b35cdecdda680ee
Diffstat (limited to 'src/vnet/session/transport.h')
-rw-r--r-- | src/vnet/session/transport.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/vnet/session/transport.h b/src/vnet/session/transport.h index 3c4e15a9a6b..e5c09cd767d 100644 --- a/src/vnet/session/transport.h +++ b/src/vnet/session/transport.h @@ -27,6 +27,8 @@ typedef struct _transport_options_t { + char *name; + char *short_name; transport_tx_fn_type_t tx_type; transport_service_type_t service_type; u8 half_open_has_fifos; @@ -195,9 +197,21 @@ transport_connection_deschedule (transport_connection_t * tc) void transport_connection_reschedule (transport_connection_t * tc); +/** + * Register transport virtual function table. + * + * @param transport_proto - transport protocol type (i.e., TCP, UDP ..) + * @param vft - virtual function table for transport proto + * @param fib_proto - network layer protocol + * @param output_node - output node index that session layer will hand off + * buffers to, for requested fib proto + */ void transport_register_protocol (transport_proto_t transport_proto, const transport_proto_vft_t * vft, fib_protocol_t fib_proto, u32 output_node); +transport_proto_t +transport_register_new_protocol (const transport_proto_vft_t * vft, + fib_protocol_t fib_proto, u32 output_node); transport_proto_vft_t *transport_protocol_get_vft (transport_proto_t tp); void transport_update_time (clib_time_type_t time_now, u8 thread_index); |