Bug 219622 - [NEW PORT] net/ndproxy: Implementation of IPv6 Neighbor Discovery proxy
Summary: [NEW PORT] net/ndproxy: Implementation of IPv6 Neighbor Discovery proxy
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Richard Gallamore
URL:
Keywords: easy, feature
Depends on:
Blocks:
 
Reported: 2017-05-28 20:54 UTC by Alexandre Fenyo
Modified: 2017-08-08 23:12 UTC (History)
3 users (show)

See Also:
koobs: maintainer-feedback+


Attachments
ndproxy port shell archive (6.77 KB, text/plain)
2017-05-28 20:54 UTC, Alexandre Fenyo
no flags Details
updated port shell archive (5.94 KB, text/plain)
2017-06-21 19:27 UTC, Alexandre Fenyo
no flags Details
ndproxy 2.0 port shell archive (5.93 KB, patch)
2017-07-25 23:27 UTC, Alexandre Fenyo
no flags Details | Diff
poudriere log files (6.33 KB, application/x-gzip)
2017-07-25 23:30 UTC, Alexandre Fenyo
no flags Details
additional poudriere log files for 11.1 Release (4.48 KB, application/x-gzip)
2017-07-27 00:41 UTC, Alexandre Fenyo
no flags Details
additional poudriere log files for FreeBSD 12 (svn version 321619) (4.51 KB, application/x-gzip)
2017-07-30 18:14 UTC, Alexandre Fenyo
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandre Fenyo 2017-05-28 20:54:04 UTC
Created attachment 183016 [details]
ndproxy port shell archive

By this report, I submit the last version (1.11) of the NDPROXY port, since I've closed the first attempt to publish the initial version in the FreeBSD ports tree (version 1.1 in bug ID #200243) after about 1 year or more with no response.

This new version compiles and works correctly on FreeBSD 10.x, 11.x and CURRENT (12.x).

I've recently received emails for potential users that want to use it on FreeBSD 11 (they discovered NDPROXY on GitHub, on which I had published a standalone version), so I've ported it to FreeBSD 11 and CURRENT (12) and I submit this to the ports tree.

Many Thanks,
Sincerely,
Comment 1 Alexandre Fenyo 2017-06-21 11:31:32 UTC
Please, can you process this proposal for adding NDProxy in the ports tree ?
Many thanks,
Sincerely,
Comment 2 Jov 2017-06-21 12:03:14 UTC
Comment on attachment 183016 [details]
ndproxy port shell archive

Thanks for your work,some advices:
WRKSRC GH_PROJECT NO_PACKAGE are not needed
${MV} -f work/ndproxy-${PORTVERSION} work/sources should be removed
pre-everything is not needed,USE=kmod is enough.

Kernel module shoud be installed into /boot/module

Add portlint -AC output
Comment 3 Alexandre Fenyo 2017-06-21 19:27:01 UTC
Created attachment 183688 [details]
updated port shell archive

Thanks for your advices, I've applied all of them in this updated attachement:

- I've solved every warning and errors reported by portlint

- I've removed useless variables (WRKSRC, GH_PROJECT, NO_PACKAGE)

- I've removed "${MV} -f work/ndproxy-${PORTVERSION} work/sources" from the Makefile

- I've remove "pre-everything" Makefile target

- I've changed the module installation directory to ${STAGEDIR}${KMODDIR} (/boot/module)

Then I've updated files/ndproxy.in according to the previous changes (I've removed kldconfig calls since the module is now in the default /boot/module directory).
And I've finally moved pkg-message to files/pkg-message.in in order to replace the string /usr/local by %%PREFIX%%

I've tested this new version and everything seems OK.

Many thanks,
Sincerely,
Comment 4 Alexandre Fenyo 2017-06-27 23:53:22 UTC
Hi,

Can you tell me about the next steps for me to have this port included in the ports tree?

Do I need to check or modify something, or does the latest shell archive attachement be sufficient for you to include the port in the tree?

Many many thanks,
Sincerely,
Comment 5 Alexandre Fenyo 2017-07-17 16:23:24 UTC
Please, can you import this new port into the ports tree?
Many Thanks,
Comment 6 Kubilay Kocak freebsd_committer freebsd_triage 2017-07-18 12:52:45 UTC
Thank you for your contribution Alexandre,

It's quite normal for there to be a delay/queue associated with new ports, so hang tight :)

One thing I can suggest that may assist/prompt action is to confirm that this port passes QA. I see that you have run portlint, but further testing with poudriere can identify major issues associated with ports that portlint cant.

For more information and instructions, see: https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/testing.html
Comment 7 Alexandre Fenyo 2017-07-22 22:49:57 UTC
Many thanks for your advices: I've tested the port with poudriere and I've discovered some warnings while compiling this port on FreeBSD releases that make use of clang 4.0.0: between FreeBSD 11.0 and 11.1-RC3, clang has been updated from 3.8.0 to 4.0.0 and the new warning -Waddress-of-packed-member is raised by this port.

