Commit Graph

273 Commits

Author SHA1 Message Date
dyoung 32cf2beed0 Rename in_addr_commit() to commit_address(), and refactor slightly
to support IPv6 as well as IPv4 (a work in progress).

Make the second argument of af_status() a bool instead of an int.

Exit early with an error if the operator specifies an unsupported
address family on the command line.  The change should help rc
scripts to detect that IPv6 support is missing from the kernel,
with 'ifconfig lo0 inet6'.

Start using prop_dictionary_util(3).
2008-05-06 16:15:17 +00:00
dyoung e51773dc79 Add a license. 2008-05-06 16:09:18 +00:00
dyoung 40b61e5050 Add WARNS=4 and a dependency on ${LIBPROP}. 2008-05-06 16:07:00 +00:00
dyoung 8db3a2f0ba If the address family is not set, assume AF_APPLETALK. Exit
at_status() quietly if the address family is set, and it is not
set to AF_APPLETALK.
2008-05-06 15:02:49 +00:00
skrll 77ecd4421a Restore RCSId lost in 1.11 2008-05-06 08:16:12 +00:00
dyoung c62cf792b0 Take out my CFLAGS settings for debugging. 2008-05-06 04:40:45 +00:00
dyoung 7b01455a0e Overhaul ifconfig. Use fewer global variables. Take a leap toward
improved modularity and extensibility.

In the new architecture, a directed graph of argument-matching
objects (match objects) expresses the set of feasible ifconfig
statements.  Match objects are labelled by subroutines that provide
the statement semantics.

Many IPv4, IPv6, 802.11, tunnel, and media configurations have been
tested.

AppleTalk, ISO, carp(4), agr(4), and vlan(4) configuration need
testing.
2008-05-06 04:33:42 +00:00
martin ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
dyoung 52440afe4e Don't cast memset(3) to void. Remove a needless cast to struct
in6_addr *.
2008-04-24 05:29:40 +00:00
dyoung 35eb8b696a Copy a const string to a temporary buffer instead of using __UNCONST().
Cosmetic: get rid of superflous curly braces and cast to (void *).
2008-04-22 17:18:11 +00:00
dyoung d5063688b1 Delete some gratuitous casts, s/(char *)//. 2008-04-22 00:14:20 +00:00
dyoung 197afa999c Change int to bool in a couple of places. 2008-04-21 05:33:55 +00:00
dyoung babbbc034d s/(caddr_t)// 2008-04-21 02:10:45 +00:00
dyoung 246781acda Change bzero calls to memset calls. 2008-04-21 02:08:09 +00:00
dyoung f7545c1509 Straggler from last: call fewer protocol family-specific initialization
routines from main(), since the protocol-family modules are taking
care of it.
2008-04-15 22:26:58 +00:00
dyoung 499909306a Use static initializers to setup ISO and IPv6 addresses, instead
of calling protocol family-specific routines from main().
2008-04-15 22:24:37 +00:00
dyoung 8de26a0c60 Cosmetic: write strcmp() == 0 instead of !strcmp(). 2008-04-15 22:14:07 +00:00
dyoung adc446d581 Cosmetic: delete dead code. 2008-04-14 15:57:15 +00:00
dyoung 18685458ac Cosmetic: use NULL instead of 0 for pointers. Shorten staircase. 2008-04-11 01:14:28 +00:00
dyoung 457345432a Cosmetic: compare socket address family with AF_UNSPEC instead of
0.
2008-04-11 00:56:11 +00:00
dyoung aeb69f8d9e Cosmeticc: there's no use casting a uint16_t to a u_short, so don't
do that.  Change indentation for readability.
2008-04-11 00:55:41 +00:00
degroote 9fe6472fc5 Add support for the command list scan in ifconfig (this command permits to scan
access point in the neighbourhood).

Complete list of channel attributes and list of management information element
payload.

While here, use estrlcpy instead of strncpy.

From FreeBSD ifconfig and net80211
2007-12-16 13:49:21 +00:00
mishka d7d886db87 Our VLAN implementation (as it correctly expected) is not allowed
to modify the whole VLAN tags, but it is permitted to change 12-bit
VLAN identificators only. Reflect this fact on the appropriate man
pages.

Antti Kantee and Mihai Chelaru from #netbsd-code were helpful in
better understanding of VLAN stuff. Thank you!
2007-06-05 11:15:15 +00:00
dyoung 5630b5969e Don't try to convert numbers to names for either endpoint of a
tunnel.  In this way, ifconfig will avoid emitting something
abominable like this:

        tunnel 192.168.1.1,mdns --> 192.168.1.2,kazaa
2007-03-26 05:02:44 +00:00
dyoung 3dfd6a1c5f Print more 802.11 statistics when the operator runs 'ifconfig -v
ath0', for example.  Fix the spelling of one statistic.
2007-01-09 09:25:56 +00:00
dyoung dbf49243d9 Per discussion "ifconfig error handling" on tech-net@ in August
2006, if we fail to set any 802.11 parameter, exit immediately with
EXIT_FAILURE.
2007-01-09 09:24:14 +00:00
dyoung d097d6a596 Let us adjust the 802.11 fragmentation threshold with ifconfig ath0
frag 256, for example.
2007-01-09 09:19:02 +00:00
wiz 856416cc4a Punctuation nit, sort SEE ALSO. 2006-12-23 07:41:26 +00:00
wiz 11b2ef8137 Remove a troff command that added some empty lines to the man(1) output. 2006-12-03 11:35:07 +00:00
yamt 809ec70bcf implement ipv6 TSO.
partly from Matthias Scheler.  tested by him.
2006-11-23 19:41:58 +00:00
dyoung a25eaede91 Add a source-address selection policy mechanism to the kernel.
Also, add ioctls SIOCGIFADDRPREF/SIOCSIFADDRPREF to get/set preference
numbers for addresses.  Make ifconfig(8) set/display preference
numbers.

