Page MenuHomeFreeBSD

Remove compatibility with old libpcap.
ClosedPublic

Authored by delphij on Feb 15 2017, 8:14 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 4, 4:26 PM
Unknown Object (File)
Thu, Apr 4, 4:09 PM
Unknown Object (File)
Thu, Apr 4, 3:51 PM
Unknown Object (File)
Sat, Mar 30, 2:18 AM
Unknown Object (File)
Mar 22 2024, 10:22 PM
Unknown Object (File)
Mar 22 2024, 10:22 PM
Unknown Object (File)
Mar 22 2024, 10:22 PM
Unknown Object (File)
Mar 8 2024, 6:37 AM

Details

Summary

Remove compatibility with old libpcap.

Test Plan

md5(1) of object file

Diff Detail

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

Event Timeline

delphij retitled this revision from to Remove compatibility with old libpcap..
delphij updated this object.
delphij edited the test plan for this revision. (Show Details)
delphij added reviewers: gnn, pkelsey.

This makes sense to me from the standpoint of the removed code being unnecessary given that it is being maintained as part of a version of libpcap that doesn't require it.

Are updates to this file periodically, or even at-some-point-theoretically, merged in from an upstream netmap repo? If so, removing this code locally would create an additional maintenance burden for us later, and maybe then removing it isn't worth it as it is otherwise harmless.

This makes sense to me from the standpoint of the removed code being unnecessary given that it is being maintained as part of a version of libpcap that doesn't require it.

Are updates to this file periodically, or even at-some-point-theoretically, merged in from an upstream netmap repo? If so, removing this code locally would create an additional maintenance burden for us later, and maybe then removing it isn't worth it as it is otherwise harmless.

Previously the code is hosted at Google code and that become read-only.

I think Luigi have another repository here: https://github.com/luigirizzo/netmap-libpcap but the code haven't been updated for some time.

The main motivation is that the pcap internal interfaces changes quite frequently, and it have become more and more burdensome to maintain the compatibility shims with older pcap versions (see rS313695, for instance, that we technically need additional #ifdef's to maintain compatibility with older pcap versions).

Is there some reason that the netmap related changes are not upstreamed to the main libpcap project? My understanding is the code is no longer being actively developed, and it would be beneficial if it's included in the official libpcap perhaps?

pkelsey edited edge metadata.

Previously the code is hosted at Google code and that become read-only.

I think Luigi have another repository here: https://github.com/luigirizzo/netmap-libpcap but the code haven't been updated for some time.

The main motivation is that the pcap internal interfaces changes quite frequently, and it have become more and more burdensome to maintain the compatibility shims with older pcap versions (see rS313695, for instance, that we technically need additional #ifdef's to maintain compatibility with older pcap versions).

Thanks for the context, which makes this patch seem worthwhile to me.

Is there some reason that the netmap related changes are not upstreamed to the main libpcap project? My understanding is the code is no longer being actively developed, and it would be beneficial if it's included in the official libpcap perhaps?

I'm not aware of any reason why the netmap-related changes have not been upstreamed to the main libpcap project, and it certainly seems like something that would be useful to do.

This revision is now accepted and ready to land.Feb 15 2017, 8:10 PM
This revision was automatically updated to reflect the committed changes.

Previously the code is hosted at Google code and that become read-only.

I think Luigi have another repository here: https://github.com/luigirizzo/netmap-libpcap but the code haven't been updated for some time.

The main motivation is that the pcap internal interfaces changes quite frequently, and it have become more and more burdensome to maintain the compatibility shims with older pcap versions (see rS313695, for instance, that we technically need additional #ifdef's to maintain compatibility with older pcap versions).

Thanks for the context, which makes this patch seem worthwhile to me.

Is there some reason that the netmap related changes are not upstreamed to the main libpcap project? My understanding is the code is no longer being actively developed, and it would be beneficial if it's included in the official libpcap perhaps?

I'm not aware of any reason why the netmap-related changes have not been upstreamed to the main libpcap project, and it certainly seems like something that would be useful to do.

It was proposed back in 2014, and there was a lot of discussion, but I didn't have the bandwidth to continue the discussion. I've just added it to the master branch in libpcap now that it's in FreeBSD; I'll see what to do about the unresolved issues from the 2014 discussion.

*Eventually*, I'd like to stabilize the source and binary interface for pcap "modules", to the extent that third-party packages can add their own modules (even in binary form), but that means making sure there's an interface that won't require disruptive changes for future additions, so that's "eventually" not "soon".