On Tue, Mar 16, 2021 at 12:23:31AM +0100, Klemens Nanni wrote:
> On Sat, Mar 13, 2021 at 11:45:30PM +0100, Claudio Jeker wrote:
> > On Sat, Mar 13, 2021 at 11:31:05PM +0100, Klemens Nanni wrote:
> > > First off: I've never used mpe(4), mpw(4) or mpip(4);  this occured to
> > > me while looking at ifconfig.{c,8} in general.
> > > 
> > > 
> > > 1. bug: ifconfig(8) forgets to document both `-tunneldomain' and
> > > `-mplslabel' in the first place, diff below fixes that.
> > > 
> > > 
> > > 2. bug: mpe(4) supports SIOCDELLABEL it but the driver manual's list
> > > does not list it as such;  instead of adding it, remove the rather
> > > useless list completely (neither of the other two drivers lists ioctls
> > > as most manuals do not).  diff below fixes that.
> > > 
> > 
> > I think this is bad. Driver specific ioctls should be documented. How else
> > will you know how to configure a device?
> Fair point, that'd drop the last reference to them;  I thought of the
> netintro(4)'s INTERFACES when writing the diff but that section
> obviously doesn't cover driver specifics (doh!).
> 
> New diff below which
> - documents SIOCDELLABEL
> - uses an IOCTL section losely adopted from bridge(4)
> - mentions the other two drivers as well
> - .Xr all three MPLS drivers among each other
> 
> I briefly checked the ioctl handlers for both mpip(4)'s and mpe(4)'s
> which *do* and *do not* unset the label respectively, but their code is
> the same;  I'd appreciate looks from someone knowledgable in MPLS.
> 
> Hence this is only the first step, i.e. write the docs - then we can
> still improve in-tree possibly while fixing/improving the code.
> 
> None of the MPLS drivers document any of the other MPLS specific ioctls
> and I don't want to throw everything into one big diff anyway.
> 
> The ifconfig.8 bits should be fine already since they're simply
> documenting what ifconfig.c really does.
> 
> Feedback? Objections OK?
> 

Looks like a good start. On comment below.
 
> Index: share/man/man4/mpe.4
> ===================================================================
> RCS file: /cvs/src/share/man/man4/mpe.4,v
> retrieving revision 1.10
> diff -u -p -r1.10 mpe.4
> --- share/man/man4/mpe.4      12 Jan 2018 04:36:44 -0000      1.10
> +++ share/man/man4/mpe.4      15 Mar 2021 23:08:19 -0000
> @@ -39,9 +39,15 @@ configuration file for
>  The interface itself can be configured with
>  .Xr ifconfig 8 ;
>  see its manual page for more information.
> -.Pp
> -.Nm
> -interfaces support the following unique ioctls:
> +.Sh IOCTLS
> +The following
> +.Nm ioctl 2
> +calls are specific to
> +.Nm ,
> +.Xr mpip 4
> +and
> +.Xr mpw 4
> +interfaces:
>  .Bl -tag -width "SIOCSETLABEL" -offset 3n
>  .It SIOCSETLABEL
>  Encapsulate packets entering this interface in MPLS using
> @@ -49,17 +55,21 @@ the specified label.
>  .It SIOCGETLABEL
>  Report the label that packets entering this interface will be
>  tagged with.
> +.It SIOCDELLABEL
> +Unset the MPLS label.
>  .El
>  .\"
>  .Sh SEE ALSO
>  .Xr sysctl 2 ,
> +.Xr mpip 4 ,
> +.Xr mpw 4 ,
>  .Xr hostname.if 5 ,
>  .Xr ifconfig 8 ,
>  .Xr ldpd 8 ,
>  .Xr netstart 8
>  .\"
>  .Sh HISTORY
> -The
> +The ,

Why did you add this ',' that looks strange to me.

>  .Nm
>  device first appeared in
>  .Ox 4.4 .
> Index: share/man/man4/mpip.4
> ===================================================================
> RCS file: /cvs/src/share/man/man4/mpip.4,v
> retrieving revision 1.2
> diff -u -p -r1.2 mpip.4
> --- share/man/man4/mpip.4     11 Mar 2019 18:55:29 -0000      1.2
> +++ share/man/man4/mpip.4     15 Mar 2021 22:15:41 -0000
> @@ -60,6 +60,8 @@ Transport of Pseudowires:
>  # ifconfig mpip5 -pwecw pwefat
>  .Ed
>  .Sh SEE ALSO
> +.Xr mpe 4 ,
> +.Xr mpw 4 ,
>  .Xr hostname.if 5 ,
>  .Xr ifconfig 8 ,
>  .Xr ldpd 8 ,
> Index: share/man/man4/mpw.4
> ===================================================================
> RCS file: /cvs/src/share/man/man4/mpw.4,v
> retrieving revision 1.8
> diff -u -p -r1.8 mpw.4
> --- share/man/man4/mpw.4      3 Apr 2019 06:24:07 -0000       1.8
> +++ share/man/man4/mpw.4      15 Mar 2021 22:15:43 -0000
> @@ -85,6 +85,8 @@ using different identifiers for their pr
>  # ifconfig bridge0 protected mpw12 1
>  .Ed
>  .Sh SEE ALSO
> +.Xr mpe 4 ,
> +.Xr mpip 4 ,
>  .Xr hostname.if 5 ,
>  .Xr ifconfig 8 ,
>  .Xr ldpd 8 ,
> Index: sbin/ifconfig/ifconfig.8
> ===================================================================
> RCS file: /cvs/src/sbin/ifconfig/ifconfig.8,v
> retrieving revision 1.369
> diff -u -p -r1.369 ifconfig.8
> --- sbin/ifconfig/ifconfig.8  11 Mar 2021 21:07:16 -0000      1.369
> +++ sbin/ifconfig/ifconfig.8  13 Mar 2021 22:11:14 -0000
> @@ -1433,11 +1433,11 @@ is omitted, it is decreased by 1.
>  .Bk -words
>  .Nm ifconfig
>  .Ar mpls-interface
> -.Op Cm mplslabel Ar mpls-label
> +.Op Oo Fl Oc Ns Cm mplslabel Ar mpls-label
>  .Op Oo Fl Oc Ns Cm pwecw
>  .Op Oo Fl Oc Ns Cm pwefat
>  .Op Cm pweneighbor Ar mpls-label Ar neighbor
> -.Op Cm tunneldomain Ar rdomain
> +.Op Oo Fl Oc Ns Cm tunneldomain Ar rdomain
>  .Ek
>  .nr nS 0
>  .Pp
> @@ -1455,12 +1455,16 @@ MPLS packets sent to this label on the l
>  decapsulated for input.
>  An MPLS label is a 20-bit number.
>  Labels 0 to 15 inclusive are reserved labels and cannot be used.
> +.It Cm -mplslabel
> +Unset the local MPLS label.
>  .It Cm tunneldomain Ar rdomain
> -Use the route domain
> +Use the routing domain
>  .Ar rdomain
>  for MPLS transit.
>  The MPLS encapsulated traffic does not need to terminate in the same
>  routing domain as the interface itself.
> +.It Cm -tunneldomain
> +Use the default routing domain 0 for MPLS transit.
>  .El
>  .Pp
>  The following options are available for the
> 

-- 
:wq Claudio

Reply via email to