plugins/

directory
v0.0.0-...-dc082c2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2026 License: AGPL-3.0

Directories

Path Synopsis
Design: docs/architecture/plugin/rib-storage-design.md — Adj-RIB-In raw hex storage RFC: rfc/short/rfc4271.md -- Adj-RIBs-In stores unprocessed routing information Detail: rib_commands.go — command handlers (status, show, replay, validation) Detail: rib_validation.go — RPKI validation gate (pending routes, timeout, state constants)
Design: docs/architecture/plugin/rib-storage-design.md — Adj-RIB-In raw hex storage RFC: rfc/short/rfc4271.md -- Adj-RIBs-In stores unprocessed routing information Detail: rib_commands.go — command handlers (status, show, replay, validation) Detail: rib_validation.go — RPKI validation gate (pending routes, timeout, state constants)
yang
Package yang embeds and registers the adj-rib-in API YANG module.
Package yang embeds and registers the adj-rib-in API YANG module.
Design: (none -- predates documentation) RFC: rfc/short/rfc7311.md
Design: (none -- predates documentation) RFC: rfc/short/rfc7311.md
bmp
Design: docs/architecture/core-design.md -- BGP plugin model
Design: docs/architecture/core-design.md -- BGP plugin model
yang
Package yang embeds and registers the BMP command and configuration YANG modules.
Package yang embeds and registers the BMP command and configuration YANG modules.
cmd
announce
Package announce implements the on-demand BGP route origination command handlers.
Package announce implements the on-demand BGP route origination command handlers.
announce/yang
Package yang embeds and registers the BGP announce command and API YANG modules.
Package yang embeds and registers the BGP announce command and API YANG modules.
cache
Package cache implements the BGP cache operation command handlers.
Package cache implements the BGP cache operation command handlers.
cache/yang
Package yang embeds and registers the YANG schema modules for the cache command.
Package yang embeds and registers the YANG schema modules for the cache command.
commit
Package commit implements the BGP commit command that manages named route commit transactions.
Package commit implements the BGP commit command that manages named route commit transactions.
commit/yang
Package yang embeds and registers the YANG schema modules for the commit command.
Package yang embeds and registers the YANG schema modules for the commit command.
monitor
Design: docs/architecture/api/commands.md — BGP monitor command handlers
Design: docs/architecture/api/commands.md — BGP monitor command handlers
monitor/yang
Package yang embeds and registers the YANG schema modules for the monitor command.
Package yang embeds and registers the YANG schema modules for the monitor command.
peer
Package peer provides BGP peer lifecycle and introspection command handlers for the plugin server.
Package peer provides BGP peer lifecycle and introspection command handlers for the plugin server.
peer/yang
Package yang embeds and registers the YANG schema modules for the peer command.
Package yang embeds and registers the YANG schema modules for the peer command.
policy
Package policy implements the show policy commands that inspect policy chains and dry-run policy evaluation.
Package policy implements the show policy commands that inspect policy chains and dry-run policy evaluation.
policy/yang
Package yang embeds and registers the YANG schema module for the policy command.
Package yang embeds and registers the YANG schema module for the policy command.
raw
Design: docs/architecture/api/commands.md — BGP raw message command handler
Design: docs/architecture/api/commands.md — BGP raw message command handler
raw/yang
Package yang embeds and registers the YANG schema modules for the raw command.
Package yang embeds and registers the YANG schema modules for the raw command.
rib
Design: docs/architecture/api/commands.md — RIB CLI proxy handlers
Design: docs/architecture/api/commands.md — RIB CLI proxy handlers
rib/yang
Package yang embeds and registers the YANG schema modules for the rib command.
Package yang embeds and registers the YANG schema modules for the rib command.
update
Design: plan/learned/824-rib-feed-replay-batch.md — stateful cursor for replay batching Overview: update_text.go — handleUpdate dispatch, parsedAttrs, snapshot, parseCommonAttributeText Related: update_text_nlri.go — parseNLRISection (reused unchanged)
Design: plan/learned/824-rib-feed-replay-batch.md — stateful cursor for replay batching Overview: update_text.go — handleUpdate dispatch, parsedAttrs, snapshot, parseCommonAttributeText Related: update_text_nlri.go — parseNLRISection (reused unchanged)
update/yang
Package yang embeds and registers the YANG schema modules for the update command.
Package yang embeds and registers the YANG schema modules for the update command.
Design: docs/architecture/core-design.md -- AS-path filter config parsing Related: match.go -- AS-path regex matching algorithm Related: filter_aspath.go -- SDK entry point and handleFilterUpdate
Design: docs/architecture/core-design.md -- AS-path filter config parsing Related: match.go -- AS-path regex matching algorithm Related: filter_aspath.go -- SDK entry point and handleFilterUpdate
yang
Package yang embeds and registers the YANG schema module for the aspath filter.
Package yang embeds and registers the YANG schema module for the aspath filter.
yang
Package yang embeds and registers the YANG schema module for the aspath-length filter.
Package yang embeds and registers the YANG schema module for the aspath-length filter.
Package filter_community implements the bgp-filter-community plugin.
Package filter_community implements the bgp-filter-community plugin.
yang
Package yang embeds and registers the community-filter plugin's YANG configuration schema module.
Package yang embeds and registers the community-filter plugin's YANG configuration schema module.
Design: docs/architecture/core-design.md -- community match filter config parsing Related: match.go -- community matching algorithm Related: filter_community_match.go -- SDK entry point and handleFilterUpdate
Design: docs/architecture/core-design.md -- community match filter config parsing Related: match.go -- community matching algorithm Related: filter_community_match.go -- SDK entry point and handleFilterUpdate
yang
Package yang embeds and registers the YANG schema module for the community-match filter.
Package yang embeds and registers the YANG schema module for the community-match filter.
Design: docs/architecture/core-design.md -- address-family policy filter Related: config.go -- bgp/policy/family-filter config parsing + tear-down-in-export guard Related: match.go -- family extraction from the raw UPDATE body Related: handler.go -- per-update remove / tear-down decision RFC: rfc/short/rfc4760.md -- multiprotocol families (Section 6) RFC: rfc/short/rfc4271.md -- NOTIFICATION + session close (Section 6)
Design: docs/architecture/core-design.md -- address-family policy filter Related: config.go -- bgp/policy/family-filter config parsing + tear-down-in-export guard Related: match.go -- family extraction from the raw UPDATE body Related: handler.go -- per-update remove / tear-down decision RFC: rfc/short/rfc4760.md -- multiprotocol families (Section 6) RFC: rfc/short/rfc4271.md -- NOTIFICATION + session close (Section 6)
yang
Package yang embeds and registers the family-filter plugin's YANG configuration schema module.
Package yang embeds and registers the family-filter plugin's YANG configuration schema module.
yang
Package yang embeds and registers the IRR-filter plugin's YANG configuration schema modules.
Package yang embeds and registers the IRR-filter plugin's YANG configuration schema modules.
Design: docs/architecture/core-design.md -- route modify filter config parsing Related: modify.go -- delta building and attribute encoding Related: filter_modify.go -- SDK entry point and handleFilterUpdate
Design: docs/architecture/core-design.md -- route modify filter config parsing Related: modify.go -- delta building and attribute encoding Related: filter_modify.go -- SDK entry point and handleFilterUpdate
yang
Package yang embeds and registers the modify-filter plugin's YANG configuration schema module.
Package yang embeds and registers the modify-filter plugin's YANG configuration schema module.
Design: docs/architecture/core-design.md -- prefix-list filter plugin Detail: match.go -- prefix matching algorithm and update evaluator Detail: config.go -- bgp/policy/prefix-list config parsing
Design: docs/architecture/core-design.md -- prefix-list filter plugin Detail: match.go -- prefix matching algorithm and update evaluator Detail: config.go -- bgp/policy/prefix-list config parsing
yang
Package yang embeds and registers the prefix-filter plugin's YANG configuration schema module.
Package yang embeds and registers the prefix-filter plugin's YANG configuration schema module.
yang
Package yang embeds and registers the remove-private-AS filter plugin's YANG configuration schema module.
Package yang embeds and registers the remove-private-AS filter plugin's YANG configuration schema module.
gr
Design: docs/architecture/core-design.md — graceful restart plugin RFC: rfc/short/rfc4724.md RFC: rfc/short/rfc9494.md Detail: gr_state.go — GR state machine (per-peer timers, stale family tracking) Detail: gr_llgr.go — LLGR capability decode, config extraction, CLI decode (RFC 9494)
Design: docs/architecture/core-design.md — graceful restart plugin RFC: rfc/short/rfc4724.md RFC: rfc/short/rfc9494.md Detail: gr_state.go — GR state machine (per-peer timers, stale family tracking) Detail: gr_llgr.go — LLGR capability decode, config extraction, CLI decode (RFC 9494)
yang
Package yang embeds and registers the graceful-restart plugin's YANG configuration schema module.
Package yang embeds and registers the graceful-restart plugin's YANG configuration schema module.
Design: plan/learned/516-healthcheck-0-umbrella.md -- healthcheck config parsing Overview: healthcheck.go -- plugin lifecycle and probe management
Design: plan/learned/516-healthcheck-0-umbrella.md -- healthcheck config parsing Overview: healthcheck.go -- plugin lifecycle and probe management
yang
Package yang embeds and registers the healthcheck plugin's YANG configuration schema module.
Package yang embeds and registers the healthcheck plugin's YANG configuration schema module.
Design: docs/architecture/core-design.md — hostname capability plugin
Design: docs/architecture/core-design.md — hostname capability plugin
yang
Package yang embeds and registers the hostname plugin's YANG configuration schema module.
Package yang embeds and registers the hostname plugin's YANG configuration schema module.
Design: docs/architecture/core-design.md — link-local next-hop plugin RFC: rfc/short/rfc5549.md
Design: docs/architecture/core-design.md — link-local next-hop plugin RFC: rfc/short/rfc5549.md
yang
Package yang embeds and registers the link-local-nexthop plugin's YANG configuration schema module.
Package yang embeds and registers the link-local-nexthop plugin's YANG configuration schema module.
nlri
evpn
Design: docs/architecture/wire/nlri-evpn.md — EVPN NLRI plugin RFC: rfc/short/rfc7432.md
Design: docs/architecture/wire/nlri-evpn.md — EVPN NLRI plugin RFC: rfc/short/rfc7432.md
flowspec
Design: docs/architecture/wire/nlri-flowspec.md — FlowSpec NLRI plugin RFC: rfc/short/rfc5575.md Detail: plugin_decode.go — wire-to-JSON decoding and formatting Detail: plugin_encode_text.go — text-to-wire encoding Detail: plugin_protocol.go — stdin/stdout protocol dispatch
Design: docs/architecture/wire/nlri-flowspec.md — FlowSpec NLRI plugin RFC: rfc/short/rfc5575.md Detail: plugin_decode.go — wire-to-JSON decoding and formatting Detail: plugin_encode_text.go — text-to-wire encoding Detail: plugin_protocol.go — stdin/stdout protocol dispatch
labeled
Design: docs/architecture/wire/nlri.md — labeled unicast NLRI plugin RFC: rfc/short/rfc8277.md
Design: docs/architecture/wire/nlri.md — labeled unicast NLRI plugin RFC: rfc/short/rfc8277.md
ls
Design: docs/architecture/wire/nlri-bgpls.md — BGP-LS attribute TLV framework RFC: rfc/short/rfc7752.md — BGP-LS attribute type 29 TLV format Overview: types.go — core types, TLV constants, and helper functions Detail: attr_node.go — node attribute TLV types Detail: attr_link.go — link attribute TLV types Detail: attr_prefix.go — prefix attribute TLV types Detail: attr_srv6.go — SRv6 attribute TLV types Detail: register_attr.go — attribute TLV registration
Design: docs/architecture/wire/nlri-bgpls.md — BGP-LS attribute TLV framework RFC: rfc/short/rfc7752.md — BGP-LS attribute type 29 TLV format Overview: types.go — core types, TLV constants, and helper functions Detail: attr_node.go — node attribute TLV types Detail: attr_link.go — link attribute TLV types Detail: attr_prefix.go — prefix attribute TLV types Detail: attr_srv6.go — SRv6 attribute TLV types Detail: register_attr.go — attribute TLV registration
mup
Design: docs/architecture/wire/nlri.md — MUP NLRI prefix encoding helpers RFC: rfc/short/draft-ietf-bess-mup-safi.md — MUP SAFI encoding
Design: docs/architecture/wire/nlri.md — MUP NLRI prefix encoding helpers RFC: rfc/short/draft-ietf-bess-mup-safi.md — MUP SAFI encoding
mvpn
Design: docs/architecture/wire/nlri.md — MVPN NLRI plugin
Design: docs/architecture/wire/nlri.md — MVPN NLRI plugin
rtc
Design: docs/architecture/wire/nlri.md — route target constraint plugin RFC: rfc/short/rfc4684.md
Design: docs/architecture/wire/nlri.md — route target constraint plugin RFC: rfc/short/rfc4684.md
srpolicy
Design: docs/architecture/wire/nlri.md -- SR-Policy NLRI plugin RFC: rfc/short/rfc9830.md -- SR-Policy NLRI wire format (SAFI 73)
Design: docs/architecture/wire/nlri.md -- SR-Policy NLRI plugin RFC: rfc/short/rfc9830.md -- SR-Policy NLRI wire format (SAFI 73)
vpls
Design: docs/architecture/wire/nlri.md — VPLS NLRI plugin RFC: rfc/short/rfc4761.md
Design: docs/architecture/wire/nlri.md — VPLS NLRI plugin RFC: rfc/short/rfc4761.md
vpn
Design: docs/architecture/wire/nlri.md — VPN NLRI plugin RFC: rfc/short/rfc4364.md
Design: docs/architecture/wire/nlri.md — VPN NLRI plugin RFC: rfc/short/rfc4364.md
rib
Design: docs/architecture/plugin/rib-storage-design.md — best-path selection Overview: rib.go — RIB plugin core types and event handlers Related: rib_attr_format.go — attribute formatting (asPathLength, firstASInPath shared concern) Related: rib_commands.go — extractCandidate, gatherCandidates Related: rib_pipeline_best.go — best-path pipeline for show bgp rib best commands Related: rib_bestchange.go — best-path change tracking and Bus publishing
Design: docs/architecture/plugin/rib-storage-design.md — best-path selection Overview: rib.go — RIB plugin core types and event handlers Related: rib_attr_format.go — attribute formatting (asPathLength, firstASInPath shared concern) Related: rib_commands.go — extractCandidate, gatherCandidates Related: rib_pipeline_best.go — best-path pipeline for show bgp rib best commands Related: rib_bestchange.go — best-path change tracking and Bus publishing
events
Package events defines event constants and typed event handles for the BGP RIB plugin.
Package events defines event constants and typed event handles for the BGP RIB plugin.
pool
Package pool holds the per-attribute-type BGP path-attribute pools used for fine-grained RIB deduplication.
Package pool holds the per-attribute-type BGP path-attribute pools used for fine-grained RIB deduplication.
storage
Package storage implements the per-peer, per-family RIB storage with per-attribute-type deduplication.
Package storage implements the per-peer, per-family RIB storage with per-attribute-type deduplication.
yang
Package yang embeds and registers the BGP RIB YANG schema modules.
Package yang embeds and registers the BGP RIB YANG schema modules.
Design: docs/architecture/core-design.md — BGP role plugin RFC: rfc/short/rfc9234.md Detail: otc.go — OTC attribute processing (ingress/egress) Detail: config.go — per-peer role config parsing (import/export)
Design: docs/architecture/core-design.md — BGP role plugin RFC: rfc/short/rfc9234.md Detail: otc.go — OTC attribute processing (ingress/egress) Detail: config.go — per-peer role config parsing (import/export)
yang
Package yang embeds and registers the BGP role YANG schema module.
Package yang embeds and registers the BGP role YANG schema module.
Design: docs/architecture/core-design.md — route refresh capability plugin RFC: rfc/short/rfc2918.md — route refresh capability RFC: rfc/short/rfc7313.md — enhanced route refresh
Design: docs/architecture/core-design.md — route refresh capability plugin RFC: rfc/short/rfc2918.md — route refresh capability RFC: rfc/short/rfc7313.md — enhanced route refresh
handler
Design: docs/architecture/api/commands.md — BGP route refresh command handlers Overview: ../register.go — bgp-route-refresh SDK plugin registration
Design: docs/architecture/api/commands.md — BGP route refresh command handlers Overview: ../register.go — bgp-route-refresh SDK plugin registration
yang
Package yang embeds and registers the BGP route-refresh YANG schema modules.
Package yang embeds and registers the BGP route-refresh YANG schema modules.
Design: docs/architecture/plugin/rib-storage-design.md -- ASPA record cache Overview: rpki.go -- plugin using this cache for ASPA path verification Related: roa_cache.go -- ROA cache following the same pattern
Design: docs/architecture/plugin/rib-storage-design.md -- ASPA record cache Overview: rpki.go -- plugin using this cache for ASPA path verification Related: roa_cache.go -- ROA cache following the same pattern
yang
Package yang embeds and registers the RPKI YANG schema module.
Package yang embeds and registers the RPKI YANG schema module.
Package rpki_decorator provides the bgp-rpki-decorator plugin.
Package rpki_decorator provides the bgp-rpki-decorator plugin.
yang
Package yang embeds and registers the RPKI decorator YANG schema module.
Package yang embeds and registers the RPKI decorator YANG schema module.
rr
yang
Package yang embeds and registers the BGP route-reflector command YANG schema module.
Package yang embeds and registers the BGP route-reflector command YANG schema module.
rs
yang
Package yang embeds and registers the BGP route-server configuration YANG schema module.
Package yang embeds and registers the BGP route-server configuration YANG schema module.
Design: docs/architecture/core-design.md — software-version capability plugin
Design: docs/architecture/core-design.md — software-version capability plugin
yang
Package yang embeds and registers the BGP software-version capability YANG schema module.
Package yang embeds and registers the BGP software-version capability YANG schema module.
Design: docs/architecture/rib-transition.md — watchdog plugin extraction Detail: server.go — command dispatch and state management Detail: config.go — config tree parser Detail: pool.go — route pool management
Design: docs/architecture/rib-transition.md — watchdog plugin extraction Detail: server.go — command dispatch and state management Detail: config.go — config tree parser Detail: pool.go — route pool management