[PATCH] net/tls: Fix return values for setsockopt

Jeffrey Walton noloader at gmail.com
Sat Nov 30 08:15:56 EST 2019


On Sat, Nov 30, 2019 at 7:55 AM Valentin Vidic
<vvidic at valentin-vidic.from.hr> wrote:
>
> ENOTSUPP is not available in userspace:
>
>   setsockopt failed, 524, Unknown error 524
>
> Signed-off-by: Valentin Vidic <vvidic at valentin-vidic.from.hr>
> ---
>  net/tls/tls_main.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/tls/tls_main.c b/net/tls/tls_main.c
> index bdca31ffe6da..5830b8e02a36 100644
> --- a/net/tls/tls_main.c
> +++ b/net/tls/tls_main.c
> @@ -496,7 +496,7 @@ static int do_tls_setsockopt_conf(struct sock *sk, char __user *optval,
>         /* check version */
>         if (crypto_info->version != TLS_1_2_VERSION &&
>             crypto_info->version != TLS_1_3_VERSION) {
> -               rc = -ENOTSUPP;
> +               rc = -EINVAL;
>                 goto err_crypto_info;
>         }

A quick comment... ENOTSUP is available in <errno.h> [0] if you want
to stay in the "not supported" path.

When searching for "Unknown error 524", I read another kernel module
switched to EOPNOTSUPP [1] According to [2], EOPNOTSUPP is not as bad
because there is a userland message.

Personally, I am mostly indifferent.

[0] http://man7.org/linux/man-pages/man3/errno.3.html
[1] https://lkml.org/lkml/2019/5/16/883
[2] https://patchwork.ozlabs.org/patch/309627/

Jeff



More information about the Kernelnewbies mailing list