003 File Manager
Current Path:
/usr/src/sbin/ifconfig
usr
/
src
/
sbin
/
ifconfig
/
📁
..
📄
Makefile
(1.9 KB)
📄
Makefile.depend
(317 B)
📄
Makefile.depend.options
(173 B)
📄
af_inet.c
(6.51 KB)
📄
af_inet6.c
(15.04 KB)
📄
af_link.c
(6 KB)
📄
af_nd6.c
(4.69 KB)
📄
carp.c
(5.75 KB)
📄
ifbridge.c
(18.07 KB)
📄
ifclone.c
(5.27 KB)
📄
ifconfig.8
(95.43 KB)
📄
ifconfig.c
(40.91 KB)
📄
ifconfig.h
(5.59 KB)
📄
iffib.c
(3.31 KB)
📄
ifgif.c
(2.81 KB)
📄
ifgre.c
(3.84 KB)
📄
ifgroup.c
(4.98 KB)
📄
ifieee80211.c
(154.78 KB)
📄
ifipsec.c
(2.6 KB)
📄
iflagg.c
(9.06 KB)
📄
ifmac.c
(3.29 KB)
📄
ifmedia.c
(21.05 KB)
📄
ifpfsync.c
(6.76 KB)
📄
ifvlan.c
(8.09 KB)
📄
ifvxlan.c
(15.56 KB)
📄
sfp.c
(4.41 KB)
📁
tests
Editing: ifgif.c
/*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2009 Hiroki Sato. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT 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. */ #ifndef lint static const char rcsid[] = "$FreeBSD$"; #endif #include <sys/param.h> #include <sys/ioctl.h> #include <sys/socket.h> #include <sys/sockio.h> #include <stdlib.h> #include <unistd.h> #include <net/ethernet.h> #include <net/if.h> #include <net/if_gif.h> #include <net/route.h> #include <ctype.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <err.h> #include <errno.h> #include "ifconfig.h" #define GIFBITS "\020\2IGNORE_SOURCE" static void gif_status(int); static void gif_status(int s) { int opts; ifr.ifr_data = (caddr_t)&opts; if (ioctl(s, GIFGOPTS, &ifr) == -1) return; if (opts == 0) return; printb("\toptions", opts, GIFBITS); putchar('\n'); } static void setgifopts(const char *val, int d, int s, const struct afswtch *afp) { int opts; ifr.ifr_data = (caddr_t)&opts; if (ioctl(s, GIFGOPTS, &ifr) == -1) { warn("ioctl(GIFGOPTS)"); return; } if (d < 0) opts &= ~(-d); else opts |= d; if (ioctl(s, GIFSOPTS, &ifr) == -1) { warn("ioctl(GIFSOPTS)"); return; } } static struct cmd gif_cmds[] = { DEF_CMD("ignore_source", GIF_IGNORE_SOURCE, setgifopts), DEF_CMD("-ignore_source", -GIF_IGNORE_SOURCE, setgifopts), }; static struct afswtch af_gif = { .af_name = "af_gif", .af_af = AF_UNSPEC, .af_other_status = gif_status, }; static __constructor void gif_ctor(void) { size_t i; for (i = 0; i < nitems(gif_cmds); i++) cmd_register(&gif_cmds[i]); af_register(&af_gif); }
Upload File
Create Folder