During the same time, people on the freebsd-net list discovered two bugs: https://lists.freebsd.org/pipermail/freebsd-net/2017-July/048538.html

I've merged their patches on the dist files at GitHub.

=> I will soon attach here a new version of the port including those updates.

Thanks,
Sincerely,
Comment 8 Kubilay Kocak freebsd_committer freebsd_triage 2017-07-23 12:38:50 UTC
Comment on attachment 183016 [details]
ndproxy port shell archive

Pending new patch
Comment 9 Kubilay Kocak freebsd_committer freebsd_triage 2017-07-23 12:39:00 UTC
Comment on attachment 183688 [details]
updated port shell archive

Pending new patch
Comment 10 Alexandre Fenyo 2017-07-25 23:27:17 UTC
Created attachment 184712 [details]
ndproxy 2.0 port shell archive

Here is the final port shell archive in this attachment.

It has passed tests with poudriere for targets 10.3-amd64, 10.3-i386, 11.0-amd64, 11.0-i386, 11.1RC3-amd64 and 11.1RC3-i386.

It includes every updates referred previously, including the patch to avoid the -Waddress-of-packed-member warning with clang 4.0.0 and the patches proposed on the FreeBSD-net mailing list : https://lists.freebsd.org/pipermail/freebsd-net/2017-July/048538.html
Comment 11 Alexandre Fenyo 2017-07-25 23:30:44 UTC
Created attachment 184713 [details]
poudriere log files

Hi,

Please find the attached archive containing the poudriere log files for targets 10.3-amd64, 10.3-i386, 11.0-amd64, 11.0-i386, 11.1RC3-amd64 and 11.1RC3-i386.

Sincerely,
Comment 12 Alexandre Fenyo 2017-07-27 00:41:20 UTC
Created attachment 184753 [details]
additional poudriere log files for 11.1 Release

Please find the attached archive containing the poudriere log files for the 11.1-RELEASE available for a few days, on i386 and amd64
Comment 13 Alexandre Fenyo 2017-07-30 18:14:10 UTC
Created attachment 184854 [details]
additional poudriere log files for FreeBSD 12 (svn version 321619)

Please find the attached archive containing the poudriere log files for FreeBSD current (svn head@321619), for i386 and amd64
Comment 14 Alexandre Fenyo 2017-07-30 18:17:08 UTC
Please, could you import this new port into the ports tree.

Everything seems to work fine (passed portlint and poudriere).

Many thanks,
Sincerely,
Comment 15 Richard Gallamore freebsd_committer freebsd_triage 2017-08-06 03:04:36 UTC
Port looks great, I found a couple items, but going to just add them. Thanks for your persistence with adding this port I think it is ready to be added. I wanted this a couple years back myself =]
Comment 16 Alexandre Fenyo 2017-08-07 07:31:09 UTC
Many thanks.
Comment 17 commit-hook freebsd_committer freebsd_triage 2017-08-08 22:07:40 UTC
A commit references this bug:

Author: ultima
Date: Tue Aug  8 22:06:40 UTC 2017
New revision: 447578
URL: https://svnweb.freebsd.org/changeset/ports/447578

Log:
  The ndproxy(4) kernel module implements IPv6 Neighbor Discovery
  proxying with many options to handle several use-cases.

  It replies to a neighbor solicitation with a specific neighbor
  advertisement, in order to let the PE uplink router send further
  packets to a CPE downlink router, that may or may not be the same
  node that the one which runs ndproxy.

  The main difference with the ndp(8) command-line tool is that, with
  ndproxy(4), the host running ndp can be used only to redirect
  packets to another IPv6 internal router, for instance a dedicated
  one with hardware support of IPv6 routing processes.

  WWW: http://www.fenyo.net/newweb/ndproxy.html

  PR:		219622
  Submitted by:	Alexandre Fenyo (maintainer)
  Reviewed by:	matthew (mentor), mat
  Approved by:	matthew (mentor)
  Differential Revision:	https://reviews.freebsd.org/D11892

Changes:
  head/net/Makefile
  head/net/ndproxy/
  head/net/ndproxy/Makefile
  head/net/ndproxy/distinfo
  head/net/ndproxy/files/
  head/net/ndproxy/files/ndproxy.in
  head/net/ndproxy/files/pkg-message.in
  head/net/ndproxy/pkg-descr
Comment 18 Richard Gallamore freebsd_committer freebsd_triage 2017-08-08 22:08:47 UTC
Committed, thanks!
Comment 19 Alexandre Fenyo 2017-08-08 23:12:51 UTC
Many thanks to you, Richard.

Sincerely,