To activate source-address selection policies in your kernel, add
'options IPSELSRC' to your kernel configuration.

Miscellaneous changes in support of source-address selection:

        1 Factor out some common code, producing rt_replace_ifa().

        2 Abbreviate a for-loop with TAILQ_FOREACH().

        3 Add the predicates on IPv4 addresses IN_LINKLOCAL() and
          IN_PRIVATE(), that are true for link-local unicast
          (169.254/16) and RFC1918 private addresses, respectively.
          Add the predicate IN_ANY_LOCAL() that is true for link-local
          unicast and multicast.

        4 Add IPv4-specific interface attach/detach routines,
          in_domifattach and in_domifdetach, which build #ifdef
          IPSELSRC.

See in_getifa(9) for a more thorough description of source-address
selection policy.
2006-11-13 05:13:38 +00:00
christos 00ab1df137 - get rid of p_cfunc2
- add missing initializers
2006-10-16 02:52:43 +00:00
hubertf 8e46fd3f16 Fix typo, noted by Nino Dehne <ndehne@gmail.com> 2006-09-16 20:15:49 +00:00
dyoung 47be766fd3 Add a mode to gre(4) that sends GRE tunnel packets in UDP datagrams.
Fix MOBILE encapsulation.  Add many debugging printfs (mainly
concerning UDP mode).  Clean up the gre(4) code a bit.  Add the
capability to setup UDP tunnels to ifconfig.  Update documentation.

In UDP mode, gre(4) puts a GRE header onto transmitted packets,
and hands them to a UDP socket for transmission.  That is, the
encapsulation looks like this: IP+UDP+GRE+encapsulated packet.

There are two ways to set up a UDP tunnel.  One way is to tell the
source and destination IP+port to gre(4), and let gre(4) create
the socket.  The other way to create a UDP tunnel is for userland
to "delegate" a UDP socket to the kernel.
2006-08-31 17:46:16 +00:00
christos 2a1607d040 Programs that use efun. 2006-08-26 18:14:28 +00:00
matt cca9bcea2e Nuke a leftover XNS fragment. 2006-08-26 16:59:27 +00:00
matt bb735e0ef9 Remove XNS support. 2006-08-26 16:20:20 +00:00
martin 50edcae7de Trying the old "ifconfig <name> x.x.x.x down" issue again:
if the kernel does not set the interface up after we set an address,
do it explicitly, unless we (previously) set it down on user request.

This will allow the network drivers to be "fixed" while keeping visible
behaviour the same. Part of fixing PR 30694.
2006-07-13 14:02:03 +00:00
drochner c6b8e0a9fe fix an Xref 2006-06-30 15:51:36 +00:00
elad d10cf99230 fix incorrect usage of strncpy() to (an internal implementation of)
estrlcpy().

okay christos
2006-06-16 23:48:35 +00:00
tron 2ab5da17ce Adapt ifconfig(8) to new return value from socket(2). This stops
ifconfig(8) from printing errors like "ifconfig: socket: Address
family not supported by protocol family" when examining the status
of a network interface.
2006-06-14 11:05:42 +00:00
liamjfoy 4876c304b1 Integrate Common Address Redundancy Procotol (CARP) from OpenBSD
'pseudo-device	carp'

Thanks to: joerg@ christos@ riz@ and others who tested
Ok: core@
2006-05-18 09:05:49 +00:00
mrg 19b4ae1a8b remove extern for unused ifr6. 2006-05-11 00:46:02 +00:00
wiz 4d1a166e8b Remove trailing whitespace. 2006-05-06 07:01:22 +00:00
rpaulo 227effc121 Add two new options from FreeBSD:
hidessid | -hidessid:	SSID broadcast control
	apbridge | -apbridge:	how to pass packets between wifi clients
2006-04-29 21:32:29 +00:00
christos 86b43a935f PR/32628: Yves-Emmanuel JUTARD: Missing cast in sbin/ifconfig/ifconfig.c,
strcasecmp needs char * not u_int8_t *.
2006-01-25 16:08:49 +00:00
dyoung b1725a3d60 Commit a straggler: use the new SIOCG80211STATS/SIOCG80211ZSTATS
ABI.
2005-09-15 23:35:15 +00:00
wiz 667d70cb77 Argument is address_family, not "address family". From YOMURA Masanori in private mail. 2005-09-11 23:37:14 +00:00
rpaulo aaf548920f Explained the '-h' option. 2005-08-11 20:56:57 +00:00
rpaulo 630caafc65 Added a new ifconfig flag, -h, allowing, in conjunction with -v, the display
of interface I/O bytes in human-format.

Reviewed by Christos Zoulas and Jason Thorpe.
2005-08-11 20:56:05 +00:00