Skip to content

Repository files navigation

netlink - a simple netlink library for go

Build StatusGoDoc

what's netlink ?

The netlink package provides a simple netlink library for go. Netlink is the interface a user-space program in linux uses to communicate with the kernel.

more information here

example

func (c*ExecCollector) prepareSocket() (*netlink.NetlinkSocket, error) {
ns, err:=netlink.NewNetlinkSocket(netlink.CONNECTOR, netlink.CN_IDX_PROC)
iferr!=nil {
returnnil, fmt.Errorf("create netlink socket: %v", err)
}
req:=netlink.NewNetlinkRequest()
{
msg:=netlink.NewCnMsg()
req.AddData(msg)
op:=netlink.PROC_CN_MCAST_LISTENreq.AddData(&op)
}
err=ns.Send(req)
iferr!=nil {
returnnil, fmt.Errorf("Exec: %v", err)
}
gofunc() {
<-c.shutdownns.Close()
}()
returnns, nil
}

future work

WIP

About

netlink lib for golang

Resources

Code of conduct

Security policy

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages