From 7850f3c9a52d34d1a104c9a96795de664f727f77 Mon Sep 17 00:00:00 2001 From: Josh Deprez Date: Sat, 13 Apr 2024 17:48:57 +1000 Subject: [PATCH] debuggin --- aarp.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/aarp.go b/aarp.go index 336d9f3..e4b765c 100644 --- a/aarp.go +++ b/aarp.go @@ -138,7 +138,12 @@ func (a *AARPMachine) Run(ctx context.Context, incomingCh <-chan *ethertalk.Pack a.addressMappingTable.Learn(aapkt.Src.Proto, aapkt.Src.Hardware) log.Printf("AARP: Gleaned that %d.%d -> %v", aapkt.Src.Proto.Network, aapkt.Src.Proto.Node, aapkt.Src.Hardware) - if !(aapkt.Dst.Proto == a.myAddr.Proto && a.assigned) { + if aapkt.Dst.Proto != a.myAddr.Proto { + log.Printf("AARP: not replying to request for %d.%d (not my address)", aapkt.Dst.Proto.Network, aapkt.Dst.Proto.Node) + continue + } + if !a.assigned { + log.Printf("AARP: not replying to request for %d.%d (address still tentative)", aapkt.Dst.Proto.Network, aapkt.Dst.Proto.Node) continue } @@ -251,6 +256,7 @@ func (a *AARPMachine) heyThatsMe(targ aarp.AddrPair) error { if err != nil { return err } + log.Printf("AARP: sending packet %+v", respFrame) // Instead of broadcasting the reply, send it to the target specifically respFrame.Dst = targ.Hardware respFrameRaw, err := ethertalk.Marshal(*respFrame)