https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293417
Bug ID: 293417
Summary: bsnmpd: no RFC 2741 AgentX server-side support
Product: Base System
Version: CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: bin
Assignee: [email protected]
Reporter: [email protected]
Full disclosure: This is a sub-project I would be keen to seek financial
backing for, and the stakeholders most likely to benefit should really sponsor
it; I am currently unwaged as of writing.
AgentX support is defined in RRC 2741, Agent Extensibility (AgentX) Protocol
Version 1: https://datatracker.ietf.org/doc/rfc2741
The inability to host AgentX sub-agents is a major limitation of bsnmpd,
particularly for consumers such as OPNsense and pfSense, which currently just
ship bsnmpd and not net-snmp by default, limiting their utility in common
network monitoring and telemetry deployments.
This most likely involves merging the OpenBSD implementation of server-side
AgentX for their snmpd, or otherwise basing off it. I have other AgentX work
planned for other projects, so this is orthogonal to that.
SMUX support would be horribly obsolete and could only be suggested as a
bandaid, nothing more.
I did chime in on a freebsd-net@ thread from 16 years ago where I foresaw the
AgentX requirement. It is irksome because bsnmpd historically had richer
support for native FreeBSD system reporting than net-snmp did out of the box.
Is this still the case? That is an open question. The UCD module exists in
ports, but was not merged to src. Notably the pf(4) MIB is in src, also.
The dynamically loaded bsnmpd modules are still under active development
in FreeBSD src itself as of 2025-12-30. There is some SNMPv3 USM support.
Reyk Floeter's OpenBSD snmpd(8) is using their internal AgentX library for
server-side use. See: https://sourcegraph.com/github.com/openbsd/src
Added in commit 4100cc5 by martijn@.
"Current omissions in protocol support are notifications,
index (de)allocation, and agent capabilities."
PacketID logic was removed in commit b26e507.
Header file cleanup in commit a9292d2.
Minor fix in commit 2315138.
Overlap in terms of function and variable names with <libagentx/ax.h>.
The actual agentx shim is in usr.sbin/snmpd/application_agentx.c. It appears
to be using the routines from usr.sbin/snmpd/ax.[ch] but it is unclear if
this is a vendorized dependency or if libagentx is really separate.
Configuration syntax added in usr.sbin/snmpd/parse.y.
When reading around, I noticed ae@ had a patch to add IPv6 support to bsnmpd.
It looks like an extensively modified version of the original patch was
committed from https://reviews.freebsd.org/D16654. That is a starting point for
learning to hack bsnmpd.
--
You are receiving this mail because:
You are the assignee for the bug.