diff --git a/src_code/netstack/ilist/list.go b/src_code/tcpip/netstack/ilist/list.go similarity index 100% rename from src_code/netstack/ilist/list.go rename to src_code/tcpip/netstack/ilist/list.go diff --git a/src_code/netstack/rand/rand.go b/src_code/tcpip/netstack/rand/rand.go similarity index 100% rename from src_code/netstack/rand/rand.go rename to src_code/tcpip/netstack/rand/rand.go diff --git a/src_code/netstack/sleep/commit_amd64.s b/src_code/tcpip/netstack/sleep/commit_amd64.s similarity index 100% rename from src_code/netstack/sleep/commit_amd64.s rename to src_code/tcpip/netstack/sleep/commit_amd64.s diff --git a/src_code/netstack/sleep/commit_asm.go b/src_code/tcpip/netstack/sleep/commit_asm.go similarity index 100% rename from src_code/netstack/sleep/commit_asm.go rename to src_code/tcpip/netstack/sleep/commit_asm.go diff --git a/src_code/netstack/sleep/commit_noasm.go b/src_code/tcpip/netstack/sleep/commit_noasm.go similarity index 100% rename from src_code/netstack/sleep/commit_noasm.go rename to src_code/tcpip/netstack/sleep/commit_noasm.go diff --git a/src_code/netstack/sleep/empty.s b/src_code/tcpip/netstack/sleep/empty.s similarity index 100% rename from src_code/netstack/sleep/empty.s rename to src_code/tcpip/netstack/sleep/empty.s diff --git a/src_code/netstack/sleep/sleep_test.go b/src_code/tcpip/netstack/sleep/sleep_test.go similarity index 100% rename from src_code/netstack/sleep/sleep_test.go rename to src_code/tcpip/netstack/sleep/sleep_test.go diff --git a/src_code/netstack/sleep/sleep_unsafe.go b/src_code/tcpip/netstack/sleep/sleep_unsafe.go similarity index 100% rename from src_code/netstack/sleep/sleep_unsafe.go rename to src_code/tcpip/netstack/sleep/sleep_unsafe.go diff --git a/src_code/netstack/tcpip/buffer/prependable.go b/src_code/tcpip/netstack/tcpip/buffer/prependable.go similarity index 100% rename from src_code/netstack/tcpip/buffer/prependable.go rename to src_code/tcpip/netstack/tcpip/buffer/prependable.go diff --git a/src_code/netstack/tcpip/buffer/view.go b/src_code/tcpip/netstack/tcpip/buffer/view.go similarity index 100% rename from src_code/netstack/tcpip/buffer/view.go rename to src_code/tcpip/netstack/tcpip/buffer/view.go diff --git a/src_code/netstack/tcpip/buffer/view_test.go b/src_code/tcpip/netstack/tcpip/buffer/view_test.go similarity index 100% rename from src_code/netstack/tcpip/buffer/view_test.go rename to src_code/tcpip/netstack/tcpip/buffer/view_test.go diff --git a/src_code/netstack/tcpip/checker/checker.go b/src_code/tcpip/netstack/tcpip/checker/checker.go similarity index 100% rename from src_code/netstack/tcpip/checker/checker.go rename to src_code/tcpip/netstack/tcpip/checker/checker.go diff --git a/src_code/netstack/tcpip/header/arp.go b/src_code/tcpip/netstack/tcpip/header/arp.go similarity index 100% rename from src_code/netstack/tcpip/header/arp.go rename to src_code/tcpip/netstack/tcpip/header/arp.go diff --git a/src_code/netstack/tcpip/header/checksum.go b/src_code/tcpip/netstack/tcpip/header/checksum.go similarity index 100% rename from src_code/netstack/tcpip/header/checksum.go rename to src_code/tcpip/netstack/tcpip/header/checksum.go diff --git a/src_code/netstack/tcpip/header/eth.go b/src_code/tcpip/netstack/tcpip/header/eth.go similarity index 100% rename from src_code/netstack/tcpip/header/eth.go rename to src_code/tcpip/netstack/tcpip/header/eth.go diff --git a/src_code/netstack/tcpip/header/gue.go b/src_code/tcpip/netstack/tcpip/header/gue.go similarity index 100% rename from src_code/netstack/tcpip/header/gue.go rename to src_code/tcpip/netstack/tcpip/header/gue.go diff --git a/src_code/netstack/tcpip/header/icmpv4.go b/src_code/tcpip/netstack/tcpip/header/icmpv4.go similarity index 100% rename from src_code/netstack/tcpip/header/icmpv4.go rename to src_code/tcpip/netstack/tcpip/header/icmpv4.go diff --git a/src_code/netstack/tcpip/header/icmpv6.go b/src_code/tcpip/netstack/tcpip/header/icmpv6.go similarity index 100% rename from src_code/netstack/tcpip/header/icmpv6.go rename to src_code/tcpip/netstack/tcpip/header/icmpv6.go diff --git a/src_code/netstack/tcpip/header/interfaces.go b/src_code/tcpip/netstack/tcpip/header/interfaces.go similarity index 100% rename from src_code/netstack/tcpip/header/interfaces.go rename to src_code/tcpip/netstack/tcpip/header/interfaces.go diff --git a/src_code/netstack/tcpip/header/ipv4.go b/src_code/tcpip/netstack/tcpip/header/ipv4.go similarity index 100% rename from src_code/netstack/tcpip/header/ipv4.go rename to src_code/tcpip/netstack/tcpip/header/ipv4.go diff --git a/src_code/netstack/tcpip/header/ipv6.go b/src_code/tcpip/netstack/tcpip/header/ipv6.go similarity index 100% rename from src_code/netstack/tcpip/header/ipv6.go rename to src_code/tcpip/netstack/tcpip/header/ipv6.go diff --git a/src_code/netstack/tcpip/header/ipv6_fragment.go b/src_code/tcpip/netstack/tcpip/header/ipv6_fragment.go similarity index 100% rename from src_code/netstack/tcpip/header/ipv6_fragment.go rename to src_code/tcpip/netstack/tcpip/header/ipv6_fragment.go diff --git a/src_code/netstack/tcpip/header/ipversion_test.go b/src_code/tcpip/netstack/tcpip/header/ipversion_test.go similarity index 100% rename from src_code/netstack/tcpip/header/ipversion_test.go rename to src_code/tcpip/netstack/tcpip/header/ipversion_test.go diff --git a/src_code/netstack/tcpip/header/tcp.go b/src_code/tcpip/netstack/tcpip/header/tcp.go similarity index 100% rename from src_code/netstack/tcpip/header/tcp.go rename to src_code/tcpip/netstack/tcpip/header/tcp.go diff --git a/src_code/netstack/tcpip/header/tcp_test.go b/src_code/tcpip/netstack/tcpip/header/tcp_test.go similarity index 100% rename from src_code/netstack/tcpip/header/tcp_test.go rename to src_code/tcpip/netstack/tcpip/header/tcp_test.go diff --git a/src_code/netstack/tcpip/header/udp.go b/src_code/tcpip/netstack/tcpip/header/udp.go similarity index 100% rename from src_code/netstack/tcpip/header/udp.go rename to src_code/tcpip/netstack/tcpip/header/udp.go diff --git a/src_code/netstack/tcpip/link/channel/channel.go b/src_code/tcpip/netstack/tcpip/link/channel/channel.go similarity index 100% rename from src_code/netstack/tcpip/link/channel/channel.go rename to src_code/tcpip/netstack/tcpip/link/channel/channel.go diff --git a/src_code/netstack/tcpip/link/fdbased/endpoint.go b/src_code/tcpip/netstack/tcpip/link/fdbased/endpoint.go similarity index 100% rename from src_code/netstack/tcpip/link/fdbased/endpoint.go rename to src_code/tcpip/netstack/tcpip/link/fdbased/endpoint.go diff --git a/src_code/netstack/tcpip/link/fdbased/endpoint_test.go b/src_code/tcpip/netstack/tcpip/link/fdbased/endpoint_test.go similarity index 100% rename from src_code/netstack/tcpip/link/fdbased/endpoint_test.go rename to src_code/tcpip/netstack/tcpip/link/fdbased/endpoint_test.go diff --git a/src_code/netstack/tcpip/link/loopback/loopback.go b/src_code/tcpip/netstack/tcpip/link/loopback/loopback.go similarity index 100% rename from src_code/netstack/tcpip/link/loopback/loopback.go rename to src_code/tcpip/netstack/tcpip/link/loopback/loopback.go diff --git a/src_code/netstack/tcpip/link/rawfile/blockingpoll_unsafe.go b/src_code/tcpip/netstack/tcpip/link/rawfile/blockingpoll_unsafe.go similarity index 100% rename from src_code/netstack/tcpip/link/rawfile/blockingpoll_unsafe.go rename to src_code/tcpip/netstack/tcpip/link/rawfile/blockingpoll_unsafe.go diff --git a/src_code/netstack/tcpip/link/rawfile/errors.go b/src_code/tcpip/netstack/tcpip/link/rawfile/errors.go similarity index 100% rename from src_code/netstack/tcpip/link/rawfile/errors.go rename to src_code/tcpip/netstack/tcpip/link/rawfile/errors.go diff --git a/src_code/netstack/tcpip/link/rawfile/rawfile_unsafe.go b/src_code/tcpip/netstack/tcpip/link/rawfile/rawfile_unsafe.go similarity index 100% rename from src_code/netstack/tcpip/link/rawfile/rawfile_unsafe.go rename to src_code/tcpip/netstack/tcpip/link/rawfile/rawfile_unsafe.go diff --git a/src_code/netstack/tcpip/link/sniffer/pcap.go b/src_code/tcpip/netstack/tcpip/link/sniffer/pcap.go similarity index 100% rename from src_code/netstack/tcpip/link/sniffer/pcap.go rename to src_code/tcpip/netstack/tcpip/link/sniffer/pcap.go diff --git a/src_code/netstack/tcpip/link/sniffer/sniffer.go b/src_code/tcpip/netstack/tcpip/link/sniffer/sniffer.go similarity index 100% rename from src_code/netstack/tcpip/link/sniffer/sniffer.go rename to src_code/tcpip/netstack/tcpip/link/sniffer/sniffer.go diff --git a/src_code/netstack/tcpip/link/tuntap/tuntap.go b/src_code/tcpip/netstack/tcpip/link/tuntap/tuntap.go similarity index 100% rename from src_code/netstack/tcpip/link/tuntap/tuntap.go rename to src_code/tcpip/netstack/tcpip/link/tuntap/tuntap.go diff --git a/src_code/netstack/tcpip/network/arp/arp.go b/src_code/tcpip/netstack/tcpip/network/arp/arp.go similarity index 100% rename from src_code/netstack/tcpip/network/arp/arp.go rename to src_code/tcpip/netstack/tcpip/network/arp/arp.go diff --git a/src_code/netstack/tcpip/network/arp/arp_test.go b/src_code/tcpip/netstack/tcpip/network/arp/arp_test.go similarity index 100% rename from src_code/netstack/tcpip/network/arp/arp_test.go rename to src_code/tcpip/netstack/tcpip/network/arp/arp_test.go diff --git a/src_code/netstack/tcpip/network/fragmentation/frag_heap.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/frag_heap.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/frag_heap.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/frag_heap.go diff --git a/src_code/netstack/tcpip/network/fragmentation/frag_heap_test.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/frag_heap_test.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/frag_heap_test.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/frag_heap_test.go diff --git a/src_code/netstack/tcpip/network/fragmentation/fragmentation.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/fragmentation.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/fragmentation.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/fragmentation.go diff --git a/src_code/netstack/tcpip/network/fragmentation/fragmentation_test.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/fragmentation_test.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/fragmentation_test.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/fragmentation_test.go diff --git a/src_code/netstack/tcpip/network/fragmentation/reassembler.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/reassembler.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler.go diff --git a/src_code/netstack/tcpip/network/fragmentation/reassembler_list.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler_list.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/reassembler_list.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler_list.go diff --git a/src_code/netstack/tcpip/network/fragmentation/reassembler_test.go b/src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler_test.go similarity index 100% rename from src_code/netstack/tcpip/network/fragmentation/reassembler_test.go rename to src_code/tcpip/netstack/tcpip/network/fragmentation/reassembler_test.go diff --git a/src_code/netstack/tcpip/network/hash/hash.go b/src_code/tcpip/netstack/tcpip/network/hash/hash.go similarity index 100% rename from src_code/netstack/tcpip/network/hash/hash.go rename to src_code/tcpip/netstack/tcpip/network/hash/hash.go diff --git a/src_code/netstack/tcpip/network/ip_test.go b/src_code/tcpip/netstack/tcpip/network/ip_test.go similarity index 100% rename from src_code/netstack/tcpip/network/ip_test.go rename to src_code/tcpip/netstack/tcpip/network/ip_test.go diff --git a/src_code/netstack/tcpip/network/ipv4/icmp.go b/src_code/tcpip/netstack/tcpip/network/ipv4/icmp.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv4/icmp.go rename to src_code/tcpip/netstack/tcpip/network/ipv4/icmp.go diff --git a/src_code/netstack/tcpip/network/ipv4/ipv4.go b/src_code/tcpip/netstack/tcpip/network/ipv4/ipv4.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv4/ipv4.go rename to src_code/tcpip/netstack/tcpip/network/ipv4/ipv4.go diff --git a/src_code/netstack/tcpip/network/ipv4/ipv4_test.go b/src_code/tcpip/netstack/tcpip/network/ipv4/ipv4_test.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv4/ipv4_test.go rename to src_code/tcpip/netstack/tcpip/network/ipv4/ipv4_test.go diff --git a/src_code/netstack/tcpip/network/ipv6/icmp.go b/src_code/tcpip/netstack/tcpip/network/ipv6/icmp.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv6/icmp.go rename to src_code/tcpip/netstack/tcpip/network/ipv6/icmp.go diff --git a/src_code/netstack/tcpip/network/ipv6/icmp_test.go b/src_code/tcpip/netstack/tcpip/network/ipv6/icmp_test.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv6/icmp_test.go rename to src_code/tcpip/netstack/tcpip/network/ipv6/icmp_test.go diff --git a/src_code/netstack/tcpip/network/ipv6/ipv6.go b/src_code/tcpip/netstack/tcpip/network/ipv6/ipv6.go similarity index 100% rename from src_code/netstack/tcpip/network/ipv6/ipv6.go rename to src_code/tcpip/netstack/tcpip/network/ipv6/ipv6.go diff --git a/src_code/netstack/tcpip/ports/ports.go b/src_code/tcpip/netstack/tcpip/ports/ports.go similarity index 100% rename from src_code/netstack/tcpip/ports/ports.go rename to src_code/tcpip/netstack/tcpip/ports/ports.go diff --git a/src_code/netstack/tcpip/ports/ports_test.go b/src_code/tcpip/netstack/tcpip/ports/ports_test.go similarity index 100% rename from src_code/netstack/tcpip/ports/ports_test.go rename to src_code/tcpip/netstack/tcpip/ports/ports_test.go diff --git a/src_code/netstack/tcpip/seqnum/seqnum.go b/src_code/tcpip/netstack/tcpip/seqnum/seqnum.go similarity index 100% rename from src_code/netstack/tcpip/seqnum/seqnum.go rename to src_code/tcpip/netstack/tcpip/seqnum/seqnum.go diff --git a/src_code/netstack/tcpip/stack/linkaddrcache.go b/src_code/tcpip/netstack/tcpip/stack/linkaddrcache.go similarity index 100% rename from src_code/netstack/tcpip/stack/linkaddrcache.go rename to src_code/tcpip/netstack/tcpip/stack/linkaddrcache.go diff --git a/src_code/netstack/tcpip/stack/linkaddrcache_test.go b/src_code/tcpip/netstack/tcpip/stack/linkaddrcache_test.go similarity index 100% rename from src_code/netstack/tcpip/stack/linkaddrcache_test.go rename to src_code/tcpip/netstack/tcpip/stack/linkaddrcache_test.go diff --git a/src_code/netstack/tcpip/stack/nic.go b/src_code/tcpip/netstack/tcpip/stack/nic.go similarity index 100% rename from src_code/netstack/tcpip/stack/nic.go rename to src_code/tcpip/netstack/tcpip/stack/nic.go diff --git a/src_code/netstack/tcpip/stack/registration.go b/src_code/tcpip/netstack/tcpip/stack/registration.go similarity index 100% rename from src_code/netstack/tcpip/stack/registration.go rename to src_code/tcpip/netstack/tcpip/stack/registration.go diff --git a/src_code/netstack/tcpip/stack/route.go b/src_code/tcpip/netstack/tcpip/stack/route.go similarity index 100% rename from src_code/netstack/tcpip/stack/route.go rename to src_code/tcpip/netstack/tcpip/stack/route.go diff --git a/src_code/netstack/tcpip/stack/stack.go b/src_code/tcpip/netstack/tcpip/stack/stack.go similarity index 100% rename from src_code/netstack/tcpip/stack/stack.go rename to src_code/tcpip/netstack/tcpip/stack/stack.go diff --git a/src_code/netstack/tcpip/stack/stack_test.go b/src_code/tcpip/netstack/tcpip/stack/stack_test.go similarity index 100% rename from src_code/netstack/tcpip/stack/stack_test.go rename to src_code/tcpip/netstack/tcpip/stack/stack_test.go diff --git a/src_code/netstack/tcpip/stack/transport_demuxer.go b/src_code/tcpip/netstack/tcpip/stack/transport_demuxer.go similarity index 100% rename from src_code/netstack/tcpip/stack/transport_demuxer.go rename to src_code/tcpip/netstack/tcpip/stack/transport_demuxer.go diff --git a/src_code/netstack/tcpip/stack/transport_test.go b/src_code/tcpip/netstack/tcpip/stack/transport_test.go similarity index 100% rename from src_code/netstack/tcpip/stack/transport_test.go rename to src_code/tcpip/netstack/tcpip/stack/transport_test.go diff --git a/src_code/netstack/tcpip/tcpip.go b/src_code/tcpip/netstack/tcpip/tcpip.go similarity index 100% rename from src_code/netstack/tcpip/tcpip.go rename to src_code/tcpip/netstack/tcpip/tcpip.go diff --git a/src_code/netstack/tcpip/tcpip_test.go b/src_code/tcpip/netstack/tcpip/tcpip_test.go similarity index 100% rename from src_code/netstack/tcpip/tcpip_test.go rename to src_code/tcpip/netstack/tcpip/tcpip_test.go diff --git a/src_code/netstack/tcpip/time.s b/src_code/tcpip/netstack/tcpip/time.s similarity index 100% rename from src_code/netstack/tcpip/time.s rename to src_code/tcpip/netstack/tcpip/time.s diff --git a/src_code/netstack/tcpip/time_unsafe.go b/src_code/tcpip/netstack/tcpip/time_unsafe.go similarity index 100% rename from src_code/netstack/tcpip/time_unsafe.go rename to src_code/tcpip/netstack/tcpip/time_unsafe.go diff --git a/src_code/netstack/tcpip/transport/ping/endpoint.go b/src_code/tcpip/netstack/tcpip/transport/ping/endpoint.go similarity index 100% rename from src_code/netstack/tcpip/transport/ping/endpoint.go rename to src_code/tcpip/netstack/tcpip/transport/ping/endpoint.go diff --git a/src_code/netstack/tcpip/transport/ping/ping_packet_list.go b/src_code/tcpip/netstack/tcpip/transport/ping/ping_packet_list.go similarity index 100% rename from src_code/netstack/tcpip/transport/ping/ping_packet_list.go rename to src_code/tcpip/netstack/tcpip/transport/ping/ping_packet_list.go diff --git a/src_code/netstack/tcpip/transport/ping/protocol.go b/src_code/tcpip/netstack/tcpip/transport/ping/protocol.go similarity index 100% rename from src_code/netstack/tcpip/transport/ping/protocol.go rename to src_code/tcpip/netstack/tcpip/transport/ping/protocol.go diff --git a/src_code/netstack/tcpip/transport/tcp/accept.go b/src_code/tcpip/netstack/tcpip/transport/tcp/accept.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/accept.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/accept.go diff --git a/src_code/netstack/tcpip/transport/tcp/connect.go b/src_code/tcpip/netstack/tcpip/transport/tcp/connect.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/connect.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/connect.go diff --git a/src_code/netstack/tcpip/transport/tcp/cubic.go b/src_code/tcpip/netstack/tcpip/transport/tcp/cubic.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/cubic.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/cubic.go diff --git a/src_code/netstack/tcpip/transport/tcp/dual_stack_test.go b/src_code/tcpip/netstack/tcpip/transport/tcp/dual_stack_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/dual_stack_test.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/dual_stack_test.go diff --git a/src_code/netstack/tcpip/transport/tcp/endpoint.go b/src_code/tcpip/netstack/tcpip/transport/tcp/endpoint.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/endpoint.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/endpoint.go diff --git a/src_code/netstack/tcpip/transport/tcp/forwarder.go b/src_code/tcpip/netstack/tcpip/transport/tcp/forwarder.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/forwarder.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/forwarder.go diff --git a/src_code/netstack/tcpip/transport/tcp/protocol.go b/src_code/tcpip/netstack/tcpip/transport/tcp/protocol.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/protocol.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/protocol.go diff --git a/src_code/netstack/tcpip/transport/tcp/rcv.go b/src_code/tcpip/netstack/tcpip/transport/tcp/rcv.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/rcv.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/rcv.go diff --git a/src_code/netstack/tcpip/transport/tcp/reno.go b/src_code/tcpip/netstack/tcpip/transport/tcp/reno.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/reno.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/reno.go diff --git a/src_code/netstack/tcpip/transport/tcp/sack.go b/src_code/tcpip/netstack/tcpip/transport/tcp/sack.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/sack.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/sack.go diff --git a/src_code/netstack/tcpip/transport/tcp/segment.go b/src_code/tcpip/netstack/tcpip/transport/tcp/segment.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/segment.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/segment.go diff --git a/src_code/netstack/tcpip/transport/tcp/segment_heap.go b/src_code/tcpip/netstack/tcpip/transport/tcp/segment_heap.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/segment_heap.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/segment_heap.go diff --git a/src_code/netstack/tcpip/transport/tcp/segment_queue.go b/src_code/tcpip/netstack/tcpip/transport/tcp/segment_queue.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/segment_queue.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/segment_queue.go diff --git a/src_code/netstack/tcpip/transport/tcp/snd.go b/src_code/tcpip/netstack/tcpip/transport/tcp/snd.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/snd.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/snd.go diff --git a/src_code/netstack/tcpip/transport/tcp/tcp_sack_test.go b/src_code/tcpip/netstack/tcpip/transport/tcp/tcp_sack_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/tcp_sack_test.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/tcp_sack_test.go diff --git a/src_code/netstack/tcpip/transport/tcp/tcp_segment_list.go b/src_code/tcpip/netstack/tcpip/transport/tcp/tcp_segment_list.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/tcp_segment_list.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/tcp_segment_list.go diff --git a/src_code/netstack/tcpip/transport/tcp/tcp_test.go b/src_code/tcpip/netstack/tcpip/transport/tcp/tcp_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/tcp_test.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/tcp_test.go diff --git a/src_code/netstack/tcpip/transport/tcp/tcp_timestamp_test.go b/src_code/tcpip/netstack/tcpip/transport/tcp/tcp_timestamp_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/tcp_timestamp_test.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/tcp_timestamp_test.go diff --git a/src_code/netstack/tcpip/transport/tcp/testing/context/context.go b/src_code/tcpip/netstack/tcpip/transport/tcp/testing/context/context.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/testing/context/context.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/testing/context/context.go diff --git a/src_code/netstack/tcpip/transport/tcp/timer.go b/src_code/tcpip/netstack/tcpip/transport/tcp/timer.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcp/timer.go rename to src_code/tcpip/netstack/tcpip/transport/tcp/timer.go diff --git a/src_code/netstack/tcpip/transport/tcpconntrack/tcp_conntrack.go b/src_code/tcpip/netstack/tcpip/transport/tcpconntrack/tcp_conntrack.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcpconntrack/tcp_conntrack.go rename to src_code/tcpip/netstack/tcpip/transport/tcpconntrack/tcp_conntrack.go diff --git a/src_code/netstack/tcpip/transport/tcpconntrack/tcp_conntrack_test.go b/src_code/tcpip/netstack/tcpip/transport/tcpconntrack/tcp_conntrack_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/tcpconntrack/tcp_conntrack_test.go rename to src_code/tcpip/netstack/tcpip/transport/tcpconntrack/tcp_conntrack_test.go diff --git a/src_code/netstack/tcpip/transport/udp/endpoint.go b/src_code/tcpip/netstack/tcpip/transport/udp/endpoint.go similarity index 100% rename from src_code/netstack/tcpip/transport/udp/endpoint.go rename to src_code/tcpip/netstack/tcpip/transport/udp/endpoint.go diff --git a/src_code/netstack/tcpip/transport/udp/protocol.go b/src_code/tcpip/netstack/tcpip/transport/udp/protocol.go similarity index 100% rename from src_code/netstack/tcpip/transport/udp/protocol.go rename to src_code/tcpip/netstack/tcpip/transport/udp/protocol.go diff --git a/src_code/netstack/tcpip/transport/udp/udp_packet_list.go b/src_code/tcpip/netstack/tcpip/transport/udp/udp_packet_list.go similarity index 100% rename from src_code/netstack/tcpip/transport/udp/udp_packet_list.go rename to src_code/tcpip/netstack/tcpip/transport/udp/udp_packet_list.go diff --git a/src_code/netstack/tcpip/transport/udp/udp_test.go b/src_code/tcpip/netstack/tcpip/transport/udp/udp_test.go similarity index 100% rename from src_code/netstack/tcpip/transport/udp/udp_test.go rename to src_code/tcpip/netstack/tcpip/transport/udp/udp_test.go diff --git a/src_code/netstack/tmutex/tmutex.go b/src_code/tcpip/netstack/tmutex/tmutex.go similarity index 100% rename from src_code/netstack/tmutex/tmutex.go rename to src_code/tcpip/netstack/tmutex/tmutex.go diff --git a/src_code/netstack/tmutex/tmutex_test.go b/src_code/tcpip/netstack/tmutex/tmutex_test.go similarity index 100% rename from src_code/netstack/tmutex/tmutex_test.go rename to src_code/tcpip/netstack/tmutex/tmutex_test.go diff --git a/src_code/netstack/waiter/waiter.go b/src_code/tcpip/netstack/waiter/waiter.go similarity index 100% rename from src_code/netstack/waiter/waiter.go rename to src_code/tcpip/netstack/waiter/waiter.go diff --git a/src_code/netstack/waiter/waiter_test.go b/src_code/tcpip/netstack/waiter/waiter_test.go similarity index 100% rename from src_code/netstack/waiter/waiter_test.go rename to src_code/tcpip/netstack/waiter/waiter_test.go diff --git a/tcpip/tcpip.go b/tcpip/tcpip.go new file mode 100644 index 0000000..1e7f38a --- /dev/null +++ b/tcpip/tcpip.go @@ -0,0 +1,31 @@ +package tcpip + +type Error struct { + msg string + ignoreStats bool +} + +func (err *Error) String() string { + return err.msg +} + +func (err *Error) IgnoreStats() bool { + return err.ignoreStats +} + +var ( + ErrUnknowProtovol = &Error{msg: "unknown protocol"} + ErrUnknowNICID = &Error{msg: "unknown nic id"} + ErrUnknowProtocolOption = &Error{msg: "unknown option for protocol"} + ErrDuplicateNICID = &Error{msg: "duplicate nic id"} + ErrDuplicateAddress = &Error{msg: "duplicate address"} + ErrNoRoute = &Error{msg: "no route"} + ErrBadLinkEndPoint = &Error{msg: "bad link layer endpoint"} + ErrAlreadyBound = &Error{msg: "endpoint already bound", ignoreStats: true} + ErrInvalidEndpointState = &Error{msg: "endpoint is in invalid state"} + ErrAlreadConnecting = &Error{msg: "endpoint is already connecting", ignoreStats: true} + ErrAlreadConnected = &Error{msg: "endpoint is already connected", ignoreStats: true} + ErrNoPortAvailable = &Error{msg: "no port are available"} + ErrPortInUse = &Error{msg: "port is in use"} + ErrBadLocalAddress = & +)