├── .github └── workflows │ └── go.yml ├── .gitignore ├── LICENSE ├── README.md ├── arp ├── arp_test.go ├── definitions.go ├── frame.go ├── handler.go └── stringers.go ├── crc.go ├── definitions.go ├── dhcpv4 ├── client.go ├── definitions.go ├── dhcp_test.go ├── frame.go ├── server.go └── stringers.go ├── dns ├── client.go ├── definitions.go ├── dns.go ├── dns_test.go └── stringers.go ├── errors.go ├── ethernet ├── definitions.go ├── frame.go └── stringers.go ├── examples ├── bridge │ └── main.go ├── stack │ └── main.go ├── stackbasic │ └── main.go ├── tap │ └── main.go ├── tcpclient │ └── main.go └── xnet │ └── main.go ├── go.mod ├── http └── httpraw │ ├── cookie.go │ ├── header.go │ ├── header_test.go │ └── parse.go ├── internal ├── backoff.go ├── debug.go ├── debug_heaplog.go ├── debug_noheaplog.go ├── ip.go ├── ltesto │ ├── httptap.go │ └── ltesto.go ├── net.go ├── net_tinygo.go ├── prand.go ├── ring.go ├── ring_test.go ├── tap.go ├── tap_nolinux.go └── zoneprinter.go ├── internet ├── definitions.go ├── node-tcplistener.go ├── pcap │ ├── capture.go │ ├── capture_test.go │ └── stringers.go ├── stack-ethernet.go ├── stack-ip.go ├── stack-ports.go ├── stack-udpport.go └── stackbasic_test.go ├── ipv4 ├── definitions.go ├── frame.go ├── frame_test.go └── icmpv4 │ └── icmpv4.go ├── ipv6 ├── definitions.go └── frame.go ├── lneto_test.go ├── ntp ├── client.go ├── definitions.go ├── ntp.go └── ntp_test.go ├── stackbasic ├── stringers.go ├── tcp ├── conn.go ├── control.go ├── control_rcvhandlers.go ├── debug.go ├── definitions.go ├── frame.go ├── handler.go ├── handler_test.go ├── internal_test.go ├── stringers.go ├── tcp_test.go ├── txqueue.go ├── txqueue_test.go └── valuesize.go ├── udp ├── definitions.go └── frame.go ├── validation.go └── x └── xnet ├── stack-async.go ├── stack-blocking.go ├── stack-retrying.go └── xnet_test.go /.github/workflows/go.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/.github/workflows/go.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/README.md -------------------------------------------------------------------------------- /arp/arp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/arp/arp_test.go -------------------------------------------------------------------------------- /arp/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/arp/definitions.go -------------------------------------------------------------------------------- /arp/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/arp/frame.go -------------------------------------------------------------------------------- /arp/handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/arp/handler.go -------------------------------------------------------------------------------- /arp/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/arp/stringers.go -------------------------------------------------------------------------------- /crc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/crc.go -------------------------------------------------------------------------------- /definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/definitions.go -------------------------------------------------------------------------------- /dhcpv4/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/client.go -------------------------------------------------------------------------------- /dhcpv4/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/definitions.go -------------------------------------------------------------------------------- /dhcpv4/dhcp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/dhcp_test.go -------------------------------------------------------------------------------- /dhcpv4/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/frame.go -------------------------------------------------------------------------------- /dhcpv4/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/server.go -------------------------------------------------------------------------------- /dhcpv4/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dhcpv4/stringers.go -------------------------------------------------------------------------------- /dns/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dns/client.go -------------------------------------------------------------------------------- /dns/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dns/definitions.go -------------------------------------------------------------------------------- /dns/dns.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dns/dns.go -------------------------------------------------------------------------------- /dns/dns_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dns/dns_test.go -------------------------------------------------------------------------------- /dns/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/dns/stringers.go -------------------------------------------------------------------------------- /errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/errors.go -------------------------------------------------------------------------------- /ethernet/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ethernet/definitions.go -------------------------------------------------------------------------------- /ethernet/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ethernet/frame.go -------------------------------------------------------------------------------- /ethernet/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ethernet/stringers.go -------------------------------------------------------------------------------- /examples/bridge/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/bridge/main.go -------------------------------------------------------------------------------- /examples/stack/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/stack/main.go -------------------------------------------------------------------------------- /examples/stackbasic/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/stackbasic/main.go -------------------------------------------------------------------------------- /examples/tap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/tap/main.go -------------------------------------------------------------------------------- /examples/tcpclient/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/tcpclient/main.go -------------------------------------------------------------------------------- /examples/xnet/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/examples/xnet/main.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- 1 | module github.com/soypat/lneto 2 | 3 | go 1.23.8 4 | -------------------------------------------------------------------------------- /http/httpraw/cookie.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/http/httpraw/cookie.go -------------------------------------------------------------------------------- /http/httpraw/header.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/http/httpraw/header.go -------------------------------------------------------------------------------- /http/httpraw/header_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/http/httpraw/header_test.go -------------------------------------------------------------------------------- /http/httpraw/parse.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/http/httpraw/parse.go -------------------------------------------------------------------------------- /internal/backoff.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/backoff.go -------------------------------------------------------------------------------- /internal/debug.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/debug.go -------------------------------------------------------------------------------- /internal/debug_heaplog.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/debug_heaplog.go -------------------------------------------------------------------------------- /internal/debug_noheaplog.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/debug_noheaplog.go -------------------------------------------------------------------------------- /internal/ip.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/ip.go -------------------------------------------------------------------------------- /internal/ltesto/httptap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/ltesto/httptap.go -------------------------------------------------------------------------------- /internal/ltesto/ltesto.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/ltesto/ltesto.go -------------------------------------------------------------------------------- /internal/net.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/net.go -------------------------------------------------------------------------------- /internal/net_tinygo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/net_tinygo.go -------------------------------------------------------------------------------- /internal/prand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/prand.go -------------------------------------------------------------------------------- /internal/ring.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/ring.go -------------------------------------------------------------------------------- /internal/ring_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/ring_test.go -------------------------------------------------------------------------------- /internal/tap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/tap.go -------------------------------------------------------------------------------- /internal/tap_nolinux.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/tap_nolinux.go -------------------------------------------------------------------------------- /internal/zoneprinter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internal/zoneprinter.go -------------------------------------------------------------------------------- /internet/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/definitions.go -------------------------------------------------------------------------------- /internet/node-tcplistener.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/node-tcplistener.go -------------------------------------------------------------------------------- /internet/pcap/capture.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/pcap/capture.go -------------------------------------------------------------------------------- /internet/pcap/capture_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/pcap/capture_test.go -------------------------------------------------------------------------------- /internet/pcap/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/pcap/stringers.go -------------------------------------------------------------------------------- /internet/stack-ethernet.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/stack-ethernet.go -------------------------------------------------------------------------------- /internet/stack-ip.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/stack-ip.go -------------------------------------------------------------------------------- /internet/stack-ports.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/stack-ports.go -------------------------------------------------------------------------------- /internet/stack-udpport.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/stack-udpport.go -------------------------------------------------------------------------------- /internet/stackbasic_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/internet/stackbasic_test.go -------------------------------------------------------------------------------- /ipv4/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv4/definitions.go -------------------------------------------------------------------------------- /ipv4/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv4/frame.go -------------------------------------------------------------------------------- /ipv4/frame_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv4/frame_test.go -------------------------------------------------------------------------------- /ipv4/icmpv4/icmpv4.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv4/icmpv4/icmpv4.go -------------------------------------------------------------------------------- /ipv6/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv6/definitions.go -------------------------------------------------------------------------------- /ipv6/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ipv6/frame.go -------------------------------------------------------------------------------- /lneto_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/lneto_test.go -------------------------------------------------------------------------------- /ntp/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ntp/client.go -------------------------------------------------------------------------------- /ntp/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ntp/definitions.go -------------------------------------------------------------------------------- /ntp/ntp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ntp/ntp.go -------------------------------------------------------------------------------- /ntp/ntp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/ntp/ntp_test.go -------------------------------------------------------------------------------- /stackbasic: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/stackbasic -------------------------------------------------------------------------------- /stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/stringers.go -------------------------------------------------------------------------------- /tcp/conn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/conn.go -------------------------------------------------------------------------------- /tcp/control.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/control.go -------------------------------------------------------------------------------- /tcp/control_rcvhandlers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/control_rcvhandlers.go -------------------------------------------------------------------------------- /tcp/debug.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/debug.go -------------------------------------------------------------------------------- /tcp/definitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/definitions.go -------------------------------------------------------------------------------- /tcp/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/frame.go -------------------------------------------------------------------------------- /tcp/handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/handler.go -------------------------------------------------------------------------------- /tcp/handler_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/handler_test.go -------------------------------------------------------------------------------- /tcp/internal_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/internal_test.go -------------------------------------------------------------------------------- /tcp/stringers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/stringers.go -------------------------------------------------------------------------------- /tcp/tcp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/tcp_test.go -------------------------------------------------------------------------------- /tcp/txqueue.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/txqueue.go -------------------------------------------------------------------------------- /tcp/txqueue_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/txqueue_test.go -------------------------------------------------------------------------------- /tcp/valuesize.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/tcp/valuesize.go -------------------------------------------------------------------------------- /udp/definitions.go: -------------------------------------------------------------------------------- 1 | package udp 2 | 3 | const ( 4 | sizeHeader = 8 5 | ) 6 | -------------------------------------------------------------------------------- /udp/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/udp/frame.go -------------------------------------------------------------------------------- /validation.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/validation.go -------------------------------------------------------------------------------- /x/xnet/stack-async.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/x/xnet/stack-async.go -------------------------------------------------------------------------------- /x/xnet/stack-blocking.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/x/xnet/stack-blocking.go -------------------------------------------------------------------------------- /x/xnet/stack-retrying.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/x/xnet/stack-retrying.go -------------------------------------------------------------------------------- /x/xnet/xnet_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/soypat/lneto/HEAD/x/xnet/xnet_test.go --------------------------------------------------------------------------------