mirror of
https://github.com/opnsense/src.git
synced 2026-02-18 18:20:26 -05:00
ifconfig: Add format shortcuts.
MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D45166 (cherry picked from commit 847ef59d4b5eab234bd1f8eb947ad74bdab5614e) ifconfig: Markup nits. MFC after: 3 days Reviewed by: imp, allanjude Differential Revision: https://reviews.freebsd.org/D45209 (cherry picked from commit 42b28f815214aa582fe4ca707687d3af47850230)
This commit is contained in:
parent
14efb9bb71
commit
dd1a16c9e2
2 changed files with 48 additions and 26 deletions
|
|
@ -27,7 +27,7 @@
|
|||
.\"
|
||||
.\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94
|
||||
.\"
|
||||
.Dd November 08, 2023
|
||||
.Dd May 12, 2024
|
||||
.Dt IFCONFIG 8
|
||||
.Os
|
||||
.Sh NAME
|
||||
|
|
@ -137,7 +137,7 @@ and their associated
|
|||
.Ar format
|
||||
strings are:
|
||||
.Pp
|
||||
.Bl -tag -width ether
|
||||
.Bl -tag -width default
|
||||
.It Cm addr
|
||||
Adjust the display of inet and inet6 addresses:
|
||||
.Pp
|
||||
|
|
@ -202,6 +202,16 @@ Integer format, for example:
|
|||
.Ql prefixlen 64
|
||||
.El
|
||||
.El
|
||||
.Pp
|
||||
In addition, the following shortcuts are accepted:
|
||||
.Bl -tag -width default
|
||||
.It Cm default
|
||||
Resets all formats to their default values.
|
||||
.It Cm cidr
|
||||
Shortcut notation for
|
||||
.Cm inet:cidr,inet6:cidr .
|
||||
.El
|
||||
.Pp
|
||||
.It Fl G Ar groupname
|
||||
Exclude members of the specified
|
||||
.Ar groupname
|
||||
|
|
@ -464,13 +474,17 @@ sending out requests and listening for replies.
|
|||
.It Cm stickyarp
|
||||
Enable the so-called sticky ARP mode for the interface.
|
||||
If this option is enabled on the given interface, any resolved address is
|
||||
marked as a static one and never expires. This may be used to increase
|
||||
marked as a static one and never expires.
|
||||
This may be used to increase
|
||||
security of the network by preventing ARP spoofing or to reduce latency for
|
||||
high-performance Ethernet networks where the time needed for ARP resolution is
|
||||
too high. Please note that a similar feature is also provided for bridges. See
|
||||
too high.
|
||||
Please note that a similar feature is also provided for bridges.
|
||||
See
|
||||
the sticky option in the
|
||||
.Sx Bridge Interface Parameters
|
||||
section. Enabling this
|
||||
section.
|
||||
Enabling this
|
||||
option may impact techniques which rely on ARP expiration/overwriting feature
|
||||
such as load-balancers or high-availabity solutions such as
|
||||
.Xr carp 4 .
|
||||
|
|
@ -1227,8 +1241,8 @@ Set the interval at which beacon frames are sent when operating in
|
|||
ad-hoc or ap mode.
|
||||
The
|
||||
.Ar interval
|
||||
parameter is specified in TU's (1024 usecs).
|
||||
By default beacon frames are transmitted every 100 TU's.
|
||||
parameter is specified in TUs (1024 usecs).
|
||||
By default beacon frames are transmitted every 100 TUs.
|
||||
.It Cm bmissthreshold Ar count
|
||||
Set the number of consecutive missed beacons at which the station
|
||||
will attempt to roam (i.e., search for a new access point).
|
||||
|
|
@ -1885,8 +1899,8 @@ Use
|
|||
.Fl powersave
|
||||
to disable powersave operation when operating as a client.
|
||||
.It Cm powersavesleep Ar sleep
|
||||
Set the desired max powersave sleep time in TU's (1024 usecs).
|
||||
By default the max powersave sleep time is 100 TU's.
|
||||
Set the desired max powersave sleep time in TUs (1024 usecs).
|
||||
By default the max powersave sleep time is 100 TUs.
|
||||
.It Cm protmode Ar technique
|
||||
For interfaces operating in 802.11g, use the specified
|
||||
.Ar technique
|
||||
|
|
|
|||
|
|
@ -322,14 +322,10 @@ cmpifaddrs(struct ifaddrs *a, struct ifaddrs *b, struct ifa_queue *q)
|
|||
static void freeformat(void)
|
||||
{
|
||||
|
||||
if (f_inet != NULL)
|
||||
free(f_inet);
|
||||
if (f_inet6 != NULL)
|
||||
free(f_inet6);
|
||||
if (f_ether != NULL)
|
||||
free(f_ether);
|
||||
if (f_addr != NULL)
|
||||
free(f_addr);
|
||||
free(f_inet);
|
||||
free(f_inet6);
|
||||
free(f_ether);
|
||||
free(f_addr);
|
||||
}
|
||||
|
||||
static void setformat(char *input)
|
||||
|
|
@ -339,9 +335,18 @@ static void setformat(char *input)
|
|||
formatstr = strdup(input);
|
||||
while ((category = strsep(&formatstr, ",")) != NULL) {
|
||||
modifier = strchr(category, ':');
|
||||
if (modifier == NULL || modifier[1] == '\0') {
|
||||
warnx("Skipping invalid format specification: %s\n",
|
||||
category);
|
||||
if (modifier == NULL) {
|
||||
if (strcmp(category, "default") == 0) {
|
||||
freeformat();
|
||||
} else if (strcmp(category, "cidr") == 0) {
|
||||
free(f_inet);
|
||||
f_inet = strdup(category);
|
||||
free(f_inet6);
|
||||
f_inet6 = strdup(category);
|
||||
} else {
|
||||
warnx("Skipping invalid format: %s\n",
|
||||
category);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
@ -349,14 +354,19 @@ static void setformat(char *input)
|
|||
modifier[0] = '\0';
|
||||
modifier++;
|
||||
|
||||
if (strcmp(category, "addr") == 0)
|
||||
if (strcmp(category, "addr") == 0) {
|
||||
free(f_addr);
|
||||
f_addr = strdup(modifier);
|
||||
else if (strcmp(category, "ether") == 0)
|
||||
} else if (strcmp(category, "ether") == 0) {
|
||||
free(f_ether);
|
||||
f_ether = strdup(modifier);
|
||||
else if (strcmp(category, "inet") == 0)
|
||||
} else if (strcmp(category, "inet") == 0) {
|
||||
free(f_inet);
|
||||
f_inet = strdup(modifier);
|
||||
else if (strcmp(category, "inet6") == 0)
|
||||
} else if (strcmp(category, "inet6") == 0) {
|
||||
free(f_inet6);
|
||||
f_inet6 = strdup(modifier);
|
||||
}
|
||||
}
|
||||
free(formatstr);
|
||||
}
|
||||
|
|
@ -621,8 +631,6 @@ main(int ac, char *av[])
|
|||
.io_s = -1,
|
||||
};
|
||||
|
||||
f_inet = f_inet6 = f_ether = f_addr = NULL;
|
||||
|
||||
lifh = ifconfig_open();
|
||||
if (lifh == NULL)
|
||||
err(EXIT_FAILURE, "ifconfig_open");
|
||||
|
|
|
|||
Loading…
Reference in a new issue