Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Oct 2022 12:56:15 -0400
From:      Shawn Webb <shawn.webb@hardenedbsd.org>
To:        Cy Schubert <Cy.Schubert@cschubert.com>
Cc:        "Alexander V. Chernikov" <melifaro@ipfw.ru>, "src-committers@freebsd.org" <src-committers@FreeBSD.org>, "dev-commits-src-all@freebsd.org" <dev-commits-src-all@FreeBSD.org>, "dev-commits-src-main@freebsd.org" <dev-commits-src-main@FreeBSD.org>
Subject:   Re: git: 7e5bf68495cc - main - netlink: add netlink support
Message-ID:  <20221001165615.fv2g4qya56m3ukn2@mutt-hbsd>
In-Reply-To: <20221001165140.52BCE5AF@slippy.cwsent.com>
References:  <202210011419.291EJ3aa000309@gitrepo.freebsd.org> <20221001163510.gkvfycmi224ei5ok@mutt-hbsd> <3A024E22-7FA8-4465-88EB-7DC7B1320095@ipfw.ru> <20221001164556.guh2gu6umjvehq3r@mutt-hbsd> <20221001165140.52BCE5AF@slippy.cwsent.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--pwqzdrro2ttq5swb
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Oct 01, 2022 at 09:51:40AM -0700, Cy Schubert wrote:
> In message <20221001164556.guh2gu6umjvehq3r@mutt-hbsd>, Shawn Webb writes:
> >=20
> > --iwomfqhvgfyzurjf
> > Content-Type: text/plain; charset=3Dutf-8
> > Content-Disposition: inline
> > Content-Transfer-Encoding: quoted-printable
> >
> > On Sat, Oct 01, 2022 at 05:40:05PM +0100, Alexander V. Chernikov wrote:
> > >=3D20
> > > > On 1 Oct 2022, at 17:35, Shawn Webb <shawn.webb@hardenedbsd.org> wr=
ote:
> > > >=3D20
> > > > On Sat, Oct 01, 2022 at 02:19:03PM +0000, Alexander V. Chernikov wr=
ote:
> > > >> The branch main has been updated by melifaro:
> > > >>=3D20
> > > >> URL: https://cgit.FreeBSD.org/src/commit/?id=3D3D7e5bf68495cc0a8c9=
793a33=3D
> > 8a8a02009a7f6dbb6
> > > >>=3D20
> > > >> commit 7e5bf68495cc0a8c9793a338a8a02009a7f6dbb6
> > > >> Author:     Alexander V. Chernikov <melifaro@FreeBSD.org>
> > > >> AuthorDate: 2022-01-20 21:39:21 +0000
> > > >> Commit:     Alexander V. Chernikov <melifaro@FreeBSD.org>
> > > >> CommitDate: 2022-10-01 14:15:35 +0000
> > > >>=3D20
> > > >>   netlink: add netlink support
> > > >>=3D20
> > > >>   Netlinks is a communication protocol currently used in Linux ker=
nel =3D
> > to modify,
> > > >>    read and subscribe for nearly all networking state. Interfaces,=
 add=3D
