Versions in this module Expand all Collapse all v0 v0.1.0 Jan 8, 2024 Changes in this version + const IFObtainType_DeviceLnkName + const IFObtainType_IP + const PCAP_IF_CONNECTION_STATUS + const PCAP_IF_CONNECTION_STATUS_CONNECTED + const PCAP_IF_CONNECTION_STATUS_DISCONNECTED + const PCAP_IF_CONNECTION_STATUS_NOT_APPLICABLE + const PCAP_IF_CONNECTION_STATUS_UNKNOWN + const PCAP_IF_LOOPBACK + const PCAP_IF_RUNNING + const PCAP_IF_UP + const PCAP_IF_WIRELESS + const PRIME_32K + const SocketMsg_Closed + const SocketMsg_RecvData + const SocketMsg_Unknow + const SocketType_DGRAM + const SocketType_STREAM + const TCP_CLOSE + const TCP_CLOSE_WAIT + const TCP_CLOSING + const TCP_ESTABLISHED + const TCP_FIN_WAIT1 + const TCP_FIN_WAIT2 + const TCP_LAST_ACK + const TCP_LISTEN + const TCP_MAX_STATES + const TCP_SIGNAL_ACK + const TCP_SIGNAL_FIN + const TCP_SIGNAL_PSH + const TCP_SIGNAL_RST + const TCP_SIGNAL_SYN + const TCP_SIGNAL_URG + const TCP_SYN_RECV + const TCP_SYN_SENT + const TCP_TIME_WAIT + const TS_UNKNOWN + var MSL int = 30 + var TCPStatusInfoMap = map[int]string + func GeneratePort() int + func GenerateTCPPackage(srcIP net.IP, srcMac net.HardwareAddr, dstIP net.IP, dstMac net.HardwareAddr, ...) ([]byte, error) + func GenerateUDPPackage(srcIP net.IP, srcMac net.HardwareAddr, dstIP net.IP, dstMac net.HardwareAddr, ...) ([]byte, error) + func TimerCall(interval int, count int, callback func()) + type AdapterInfo struct + Addrs []device.IPAddress + DevName string + Flag uint32 + IsLoopback bool + MAC net.HardwareAddr + MTU int + type ProtocolObject struct + DevHandle *device.DeviceHandle + Ifs []pcap.Interface + SocketType int + TCPSocketsList map[string]*Socket + UDPSocketsList map[string]*Socket + Wg sync.WaitGroup + func NewProtocolObject(socketType int) *ProtocolObject + func (p *ProtocolObject) Accept() (*Socket, int) + func (p *ProtocolObject) Append(s *Socket) + func (p *ProtocolObject) Bind(s *Socket) + func (p *ProtocolObject) Close(s *Socket) int + func (p *ProtocolObject) CloseAllofSockets() + func (p *ProtocolObject) CloseDevice() + func (p *ProtocolObject) Connect(targetIP net.IP, targetPort uint16, nexthopMAC net.HardwareAddr) (*Socket, error) + func (p *ProtocolObject) InitAdapter(iftype int, param string) error + func (p *ProtocolObject) IsInBufferSockets(s *Socket) (*Socket, bool) + func (p *ProtocolObject) Recv(s *Socket, result *[]byte) int + func (p *ProtocolObject) RecvFrom(result *[]byte) int + func (p *ProtocolObject) RemoveSockFromList(s *Socket) + func (p *ProtocolObject) Send(s *Socket, payload []byte) int + func (p *ProtocolObject) Sendto(targetIP net.IP, targetPort uint16, nexthopMAC net.HardwareAddr, ...) int + func (p *ProtocolObject) SetTimeout(timeout time.Duration) + func (p *ProtocolObject) Startup() error + func (p *ProtocolObject) Wait() + type Socket struct + DataBuf *utils.Buffer + Family layers.ProtocolFamily + Handle *device.DeviceHandle + IsTriggerNotify atomic.Bool + LenOfRecved uint32 + LocalIP net.IP + LocalMAC net.HardwareAddr + LocalPort uint16 + Lock sync.RWMutex + Nexthop net.HardwareAddr + NotifyCallback func() + PreLenOfSent uint32 + RecvedPayload []byte + RemoteIP net.IP + RemotePort uint16 + SocketType int + func CreateSocket(socketType int, localPort uint16) *Socket + func NewSocket() *Socket + func (p *Socket) Clone() *Socket + func (p *Socket) GetLastError() error + func (p *Socket) GetNextSeq() uint32 + func (p *Socket) GetTsEcho() uint32 + func (p *Socket) SetLastError(err error) + func (p *Socket) UpdateAckNum() + func (p *Socket) UpdateSeqNum() + type TCPSock struct + ACK bool + AckNum uint32 + CWR bool + DataOffset uint8 + ECE bool + FIN bool + IsSupportTimestamp bool + MSS uint16 + NS bool + Options []layers.TCPOption + PSH bool + PreRecvedSignal int + PreSentSignal int + RST bool + RecvdWinSize uint16 + RecvedAckNum uint32 + RecvedSeqNum uint32 + SYN bool + SeqNum uint32 + Status int + TsEcho uint32 + URG bool + WinSize uint16 + type UDPSock struct + Length uint16