Skip to content

Conversation

Nivispluma
Copy link
Contributor

Title

ADD: Support for LANCOM LCOS SX 5

Description

This PR introduces a new driver for LANCOM devices running LCOS SX 5, which is the OS for the Enterprise models.

Peculiarity

LANCOM does not allow Exec commands to be run in Config Mode, therefore a config-mode-check is added to save_config and cleanup.
SSH Connection to LCOS SX 5 devices normally start in the EXEC Mode. This Mode however offers only inconsistent command usage. Therefore the driver will elevate the Session to privileged EXEC Mode by default during session_preparation
The terminal width commands dont work on LCOS SX 5

Testing

Tested on:

  • XS-6128QF

A File with full show and config test result is attached.

2025-05-02_netmiko-lancom-driver-LCOSSX5-test.txt

super().disable_paging()
self.clear_buffer()

def set_terminal_width(self, *args: Any, **kwargs: Any) -> str:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no need to override the set_terminal_width. It's only ever called from session_preparation which you already override. If you do really want to keep it, you should have it raise NotImplementedError

@Noppes
Copy link
Contributor

Noppes commented May 12, 2025

Looking at https://www.lancom-systems.de/fileadmin/download/documentation/CLI-Reference/MA_LCOS-SX-5.20-CLI-Reference_EN.pdf, it says to enter config mode its configure and not configure terminal like in cisco, is that correct?

I also see that you check for (Config)# with a capital C is that correct?

offers inconsistent command options
"""
self._test_channel_read()
super().send_command_timing(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any reason you are calling send_command for this instead of just using self.enable()?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants