aboutsummaryrefslogtreecommitdiff
path: root/sbin/ifconfig/iffib.c
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/ifconfig/iffib.c')
-rw-r--r--sbin/ifconfig/iffib.c28
1 files changed, 12 insertions, 16 deletions
diff --git a/sbin/ifconfig/iffib.c b/sbin/ifconfig/iffib.c
index 7cb21ce54b09..a99dd6885d08 100644
--- a/sbin/ifconfig/iffib.c
+++ b/sbin/ifconfig/iffib.c
@@ -1,5 +1,5 @@
/*-
- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ * SPDX-License-Identifier: BSD-2-Clause
*
* Copyright (c) 2011 Alexander V. Chernikov
* Copyright (c) 2011 Christian S.J. Peron
@@ -26,8 +26,6 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- *
- * $FreeBSD$
*/
#include <sys/param.h>
@@ -46,27 +44,27 @@
#include "ifconfig.h"
static void
-fib_status(int s)
+fib_status(if_ctx *ctx)
{
struct ifreq ifr;
memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name));
- if (ioctl(s, SIOCGIFFIB, (caddr_t)&ifr) == 0 &&
+ strlcpy(ifr.ifr_name, ctx->ifname, sizeof(ifr.ifr_name));
+ if (ioctl_ctx(ctx, SIOCGIFFIB, (caddr_t)&ifr) == 0 &&
ifr.ifr_fib != RT_DEFAULT_FIB)
printf("\tfib: %u\n", ifr.ifr_fib);
memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name));
- if (ioctl(s, SIOCGTUNFIB, (caddr_t)&ifr) == 0 &&
+ strlcpy(ifr.ifr_name, ctx->ifname, sizeof(ifr.ifr_name));
+ if (ioctl_ctx(ctx, SIOCGTUNFIB, (caddr_t)&ifr) == 0 &&
ifr.ifr_fib != RT_DEFAULT_FIB)
printf("\ttunnelfib: %u\n", ifr.ifr_fib);
}
static void
-setiffib(const char *val, int dummy __unused, int s,
- const struct afswtch *afp)
+setiffib(if_ctx *ctx, const char *val, int dummy __unused)
{
+ struct ifreq ifr = {};
unsigned long fib;
char *ep;
@@ -76,16 +74,15 @@ setiffib(const char *val, int dummy __unused, int s,
return;
}
- strlcpy(ifr.ifr_name, name, sizeof (ifr.ifr_name));
ifr.ifr_fib = fib;
- if (ioctl(s, SIOCSIFFIB, (caddr_t)&ifr) < 0)
+ if (ioctl_ctx_ifr(ctx, SIOCSIFFIB, &ifr) < 0)
warn("ioctl (SIOCSIFFIB)");
}
static void
-settunfib(const char *val, int dummy __unused, int s,
- const struct afswtch *afp)
+settunfib(if_ctx *ctx, const char *val, int dummy __unused)
{
+ struct ifreq ifr = {};
unsigned long fib;
char *ep;
@@ -95,9 +92,8 @@ settunfib(const char *val, int dummy __unused, int s,
return;
}
- strlcpy(ifr.ifr_name, name, sizeof (ifr.ifr_name));
ifr.ifr_fib = fib;
- if (ioctl(s, SIOCSTUNFIB, (caddr_t)&ifr) < 0)
+ if (ioctl_ctx_ifr(ctx, SIOCSTUNFIB, &ifr) < 0)
warn("ioctl (SIOCSTUNFIB)");
}