 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
      Overview ¶
Package procspy lists TCP connections, and optionally tries to find the owning processes. Works on Linux (via /proc) and Darwin (via `lsof -i` and `netstat`). You'll need root to use Processes().
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ReadNetnsFromPID ¶ added in v1.4.0
ReadNetnsFromPID gets the netns inode of the specified pid
Types ¶
type ConnIter ¶
type ConnIter interface {
	Next() *Connection
}
    ConnIter is returned by Connections().
type Connection ¶
type Connection struct {
	Transport     string
	LocalAddress  net.IP
	LocalPort     uint16
	RemoteAddress net.IP
	RemotePort    uint16
	Inode         uint64
	Proc          Proc
}
    Connection is a (TCP) connection. The Proc struct might not be filled in.
type ConnectionScanner ¶ added in v0.13.0
type ConnectionScanner interface {
	// Connections returns all established (TCP) connections.
	Connections() (ConnIter, error)
	// Stops the scanning
	Stop()
}
    ConnectionScanner scans the system for established (TCP) connections
func NewConnectionScanner ¶ added in v0.13.0
func NewConnectionScanner(walker process.Walker, processes bool) ConnectionScanner
NewConnectionScanner creates a new Linux ConnectionScanner
func NewSyncConnectionScanner ¶ added in v1.4.0
func NewSyncConnectionScanner(walker process.Walker, processes bool) ConnectionScanner
NewSyncConnectionScanner creates a new synchronous Linux ConnectionScanner
type FixedScanner ¶ added in v0.13.0
type FixedScanner []Connection
FixedScanner implements ConnectionScanner and uses constant Connection and ConnectionProcs.
func (FixedScanner) Connections ¶ added in v0.13.0
func (s FixedScanner) Connections() (ConnIter, error)
Connections implements ConnectionsScanner.Connections
func (FixedScanner) Stop ¶ added in v0.13.0
func (s FixedScanner) Stop()
Stop implements ConnectionsScanner.Stop (dummy since there is no background work)
type Proc ¶
Proc is a single process with PID and process name.
type ProcNet ¶
type ProcNet struct {
	// contains filtered or unexported fields
}
    ProcNet is an iterator to parse /proc/net/tcp{,6} files.
func (*ProcNet) Next ¶
func (p *ProcNet) Next() *Connection
Next returns the next connection. All buffers are re-used, so if you want to keep the IPs you have to copy them.
       Source Files
      ¶
      Source Files
      ¶
    
- fixture.go
- lsof.go
- netstat.go
- proc_linux.go
- procnet.go
- reader_linux.go
- spy.go
- spy_linux.go