@@ -98,6 +98,7 @@ def __init__(self, name=None):
98
98
self .__secure = False
99
99
self .__cert_verified = False
100
100
self .__start_tls_hostname = None
101
+ self .__start_tls_completed = False
101
102
self .__host_verified = False
102
103
self ._event = None
103
104
self .__loop = None
@@ -2144,7 +2145,11 @@ def _process(self, data):
2144
2145
self .send_do (25 , buffer = True )
2145
2146
2146
2147
elif data [2 ] == 46 : # START_TLS
2147
- if not hasattr (self .__loop , "start_tls" ):
2148
+ if os .environ .get ("SESSION_SSL" ) == "NEVER" :
2149
+ self .__log_info ("START_TLS SESSION_SSL=NEVER." )
2150
+ self .send_wont (data [2 ], buffer = True )
2151
+
2152
+ elif not hasattr (self .__loop , "start_tls" ):
2148
2153
self ._log_warn ("START_TLS unsupported." )
2149
2154
self ._log_warn ("Python >= 3.7 required" )
2150
2155
self .send_wont (data [2 ], buffer = True )
@@ -4502,6 +4507,7 @@ async def __start_tls(self, context):
4502
4507
4503
4508
else :
4504
4509
self ._transport = transport
4510
+ self .__start_tls_completed = True
4505
4511
self .__secure = True
4506
4512
if context .verify_mode == ssl .CERT_REQUIRED :
4507
4513
self .__cert_verified = True
@@ -4764,6 +4770,12 @@ def secure(self):
4764
4770
"""
4765
4771
return self .__secure
4766
4772
4773
+ @property
4774
+ def start_tls_completed (self ):
4775
+ """Bool indicating if start_tls completed.
4776
+ """
4777
+ return self .__start_tls_completed
4778
+
4767
4779
@property
4768
4780
def tn3270 (self ):
4769
4781
"""Bool indicating if NOT NVT mode.
0 commit comments