Correct the return value of BIO_get_ktls_*().
authorJohn Baldwin <jhb@FreeBSD.org>
Fri, 29 Jan 2021 18:34:49 +0000 (10:34 -0800)
committerTomas Mraz <tomas@openssl.org>
Fri, 19 Feb 2021 17:04:35 +0000 (18:04 +0100)
BIO_get_ktls_send() and BIO_get_ktls_recv() are documented as
returning either 0 or 1.  However, they were actually returning the
internal value of the associated BIO flag for the true case instead of
1.

Also trim redundant ternary operators.

Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14023)

crypto/bio/bss_conn.c
crypto/bio/bss_fd.c
crypto/bio/bss_sock.c

index c7bd0a329fea514fc9cc777715e1ca98b2c7dee9..5b0a69486b00ad636a15949d798d49fc91e245e4 100644 (file)
@@ -536,7 +536,7 @@ static long conn_ctrl(BIO *b, int cmd, long num, void *ptr)
         }
         break;
     case BIO_CTRL_EOF:
-        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0 ? 1 : 0;
+        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0;
         break;
 # ifndef OPENSSL_NO_KTLS
     case BIO_CTRL_SET_KTLS:
@@ -546,9 +546,9 @@ static long conn_ctrl(BIO *b, int cmd, long num, void *ptr)
             BIO_set_ktls_flag(b, num);
         break;
     case BIO_CTRL_GET_KTLS_SEND:
-        return BIO_should_ktls_flag(b, 1);
+        return BIO_should_ktls_flag(b, 1) != 0;
     case BIO_CTRL_GET_KTLS_RECV:
-        return BIO_should_ktls_flag(b, 0);
+        return BIO_should_ktls_flag(b, 0) != 0;
     case BIO_CTRL_SET_KTLS_TX_SEND_CTRL_MSG:
         BIO_set_ktls_ctrl_msg_flag(b);
         data->record_type = num;
index e1cb62d80c589aef19070d6b2bfb478632fee262..f0498a0969c7d03a0858b9e0a7d0bedb11b5bb2a 100644 (file)
@@ -189,7 +189,7 @@ static long fd_ctrl(BIO *b, int cmd, long num, void *ptr)
         ret = 1;
         break;
     case BIO_CTRL_EOF:
-        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0 ? 1 : 0;
+        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0;
         break;
     default:
         ret = 0;
index d3eaa6b19e23f5ff3cec31b67f36dca15e4f0a5a..11a020d8dca038332133a7869d0ac23bfd9079f1 100644 (file)
@@ -191,9 +191,9 @@ static long sock_ctrl(BIO *b, int cmd, long num, void *ptr)
             BIO_set_ktls_flag(b, num);
         break;
     case BIO_CTRL_GET_KTLS_SEND:
-        return BIO_should_ktls_flag(b, 1);
+        return BIO_should_ktls_flag(b, 1) != 0;
     case BIO_CTRL_GET_KTLS_RECV:
-        return BIO_should_ktls_flag(b, 0);
+        return BIO_should_ktls_flag(b, 0) != 0;
     case BIO_CTRL_SET_KTLS_TX_SEND_CTRL_MSG:
         BIO_set_ktls_ctrl_msg_flag(b);
         b->ptr = (void *)num;
@@ -205,7 +205,7 @@ static long sock_ctrl(BIO *b, int cmd, long num, void *ptr)
         break;
 # endif
     case BIO_CTRL_EOF:
-        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0 ? 1 : 0;
+        ret = (b->flags & BIO_FLAGS_IN_EOF) != 0;
         break;
     default:
         ret = 0;