Page MenuHomeFreeBSD

Use lladdr_event to propagate gratiotus arp.
ClosedPublic

Authored by melifaro on Oct 27 2015, 8:55 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 26, 12:36 AM
Unknown Object (File)
Mar 22 2024, 4:33 AM
Unknown Object (File)
Mar 22 2024, 4:33 AM
Unknown Object (File)
Mar 22 2024, 4:33 AM
Unknown Object (File)
Mar 22 2024, 4:33 AM
Unknown Object (File)
Mar 21 2024, 2:38 PM
Unknown Object (File)
Feb 17 2024, 10:16 PM
Unknown Object (File)
Jan 7 2024, 6:15 PM
Subscribers

Details

Summary

Currently we explicitly call ARP code from if_setlladdr() inside if.c.
We already have lladdr_event for internal subscribers like vlan.
Given that, add remaining hooks to make event work reliably (depends on D4004) and
convert ARP handler to use event instead of direct calls inside if.c

Test Plan

Create vlan on top of physical interface, run tcpdump for arp ethertype on both physical and vlan interfaces.
Change physical interface lladdr to different value, wait a bit and change it back.
You should see 2 arp who-has on both physical and vlan interfaces.

More complicated lagg-related examples exists in D4004.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

melifaro retitled this revision from to Use lladdr_event to propagate gratiotus arp..
melifaro updated this object.
melifaro edited the test plan for this revision. (Show Details)
melifaro added a reviewer: network.
ae added a reviewer: ae.
ae added a subscriber: ae.

Looks reasonable for me.

This revision is now accepted and ready to land.Nov 9 2015, 9:09 AM
melifaro edited edge metadata.

Pre-commit sync. Split announce logic from event handler. Register handler
only for default VNET.

This revision now requires review to proceed.Nov 9 2015, 9:55 AM
This revision was automatically updated to reflect the committed changes.