in internal/ip/ip.go [275:298]
func NewConn(af int, listenPort layers.TCPPort, intf string, srcAddr net.IP, logger *log.Logger) *Conn {
fdSend, err := getSendSocket(af)
if err != nil {
logger.Fatal("Error creating send socket",
zap.Int("address_family", af),
zap.Error(err))
}
rs, err := getRecvSource(af, listenPort, intf, logger)
if err != nil {
logger.Fatal("Error creating recv source",
zap.Any("listenPort", listenPort),
zap.String("interface", intf),
zap.Error(err))
}
return &Conn{
SrcAddr: srcAddr,
AF: af,
sendFD: fdSend,
recvSrc: rs,
ListenPort: listenPort,
}
}