net/tls: enable sk_msg redirect to tls socket egress
authorWillem de Bruijn <willemb@google.com>
Mon, 18 Nov 2019 15:40:51 +0000 (10:40 -0500)
committerDavid S. Miller <davem@davemloft.net>
Tue, 19 Nov 2019 23:03:02 +0000 (15:03 -0800)
commitd4ffb02dee2fcb20e0c8086a8d1305bf885820bb
tree13860fc65238986228ef7e1fc98bf6cc707db7c8
parentdb96c2cb4870173ea9b08df130f1d1cc9b5dd53d
net/tls: enable sk_msg redirect to tls socket egress

Bring back tls_sw_sendpage_locked. sk_msg redirection into a socket
with TLS_TX takes the following path:

  tcp_bpf_sendmsg_redir
    tcp_bpf_push_locked
      tcp_bpf_push
        kernel_sendpage_locked
          sock->ops->sendpage_locked

Also update the flags test in tls_sw_sendpage_locked to allow flag
MSG_NO_SHARED_FRAGS. bpf_tcp_sendmsg sets this.

Link: https://lore.kernel.org/netdev/CA+FuTSdaAawmZ2N8nfDDKu3XLpXBbMtcCT0q4FntDD2gn8ASUw@mail.gmail.com/T/#t
Link: https://github.com/wdebruij/kerneltools/commits/icept.2
Fixes: 0608c69c9a80 ("bpf: sk_msg, sock{map|hash} redirect through ULP")
Fixes: f3de19af0f5b ("Revert \"net/tls: remove unused function tls_sw_sendpage_locked\"")
Signed-off-by: Willem de Bruijn <willemb@google.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/tls.h
net/tls/tls_main.c
net/tls/tls_sw.c