diff options
author | Dave Watson <davejwatson@fb.com> | 2017-06-14 11:37:14 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-06-15 12:12:40 -0400 |
commit | 734942cc4ea6478eed125af258da1bdbb4afe578 (patch) | |
tree | a6b0b27cb551055a7c5d5756c40d737543323df1 /net/ipv4/Makefile | |
parent | 206f60e1451b4b90cb7f3a803d1c440602a458e0 (diff) | |
download | linux-734942cc4ea6478eed125af258da1bdbb4afe578.tar.gz linux-734942cc4ea6478eed125af258da1bdbb4afe578.tar.bz2 linux-734942cc4ea6478eed125af258da1bdbb4afe578.zip |
tcp: ULP infrastructure
Add the infrustructure for attaching Upper Layer Protocols (ULPs) over TCP
sockets. Based on a similar infrastructure in tcp_cong. The idea is that any
ULP can add its own logic by changing the TCP proto_ops structure to its own
methods.
Example usage:
setsockopt(sock, SOL_TCP, TCP_ULP, "tls", sizeof("tls"));
modules will call:
tcp_register_ulp(&tcp_tls_ulp_ops);
to register/unregister their ulp, with an init function and name.
A list of registered ulps will be returned by tcp_get_available_ulp, which is
hooked up to /proc. Example:
$ cat /proc/sys/net/ipv4/tcp_available_ulp
tls
There is currently no functionality to remove or chain ULPs, but
it should be possible to add these in the future if needed.
Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Dave Watson <davejwatson@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/Makefile')
-rw-r--r-- | net/ipv4/Makefile | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/Makefile b/net/ipv4/Makefile index f83de23a30e7..afcb435adfbe 100644 --- a/net/ipv4/Makefile +++ b/net/ipv4/Makefile @@ -8,7 +8,7 @@ obj-y := route.o inetpeer.o protocol.o \ inet_timewait_sock.o inet_connection_sock.o \ tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \ tcp_minisocks.o tcp_cong.o tcp_metrics.o tcp_fastopen.o \ - tcp_rate.o tcp_recovery.o \ + tcp_rate.o tcp_recovery.o tcp_ulp.o \ tcp_offload.o datagram.o raw.o udp.o udplite.o \ udp_offload.o arp.o icmp.o devinet.o af_inet.o igmp.o \ fib_frontend.o fib_semantics.o fib_trie.o fib_notifier.o \ |