Page MenuHomeFreeBSD

bootpd: add support for disabling ARP cache modifications
ClosedPublic

Authored by feld on May 19 2015, 1:25 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, May 3, 9:49 AM
Unknown Object (File)
Wed, May 1, 6:35 PM
Unknown Object (File)
Tue, Apr 30, 4:19 PM
Unknown Object (File)
Tue, Apr 30, 1:38 PM
Unknown Object (File)
Mon, Apr 29, 3:18 PM
Unknown Object (File)
Thu, Apr 25, 7:32 PM
Unknown Object (File)
Mar 11 2024, 11:37 AM
Unknown Object (File)
Mar 11 2024, 11:36 AM

Details

Summary

I ran into someone on the mailing list who has been applying this patch
for 14 years. The PR, #30854 has a patch which almost applies cleanly to
HEAD still so I fixed the minor conflict and added a man page entry.

Seeing how this still applies quite cleanly after 14 years and there's
*someone* out there who desires this functionality it seems harmless to
let it into the tree to save this guy pain every time he updates his
favorite OS. (He has a bunch of other ignored PRs too, but that's a
different conversation)

Diff Detail

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

Event Timeline

feld retitled this revision from to bootpd: add support for disabling ARP cache modifications.
feld updated this object.
feld edited the test plan for this revision. (Show Details)
feld added a subscriber: allanjude.
imp added a reviewer: imp.

Other than hating the double indirection through no, not and false, this is a good one.
That is to say, negative options can be hard to follow. But in this case it isn't too
horrible, so I don't object on that basis.

This revision is now accepted and ready to land.May 19 2015, 4:01 PM
In D2581#47961, @imp wrote:

Other than hating the double indirection through no, not and false, this is a good one.
That is to say, negative options can be hard to follow. But in this case it isn't too
horrible, so I don't object on that basis.

Changing the name of the variable from noarp to arpmod and inverting the logic would make it a lot easier to read. Other than that, the -a flag usually means "all", possibly not a big deal here.

After learning of this PR+patch sitting for ~14 years, seeking it out, updating it, pushing into Phabric... the author admitted in a bugzilla comment that he (finally) no longer uses this.

So I guess now it's a matter of "does anyone really care?" I get the concept and why one would want to use this. I personally have no use for it, but maybe someone out there does.

But if not, please close this and we'll move on.

I would like to note that he still has a handful of open PRs with patches that have been left to rot. It sounded to me like he has a lot of other patches but keeps them local and in sync with the latest releases as the effort to submit has not been worth it. That makes me sad.

As I'm author of the original report, I would like to clarify details. The issue addresses by this proposal still exist and the patch solve them. I no longer use BOOTPD for network management (we are using DHCPD instead). In the fact, I'm not sure there is even one actively maintained installation using BOOTPD on the today's world.

In short, I'm no longer personally interested in this patch, but it doesn't change it's effect for others.

I don't care the exact value name nor command line option.

Just one more note - despite I'm not using the patch now, I used it for long time, so it may be considered "verified in production".

Despite not on the current FreeBSD version ...

But BOOTPD source code has not been changed in the past ten years or so.

Does anyone feel this is worthwhile or is there a better chance that bootpd will be removed in the near-ish future?

feld edited edge metadata.

rename noarp to arpmod per wblock@ suggestion

This revision now requires review to proceed.Sep 12 2015, 7:17 PM
feld edited edge metadata.

Missed a few noarp -> arpmod renames

feld edited edge metadata.

repeat, sorry for the noise :(

feld edited edge metadata.

Build was successful when I opened this review.
It stopped working (new clang?) due to error:

/usr/src/libexec/bootpd/bootpgw/bootpgw.c -o bootpgw.o
/usr/src/libexec/bootpd/bootpgw/bootpgw.c:662:18: error: use of undeclared identifier 'dst'

inet_ntoa(dst), haddrtoa(ha, len));
          ^

/usr/src/libexec/bootpd/bootpgw/bootpgw.c:663:14: error: use of undeclared identifier 'dst'

setarp(s, &dst, haf, ha, len);

Solve by defining just like in libexec/bootpd/bootpd.c

feld edited edge metadata.

Restore whitespace I clobbered

This revision is now accepted and ready to land.Sep 12 2015, 8:15 PM

IMO ought to be committed.

I'm still tuned, but 17 years after PR filled I lost most of hope and enthusiasm.

This revision was automatically updated to reflect the committed changes.