Help us shape the future of Go! Take the 2026 Go Developer Survey

inventory

package
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Oct 29, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package inventory collects the descriptive facts the agent reports: host facts (hostname, operating system, interfaces and their addresses) and a best-effort list of listening services. Facts never confer identity or authorization (ADR-0016); they feed the inventory view and, for addresses, the resolution of peers in other workloads' rendered policy (ADR-0018).

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Facts

func Facts() *innerwallv1.HostFacts

Facts collects host facts. Every field is best effort: what cannot be read is left empty rather than failing the report.

func ListeningServices

func ListeningServices() []*innerwallv1.ListeningService

ListeningServices discovers TCP listeners and bound UDP sockets from the host's network tables and attributes each to a process when the process table is readable. Limitations, by design rather than oversight:

  • Only Linux procfs is read (/proc/net/{tcp,tcp6,udp,udp6}). On any other host the list is empty, never an error.
  • A UDP socket has no listening state; every bound UDP socket is reported, which includes client sockets bound to ephemeral ports.
  • Process attribution scans /proc/<pid>/fd for the socket's inode. Reading another user's file descriptors needs privilege; where that is missing the service is reported without a process. Attribution is a snapshot and may name a process that has since exited.
  • Sockets bound inside other network namespaces are not visible.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL