Changeset View
Changeset View
Standalone View
Standalone View
sbin/ifconfig/ifconfig.c
Show First 20 Lines • Show All 1,074 Lines • ▼ Show 20 Lines | |||||
{ | { | ||||
strlcpy(ifr.ifr_name, name, sizeof (ifr.ifr_name)); | strlcpy(ifr.ifr_name, name, sizeof (ifr.ifr_name)); | ||||
ifr.ifr_mtu = atoi(val); | ifr.ifr_mtu = atoi(val); | ||||
if (ioctl(s, SIOCSIFMTU, (caddr_t)&ifr) < 0) | if (ioctl(s, SIOCSIFMTU, (caddr_t)&ifr) < 0) | ||||
err(1, "ioctl SIOCSIFMTU (set mtu)"); | err(1, "ioctl SIOCSIFMTU (set mtu)"); | ||||
} | } | ||||
static void | static void | ||||
setifpcp(const char *val, int arg __unused, int s, const struct afswtch *afp) | |||||
{ | |||||
u_long ul; | |||||
char *endp; | |||||
ul = strtoul(val, &endp, 0); | |||||
if (*endp != '\0') | |||||
errx(1, "invalid value for pcp"); | |||||
if (ul > 7) | |||||
errx(1, "value for pcp out of range"); | |||||
ifr.ifr_lan_pcp = ul; | |||||
if (ioctl(s, SIOCSLANPCP, (caddr_t)&ifr) == -1) | |||||
err(1, "SIOCSLANPCP"); | |||||
} | |||||
static void | |||||
disableifpcp(const char *val, int arg __unused, int s, | |||||
const struct afswtch *afp) | |||||
{ | |||||
ifr.ifr_lan_pcp = IFNET_PCP_NONE; | |||||
if (ioctl(s, SIOCSLANPCP, (caddr_t)&ifr) == -1) | |||||
err(1, "SIOCSLANPCP"); | |||||
} | |||||
static void | |||||
setifname(const char *val, int dummy __unused, int s, | setifname(const char *val, int dummy __unused, int s, | ||||
const struct afswtch *afp) | const struct afswtch *afp) | ||||
{ | { | ||||
char *newname; | char *newname; | ||||
strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); | strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); | ||||
newname = strdup(val); | newname = strdup(val); | ||||
▲ Show 20 Lines • Show All 340 Lines • ▼ Show 20 Lines | #endif | ||||
DEF_CMD("txcsum6", IFCAP_TXCSUM_IPV6, setifcap), | DEF_CMD("txcsum6", IFCAP_TXCSUM_IPV6, setifcap), | ||||
DEF_CMD("-txcsum6", -IFCAP_TXCSUM_IPV6, setifcap), | DEF_CMD("-txcsum6", -IFCAP_TXCSUM_IPV6, setifcap), | ||||
DEF_CMD("rxcsum", IFCAP_RXCSUM, setifcap), | DEF_CMD("rxcsum", IFCAP_RXCSUM, setifcap), | ||||
DEF_CMD("-rxcsum", -IFCAP_RXCSUM, setifcap), | DEF_CMD("-rxcsum", -IFCAP_RXCSUM, setifcap), | ||||
DEF_CMD("txcsum", IFCAP_TXCSUM, setifcap), | DEF_CMD("txcsum", IFCAP_TXCSUM, setifcap), | ||||
DEF_CMD("-txcsum", -IFCAP_TXCSUM, setifcap), | DEF_CMD("-txcsum", -IFCAP_TXCSUM, setifcap), | ||||
DEF_CMD("netcons", IFCAP_NETCONS, setifcap), | DEF_CMD("netcons", IFCAP_NETCONS, setifcap), | ||||
DEF_CMD("-netcons", -IFCAP_NETCONS, setifcap), | DEF_CMD("-netcons", -IFCAP_NETCONS, setifcap), | ||||
DEF_CMD_ARG("pcp", setifpcp), | |||||
DEF_CMD("-pcp", 0, disableifpcp), | |||||
DEF_CMD("polling", IFCAP_POLLING, setifcap), | DEF_CMD("polling", IFCAP_POLLING, setifcap), | ||||
DEF_CMD("-polling", -IFCAP_POLLING, setifcap), | DEF_CMD("-polling", -IFCAP_POLLING, setifcap), | ||||
DEF_CMD("tso6", IFCAP_TSO6, setifcap), | DEF_CMD("tso6", IFCAP_TSO6, setifcap), | ||||
DEF_CMD("-tso6", -IFCAP_TSO6, setifcap), | DEF_CMD("-tso6", -IFCAP_TSO6, setifcap), | ||||
DEF_CMD("tso4", IFCAP_TSO4, setifcap), | DEF_CMD("tso4", IFCAP_TSO4, setifcap), | ||||
DEF_CMD("-tso4", -IFCAP_TSO4, setifcap), | DEF_CMD("-tso4", -IFCAP_TSO4, setifcap), | ||||
DEF_CMD("tso", IFCAP_TSO, setifcap), | DEF_CMD("tso", IFCAP_TSO, setifcap), | ||||
DEF_CMD("-tso", -IFCAP_TSO, setifcap), | DEF_CMD("-tso", -IFCAP_TSO, setifcap), | ||||
Show All 31 Lines |