Compiling tls.c on macoS (17.0/arm) yields the following warnings which I assume are errors:
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:1769:18: warning: variable 'abort' set but not used [-Wunused-but-set-variable]
1769 | int off = 0, abort = 0;
| ^
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2222:11: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]
2222 | if (mode && SSL_VERIFY_FAIL_IF_NO_PEER_CERT) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2222:11: note: use '&' for a bitwise operation
2222 | if (mode && SSL_VERIFY_FAIL_IF_NO_PEER_CERT) {
| ^~
| &
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2222:11: note: remove constant to silence this warning
2222 | if (mode && SSL_VERIFY_FAIL_IF_NO_PEER_CERT) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2225:11: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]
2225 | if (mode && SSL_VERIFY_CLIENT_ONCE) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2225:11: note: use '&' for a bitwise operation
2225 | if (mode && SSL_VERIFY_CLIENT_ONCE) {
| ^~
| &
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2225:11: note: remove constant to silence this warning
2225 | if (mode && SSL_VERIFY_CLIENT_ONCE) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2228:11: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]
2228 | if (mode && SSL_VERIFY_POST_HANDSHAKE) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2228:11: note: use '&' for a bitwise operation
2228 | if (mode && SSL_VERIFY_POST_HANDSHAKE) {
| ^~
| &
/opt/projects/prs/g481/src/tcltls-1505883e4a/generic/tls.c:2228:11: note: remove constant to silence this warning
2228 | if (mode && SSL_VERIFY_POST_HANDSHAKE) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 warnings generated.
Fix:
Change the '&&' into '&' since the openssl function returns an int containing a bitmask. I am not converned about the unused variable
abort
. I applied this modificationlocally and everything seems to work correctly.