Skip to content

new class for Cambium#564

Merged
rc9000 merged 6 commits intomasterfrom
rc9000-cambium
Feb 20, 2026
Merged

new class for Cambium#564
rc9000 merged 6 commits intomasterfrom
rc9000-cambium

Conversation

@rc9000
Copy link
Copy Markdown
Member

@rc9000 rc9000 commented Feb 18, 2026

No description provided.

@rc9000 rc9000 marked this pull request as draft February 18, 2026 12:29
@rc9000 rc9000 requested a review from Copilot February 18, 2026 12:29
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds first-class SNMP::Info support for Cambium devices by introducing a dedicated Layer3 subclass, wiring it into enterprise-ID based device classification, and providing an xt test to validate key identity attributes.

Changes:

  • Add SNMP::Info::Layer3::Cambium subclass with Cambium-specific globals and overrides (vendor/os/os_ver/model/mac/name/serial).
  • Register enterprise ID 17713 to map to the new Cambium subclass in SNMP::Info->device_type.
  • Add xt coverage for the new subclass and include new files in MANIFEST.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.

File Description
lib/SNMP/Info/Layer3/Cambium.pm New Cambium Layer3 subclass, MIB bindings, and model/SKU mapping logic.
xt/lib/Test/SNMP/Info/Layer3/Cambium.pm New unit tests validating Cambium overrides using cached SNMP data.
lib/SNMP/Info.pm Adds enterprise ID 17713 to L2/L3 sysObjectID maps for auto-class selection.
MANIFEST Includes the newly added module and test file.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

176 => '(0xe002) ePMP Elevate NS-M2-V2',
180 => '(0xe0a5) ePMP Elevate NSlocoM5-XM-V1',
181 => '(0xe8a5) ePMP Elevate NSlocoM5-XM-V2',
183 => '(0xe0a2) ePMP Elavate NSloco-M2',
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

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

The model mapping string has a typo (“Elavate”). This will surface in model() output for HWInfo value 183 and makes the returned model inconsistent with the rest of the table. Please correct the spelling (likely “Elevate”).

Suggested change
183 => '(0xe0a2) ePMP Elavate NSloco-M2',
183 => '(0xe0a2) ePMP Elevate NSloco-M2',

Copilot uses AI. Check for mistakes.
241 => '(0xe105) ePMP Elevate RM5-V1-XM',
242 => '(0xe1b5) ePMP Elevate RM5-V2-XM',
243 => '(0xe1c5) ePMP Elevate RM5-V3-XM',
244 => '(9xe8b5) ePMP Elevate RM5-V4-XM',
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

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

This SKU description includes an invalid-looking hex prefix “9xe8b5”. All similar entries use “0x…”, so this is likely a typo that would leak into model() output for HWInfo value 244.

Suggested change
244 => '(9xe8b5) ePMP Elevate RM5-V4-XM',
244 => '(0xe8b5) ePMP Elevate RM5-V4-XM',

Copilot uses AI. Check for mistakes.
Comment thread lib/SNMP/Info/Layer3/Cambium.pm Outdated
Comment on lines +116 to +121
can_ok($test->{info}, 'model');
like(
$test->{info}->model(),
qr/^5 GHz Force 300-19R IP67 Radio \(ROW\/ETSI\)(?: \(ePMPxorn19rip67row\))?$/,
q(Model returns mapped cambiumHWInfo value and optional sysObjectID suffix)
);
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

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

model() has logic to append a sysObjectID-derived suffix, but the current test only allows the suffix optionally and doesn’t verify the suffix-building branch. Consider adding a test that forces SNMP::translateObj($id) to return a symbolic token (e.g., by locally overriding/stubbing it) so regressions in the suffix behavior are caught.

Copilot uses AI. Check for mistakes.
Comment thread lib/SNMP/Info.pm Outdated
rc9000 and others added 2 commits February 20, 2026 18:21
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: inphobia
@rc9000 rc9000 marked this pull request as ready for review February 20, 2026 17:27
@rc9000 rc9000 merged commit 6b24eff into master Feb 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants