scylladb / scylla-cqlsh

A fork of the cqlsh code
Apache License 2.0
16 stars 32 forks source link

cqlshlib/sslhandling: fix logic of `ssl_check_hostname` #87

Closed fruch closed 6 months ago

fruch commented 6 months ago

the logic was broken, and could lead to AttributeError, like the following:

E       AssertionError: Traceback (most recent call last):
E           File "/jenkins/workspace/scylla-master/gating-dtest-release/scylla/.ccm/scylla-repository/18591/share/cassandra/libexec/cqlsh.py", line 2723, in <module>
E             main(*read_options(sys.argv[1:], os.environ))
E           File "/jenkins/workspace/scylla-master/gating-dtest-release/scylla/.ccm/scylla-repository/18591/share/cassandra/libexec/cqlsh.py", line 2664, in main
E             shell = Shell(hostname,
E                     ^^^^^^^^^^^^^^^
E           File "/jenkins/workspace/scylla-master/gating-dtest-release/scylla/.ccm/scylla-repository/18591/share/cassandra/libexec/cqlsh.py", line 495, in __init__
E             kwargs['ssl_context'] = sslhandling.ssl_settings(hostname, CONFIG_FILE) if ssl else None
E                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E           File "/jenkins/workspace/scylla-master/gating-dtest-release/scylla/.ccm/scylla-repository/18591/share/cassandra/libexec/../pylib/cqlshlib/sslhandling.py", line 64, in ssl_settings
E             ssl_check_hostname = ssl_check_hostname is not None or ssl_check_hostname.lower() != 'false'
E                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^
E         AttributeError: 'NoneType' object has no attribute 'lower'