Skip to content

ADD: Support for LANCOM LCOS SX 5 #3670

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from

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