Re: git: 779fd0534466 - main - ifconfig: improve vlan options parsing
- In reply to: John Baldwin : "Re: git: 779fd0534466 - main - ifconfig: improve vlan options parsing"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 29 Jan 2022 11:20:41 UTC
> On 28 Jan 2022, at 17:34, John Baldwin <jhb@FreeBSD.org> wrote: > > On 1/17/22 1:35 AM, Alexander V. Chernikov wrote: >> The branch main has been updated by melifaro: >> URL: https://cgit.FreeBSD.org/src/commit/?id=779fd05344662aeec79c29470258bf657318eab3 >> commit 779fd05344662aeec79c29470258bf657318eab3 >> Author: Alexander V. Chernikov <melifaro@FreeBSD.org> >> AuthorDate: 2022-01-17 09:30:26 +0000 >> Commit: Alexander V. Chernikov <melifaro@FreeBSD.org> >> CommitDate: 2022-01-17 09:35:15 +0000 >> ifconfig: improve vlan options parsing >> PR: 261136 >> Reported by: Daniel O'Connor >> MFC after: 2 weeks >> --- >> sbin/ifconfig/ifvlan.c | 21 ++++++++++++++------- >> 1 file changed, 14 insertions(+), 7 deletions(-) >> diff --git a/sbin/ifconfig/ifvlan.c b/sbin/ifconfig/ifvlan.c >> index 60f97338ee27..1e74b504fc26 100644 >> --- a/sbin/ifconfig/ifvlan.c >> +++ b/sbin/ifconfig/ifvlan.c >> @@ -144,8 +139,20 @@ vlan_parse_ethervid(const char *name) >> if ((*cp != '\0') || (vid & ~0xFFF)) >> errx(1, "invalid vlan tag"); >> - strlcpy(params.vlr_parent, ifname, IFNAMSIZ); >> - params.vlr_tag = (vid & 0xFFF); >> + /* >> + * allow "devX.Y vlandev devX vlan Y" syntax >> + */ >> + if (params.vlr_tag == NOTAG || params.vlr_tag == vid) >> + params.vlr_tag = vid; >> + else >> + errx(1, "ambiguous vlan specification"); >> + >> + /* Restrict overriding interface name */ >> + if (params.vlr_parent[0] == '\0' || !strcmp(params.vlr_parent, ifname)) >> + strlcpy(params.vlr_parent, ifname, IFNAMSIZ); >> + else >> + errx(1, "ambiguous vlan specification"); >> + printf("CR: %s %d\n", params.vlr_parent, params.vlr_tag); > > Did you mean to leave this printf in? I see it when adding a vlan interface now: No, I didn’t - it slipped through the cracks. Fixed in 656f5031c391. > > root@frodo:~ # ifconfig cxl0.200 create > CR: cxl0 200 > > -- > John Baldwin