> > resses, routes,
> > > >>    firewall, fibs, vnets, etc are controlled via netlink.
> > > >>   It is async, TLV-based protocol, providing 1-1 and 1-many commun=
icat=3D
> > ions.
> > > >>=3D20
> > > >>   The current implementation supports the subset of NETLINK_ROUTE
> > > >>   family. To be more specific, the following is supported:
> > > >>   * Dumps:
> > > >>    - routes
> > > >>    - nexthops / nexthop groups
> > > >>    - interfaces
> > > >>    - interface addresses
> > > >>    - neighbors (arp/ndp)
> > > >>   * Notifications:
> > > >>    - interface arrival/departure
> > > >>    - interface address arrival/departure
> > > >>    - route addition/deletion
> > > >>   * Modifications:
> > > >>    - adding/deleting routes
> > > >>    - adding/deleting nexthops/nexthops groups
> > > >>    - adding/deleting neghbors
> > > >>    - adding/deleting interfaces (basic support only)
> > > >>   * Rtsock interaction
> > > >>    - route events are bridged both ways
> > > >>=3D20
> > > >>   The implementation also supports the NETLINK_GENERIC family fram=
ewor=3D
> > k.
> > > >>=3D20
> > > >>   Implementation notes:
> > > >>   Netlink is implemented via loadable/unloadable kernel module,
> > > >>    not touching many kernel parts.
> > > >>   Each netlink socket uses dedicated taskqueue to support async op=
erat=3D
> > ions
> > > >>    that can sleep, such as interface creation. All message process=
ing =3D
> > is
> > > >>    performed within these taskqueues.
> > > >>=3D20
> > > >>   Compatibility:
> > > >>   Most of the Netlink data models specified above maps to FreeBSD =
conc=3D
> > epts
> > > >>    nicely. Unmodified ip(8) binary correctly works with
> > > >>   interfaces, addresses, routes, nexthops and nexthop groups. Some
> > > >>   software such as net/bird require header-only modifications to c=
ompi=3D
> > le
> > > >>   and work with FreeBSD netlink.
> > > >>=3D20
> > > >>   Reviewed by:    imp
> > > >>   Differential Revision: https://reviews.freebsd.org/D36002
> > > >>   MFC after:      2 months
> > > >> ---
> > > >> etc/mtree/BSD.include.dist           |    4 +
> > > >> sys/modules/Makefile                 |    1 +
> > > >> sys/modules/netlink/Makefile         |   17 +
> > > >> sys/net/route.c                      |   11 +
> > > >> sys/net/route/route_ctl.h            |    7 +
> > > >> sys/net/rtsock.c                     |   42 ++
> > > >> sys/netlink/netlink.h                |  257 +++++++++
> > > >> sys/netlink/netlink_ctl.h            |  102 ++++
> > > >> sys/netlink/netlink_debug.h          |   82 +++
> > > >> sys/netlink/netlink_domain.c         |  689 +++++++++++++++++++++++
> > > >> sys/netlink/netlink_generic.c        |  472 ++++++++++++++++
> > > >> sys/netlink/netlink_generic.h        |  112 ++++
> > > >> sys/netlink/netlink_io.c             |  528 ++++++++++++++++++
> > > >> sys/netlink/netlink_linux.h          |   54 ++
> > > >> sys/netlink/netlink_message_parser.c |  472 ++++++++++++++++
> > > >> sys/netlink/netlink_message_parser.h |  270 +++++++++
> > > >> sys/netlink/netlink_message_writer.c |  686 +++++++++++++++++++++++
> > > >> sys/netlink/netlink_message_writer.h |  250 +++++++++
> > > >> sys/netlink/netlink_module.c         |  228 ++++++++
> > > >> sys/netlink/netlink_route.c          |  135 +++++
> > > >> sys/netlink/netlink_route.h          |   43 ++
> > > >> sys/netlink/netlink_var.h            |  142 +++++
> > > >> sys/netlink/route/common.h           |  213 ++++++++
> > > >> sys/netlink/route/iface.c            |  857 ++++++++++++++++++++++=
++++=3D
> > +++
> > > >> sys/netlink/route/iface_drivers.c    |  165 ++++++
> > > >> sys/netlink/route/ifaddrs.h          |   90 +++
> > > >> sys/netlink/route/interface.h        |  245 +++++++++
> > > >> sys/netlink/route/neigh.c            |  571 +++++++++++++++++++
> > > >> sys/netlink/route/neigh.h            |  105 ++++
> > > >> sys/netlink/route/nexthop.c          | 1000 ++++++++++++++++++++++=
++++=3D
> > ++++++++
> > > >> sys/netlink/route/nexthop.h          |  102 ++++
> > > >> sys/netlink/route/route.c            |  972 ++++++++++++++++++++++=
++++=3D
> > +++++++
> > > >> sys/netlink/route/route.h            |  366 +++++++++++++
> > > >> sys/netlink/route/route_var.h        |  101 ++++
> > > >> 34 files changed, 9391 insertions(+)
> > > >>=3D20
> > > >=3D20
> > > > Hey Alexander,
> > > >=3D20
> > > > This commit broke buildworld:
> > > Should be fixed by 11ca01e9aa47 (currently building to see if that=3D=
E2=3D80=3D
> > =3D99s the last one)
> >
> > Cool. Thanks!
> >
> > Tangentially related: it looks like the commit email for 11ca01e9aa47
> > is missing. I checked my spam folder just to make sure on my end.
>=20
> It's not missing. He hasn't pushed it yet. Alexander's statement in=20
> brackets "()" implies he hasn't pushed it yet.
>=20
> ** Though, the hash will change should a rebase be needed between the tim=
e=20
> he committed it and it is pushed.

cgit shows that it was pushed:
https://cgit.freebsd.org/src/commit/?id=3D11ca01e9aa479559da240ceba17fdcdf2=
d1e97c3

Or am I misreading cgit?

--=20
Shawn Webb
Cofounder / Security Engineer
HardenedBSD

https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A=
4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc

--pwqzdrro2ttq5swb
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAmM4cSkACgkQ/y5nonf4
4fqbmQ/8CTzsTm8oT1XNLnI7JrSMO8AHKg74grp4+RRwnFKLUL8M008k4+7KtKCP
3lQk+dLohAw1SBcc4RtXiuDrur1mwoA3ANpVj5Rb9U0XWfRgRdk6KCsT/hJ7e1GT
Z/E1UAFL2RICYiFBIPHFE55vdGZ6ytpDLPqMR7lY8nXSpI0tmfvOUPUa+7igWxAB
Irf8Ln05psmBri1n9YkiFp1lFIy8SldZzFCfHDfXm5ApbGQmscsX1AI1TFx8tGur
q5vXCwPcCQ58kJjVu96vqZ/+mlBkUhdKGVLOwcHbTpQP90ifbHT9Gd2AYhd2MKap
PLHYjRD8QZGyrpjYqlS8PhcWK/MYV7W6lrxWz4PejOn2aZkgsDX+LXd3Mv8dkjQL
xGNkSjfJ8F0H4Z6YwJECvayxpdJz0xFcQCeaZ+CNvg+0ByK6GRBHs3n7tLPIMp+I
OrBLDmpl0sgRIqyeM9D6OBqxC8VBqCVnrIA6K5PzBc7LAcgLKePT7E0nYk1eDrP9
WFzINJ9NDU9h3LAKeq4aGAsX01vp/dWeJtwiwsMKbWIJE4I6UFKQMn41QXDL6NUm
8bkpG9LferJNFizMmo1GjFROdgPFc8xmr+LtffFG8c4GTlZjyvp/OHbWz3cAjBYq
igqKEacy87qTit4OXqV95/4TemKJxE6FKCdZ4Khl0QzmuN2iWJE=
=NbQo
-----END PGP SIGNATURE-----

--pwqzdrro2ttq5swb--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20221001165615.fv2g4qya56m3ukn2>