Re: [PATCH v2 net-next] net/tls: allow MSG_CMSG_COMPAT in sendmsg

From: Jakub Kicinski
Date: Thu Aug 06 2020 - 14:47:02 EST


On Thu, 6 Aug 2020 08:49:06 +0200 Rouven Czerwinski wrote:
> Trying to use ktls on a system with 32-bit userspace and 64-bit kernel
> results in a EOPNOTSUPP message during sendmsg:
>
> setsockopt(3, SOL_TLS, TLS_TX, …, 40) = 0
> sendmsg(3, …, msg_flags=0}, 0) = -1 EOPNOTSUPP (Operation not supported)
>
> The tls_sw implementation does strict flag checking and does not allow
> the MSG_CMSG_COMPAT flag, which is set if the message comes in through
> the compat syscall.
>
> This patch adds MSG_CMSG_COMPAT to the flag check to allow the usage of
> the TLS SW implementation on systems using the compat syscall path.
>
> Note that the same check is present in the sendmsg path for the TLS
> device implementation, however the flag hasn't been added there for lack
> of testing hardware.
>
> Signed-off-by: Rouven Czerwinski <r.czerwinski@xxxxxxxxxxxxxx>

I don't know much about the compat stuff, I trust our cmsg handling is
fine?

Just to be sure - did you run tools/testing/selftests/net/tls ?