Skip to content

Commit bdc6caa

Browse files
committed
commparams in tcp/tls server class.
1 parent 3af5ba7 commit bdc6caa

File tree

1 file changed

+20
-8
lines changed

1 file changed

+20
-8
lines changed

pymodbus/server/async_io.py

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
ModbusTlsFramer,
2121
)
2222
from pymodbus.transport.serial_asyncio import create_serial_connection
23-
from pymodbus.transport.transport import CommParams, Transport
23+
from pymodbus.transport.transport import CommParams, CommType, Transport
2424

2525

2626
with suppress(ImportError):
@@ -320,16 +320,20 @@ def __init__(
320320
:param response_manipulator: Callback method for manipulating the
321321
response
322322
"""
323-
super().__init__(
323+
params = kwargs.get(
324+
"internal_tls_setup",
324325
CommParams(
326+
comm_type=CommType.TCP,
325327
comm_name="server_listener",
326328
reconnect_delay=0.0,
327329
reconnect_delay_max=0.0,
328330
timeout_connect=0.0,
329331
),
332+
)
333+
super().__init__(
334+
params,
330335
True,
331336
)
332-
333337
self.local_active_connections = {}
334338
self.loop = kwargs.get("loop") or asyncio.get_event_loop()
335339
self.decoder = ServerDecoder()
@@ -354,9 +358,8 @@ def __init__(
354358
"reuse_address": True,
355359
"start_serving": True,
356360
}
357-
use_ssl = kwargs.get("internal_ssl", None)
358-
if use_ssl:
359-
self.factory_parms["ssl"] = use_ssl
361+
if params.sslctx:
362+
self.factory_parms["ssl"] = params.sslctx
360363
self.handle_local_echo = False
361364

362365
async def serve_forever(self):
@@ -451,8 +454,15 @@ def __init__(
451454
framer=framer,
452455
identity=identity,
453456
address=address,
454-
internal_ssl=CommParams.generate_ssl(
455-
True, certfile, keyfile, password, sslctx=sslctx
457+
internal_tls_setup=CommParams(
458+
comm_type=CommType.TLS,
459+
comm_name="server_listener",
460+
reconnect_delay=0.0,
461+
reconnect_delay_max=0.0,
462+
timeout_connect=0.0,
463+
sslctx=CommParams.generate_ssl(
464+
True, certfile, keyfile, password, sslctx=sslctx
465+
),
456466
),
457467
**kwargs,
458468
)
@@ -495,6 +505,7 @@ def __init__(
495505
# ----------------
496506
super().__init__(
497507
CommParams(
508+
comm_type=CommType.UDP,
498509
comm_name="server_listener",
499510
reconnect_delay=0.0,
500511
reconnect_delay_max=0.0,
@@ -613,6 +624,7 @@ def __init__(
613624
"""
614625
super().__init__(
615626
CommParams(
627+
comm_type=CommType.SERIAL,
616628
comm_name="server_listener",
617629
reconnect_delay=0.0,
618630
reconnect_delay_max=0.0,

0 commit comments

Comments
 (0)