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)
Tue, Nov 5, 8:52 AM
Unknown Object (File)
Thu, Oct 24, 9:51 PM
Unknown Object (File)
Oct 12 2024, 10:40 PM
Unknown Object (File)
Oct 2 2024, 10:59 AM
Unknown Object (File)
Sep 30 2024, 7:18 PM
Unknown Object (File)
Sep 24 2024, 11:42 PM
Unknown Object (File)
Sep 24 2024, 8:00 PM
Unknown Object (File)
Sep 16 2024, 5:40 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 Passed
Unit
No Test Coverage
Build Status
Buildable 947
Build 947: arc lint + arc unit

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.