24 Commits

Author SHA1 Message Date
Pat Whittingslow aa77403a2b passive MAC learning and ARP cache revamp (#96)
* begin working on arp cache

* fix little things

* rework arp cache priority

* fix test

* keep working on ARP

* push changes before thinking about ip prefix issue

* add passive peer MAC setting

* patch egress mac with correct ethernet CRCs

* consolidate subnet learning in subnetTable type

* add tests and fix subnet table bug
2026-04-24 23:34:53 -03:00
Pat Whittingslow 68461b4416 arp fixes for #70 (#71) 2026-04-11 11:08:06 -03:00
Pat Whittingslow 63f7870fe5 Add round-robin implementation (#66)
* add handler.encapsulateNode

* implement round robin handler approach

* simplify round robin implementation

* leave TODO

* internet.node touch up

* fix conflict resolve f-up

* replace certain ErrShortBuffer with ErrTruncatedFrame error
2026-04-09 09:36:17 -03:00
Pat Whittingslow fa5ba918bb Error rewrites (#43)
* pcap: reuse Frame memory

* slog: reduce heap allocations of addresses; also prevent heap alloc of dhcp options in pcap

* dns: heapless improvement; add StackAsync buffer for more heapless operation; start thinking of errors

* errors: begin standardise errors in lneto

* errors: finish standardization of errors

* fix merge issues

* add more lneto errors to rest of package

* format errors.go
2026-02-28 16:18:27 -03:00
Pat Whittingslow 989bb6a0b9 Reduce heap allocs 2 (#46)
* reduce heap allocations in tcp logging; omit use of AppendFloat which allocates a metric sh*tton

* debugheaplog: better heap statistic logging

* heap: use string for pcap.Frame.Protocol

* add potential to eliminate Flags.String heap alloc, remove incorrect HEAP comments

* add StackAsync.DebugErr and httpraw.SetBytes

* many heap alloc reductions and replacement of bytes.Equal with internal.BytesEqual
2026-02-28 15:20:46 -03:00
Patricio Whittingslow 76f896af40 use common internal logger among all implementations(debugheaplog build tag) 2026-02-26 17:06:47 -03:00
Patricio Whittingslow f51cdf74b6 fix couple bugs in ARP and add benchmarks 2026-01-13 10:15:18 -03:00
Egon Elbre be2d380753 arp: fixes to implementation (#18)
* typo in error text
* compactQueries was keeping invalid queries
* compactQueries accidentally ended up creating shared slices
2026-01-12 17:27:26 -03:00
Patricio Whittingslow 8307403c5c add subnet to StackAsync and add test for local arp resolving 2025-12-30 18:00:50 -03:00
Pat Whittingslow db8c7c1322 Merge pull request #11 from ddirect/local-arp-tcp-fixes
local-arp-tcp branch fixes
2025-12-30 16:30:20 -03:00
Patricio Whittingslow 890fd33b22 do not increment ARP connectionID on IP addr update 2025-12-28 15:43:12 -03:00
ddirect b9fbe0d25d Minor fixes 2025-12-28 18:30:47 +02:00
ddirect 48847af1e4 Preliminary patch to avoid ARP to stop working after resetting it. 2025-12-28 18:13:40 +02:00
Patricio Whittingslow f6bc73ee6c apply some of @ddirect suggestions 2025-12-22 18:41:14 -03:00
Patricio Whittingslow 1554b89a08 StackNode refactor: add offsetToIP argument to Encapsulate 2025-12-19 00:38:28 -03:00
Patricio Whittingslow 2b79b6a314 use sentlist in ringTx implementation and back to square 1 2025-11-03 23:51:05 -03:00
soypat a257becf15 major ARP Handler refactor; DNS improvements; bridge example rework 2025-07-09 22:49:13 -03:00
soypat 6b511999d1 begin testing tcp listener (not working) 2025-06-09 20:38:40 -03:00
soypat 6cf5896543 continue reworking StackNode implementations 2025-06-07 11:59:56 -03:00
soypat 55bc765d92 begin adding packet capture functionality 2025-06-01 13:04:43 -03:00
soypat d5d729b961 refactor lneto2->lneto package 2025-03-06 23:11:42 -03:00
soypat f86bb6f01a remove legacy remnants and move ip,udp,ethernet logic into subpackages 2025-02-20 16:00:55 -03:00
soypat 0606a04f45 arp working over network 2025-02-18 18:48:55 -03:00
soypat 6e9aafc1e0 add ARP; add tap internal calls; more lneto2 additions 2025-02-17 23:49:37 -03:00